From: Richard Fitzgerald <rf@opensource.wolfsonmicro.com> To: <broonie@kernel.org>, <cw00.choi@samsung.com>, <dmitry.torokhov@gmail.com> Cc: <linux-kernel@vger.kernel.org>, <alsa-devel@alsa-project.org>, <patches@opensource.wolfsonmicro.com>, <myungjoo.ham@samsung.com>, <linux-input@vger.kernel.org> Subject: [PATCH 5/5] Input: arizona-haptics - Use SoC component pin control functions Date: Mon, 28 Nov 2016 17:32:30 +0000 [thread overview] Message-ID: <1480354350-24978-6-git-send-email-rf@opensource.wolfsonmicro.com> (raw) In-Reply-To: <1480354350-24978-1-git-send-email-rf@opensource.wolfsonmicro.com> The name of a codec pin can have an optional prefix string, which is defined by the SoC machine driver. The snd_soc_dapm_x_pin functions take the fully-specified name including the prefix and so the existing code would fail to find the pin if the audio machine driver had added a prefix. Switch to using the snd_soc_component_x_pin equivalent functions that take a specified SoC component and automatically add the name prefix to the provided pin name. Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com> --- drivers/input/misc/arizona-haptics.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/drivers/input/misc/arizona-haptics.c b/drivers/input/misc/arizona-haptics.c index 9829363..07ec465 100644 --- a/drivers/input/misc/arizona-haptics.c +++ b/drivers/input/misc/arizona-haptics.c @@ -37,6 +37,8 @@ static void arizona_haptics_work(struct work_struct *work) struct arizona_haptics, work); struct arizona *arizona = haptics->arizona; + struct snd_soc_component *component = + snd_soc_dapm_to_component(arizona->dapm); int ret; if (!haptics->arizona->dapm) { @@ -66,7 +68,7 @@ static void arizona_haptics_work(struct work_struct *work) return; } - ret = snd_soc_dapm_enable_pin(arizona->dapm, "HAPTICS"); + ret = snd_soc_component_enable_pin(component, "HAPTICS"); if (ret != 0) { dev_err(arizona->dev, "Failed to start HAPTICS: %d\n", ret); @@ -81,7 +83,7 @@ static void arizona_haptics_work(struct work_struct *work) } } else { /* This disable sequence will be a noop if already enabled */ - ret = snd_soc_dapm_disable_pin(arizona->dapm, "HAPTICS"); + ret = snd_soc_component_disable_pin(component, "HAPTICS"); if (ret != 0) { dev_err(arizona->dev, "Failed to disable HAPTICS: %d\n", ret); @@ -140,11 +142,14 @@ static int arizona_haptics_play(struct input_dev *input, void *data, static void arizona_haptics_close(struct input_dev *input) { struct arizona_haptics *haptics = input_get_drvdata(input); + struct snd_soc_component *component; cancel_work_sync(&haptics->work); - if (haptics->arizona->dapm) - snd_soc_dapm_disable_pin(haptics->arizona->dapm, "HAPTICS"); + if (haptics->arizona->dapm) { + component = snd_soc_dapm_to_component(haptics->arizona->dapm); + snd_soc_component_disable_pin(component, "HAPTICS"); + } } static int arizona_haptics_probe(struct platform_device *pdev) -- 1.9.1
WARNING: multiple messages have this Message-ID (diff)
From: Richard Fitzgerald <rf@opensource.wolfsonmicro.com> To: broonie@kernel.org, cw00.choi@samsung.com, dmitry.torokhov@gmail.com Cc: linux-kernel@vger.kernel.org, alsa-devel@alsa-project.org, patches@opensource.wolfsonmicro.com, myungjoo.ham@samsung.com, linux-input@vger.kernel.org Subject: [PATCH 5/5] Input: arizona-haptics - Use SoC component pin control functions Date: Mon, 28 Nov 2016 17:32:30 +0000 [thread overview] Message-ID: <1480354350-24978-6-git-send-email-rf@opensource.wolfsonmicro.com> (raw) In-Reply-To: <1480354350-24978-1-git-send-email-rf@opensource.wolfsonmicro.com> The name of a codec pin can have an optional prefix string, which is defined by the SoC machine driver. The snd_soc_dapm_x_pin functions take the fully-specified name including the prefix and so the existing code would fail to find the pin if the audio machine driver had added a prefix. Switch to using the snd_soc_component_x_pin equivalent functions that take a specified SoC component and automatically add the name prefix to the provided pin name. Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com> --- drivers/input/misc/arizona-haptics.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/drivers/input/misc/arizona-haptics.c b/drivers/input/misc/arizona-haptics.c index 9829363..07ec465 100644 --- a/drivers/input/misc/arizona-haptics.c +++ b/drivers/input/misc/arizona-haptics.c @@ -37,6 +37,8 @@ static void arizona_haptics_work(struct work_struct *work) struct arizona_haptics, work); struct arizona *arizona = haptics->arizona; + struct snd_soc_component *component = + snd_soc_dapm_to_component(arizona->dapm); int ret; if (!haptics->arizona->dapm) { @@ -66,7 +68,7 @@ static void arizona_haptics_work(struct work_struct *work) return; } - ret = snd_soc_dapm_enable_pin(arizona->dapm, "HAPTICS"); + ret = snd_soc_component_enable_pin(component, "HAPTICS"); if (ret != 0) { dev_err(arizona->dev, "Failed to start HAPTICS: %d\n", ret); @@ -81,7 +83,7 @@ static void arizona_haptics_work(struct work_struct *work) } } else { /* This disable sequence will be a noop if already enabled */ - ret = snd_soc_dapm_disable_pin(arizona->dapm, "HAPTICS"); + ret = snd_soc_component_disable_pin(component, "HAPTICS"); if (ret != 0) { dev_err(arizona->dev, "Failed to disable HAPTICS: %d\n", ret); @@ -140,11 +142,14 @@ static int arizona_haptics_play(struct input_dev *input, void *data, static void arizona_haptics_close(struct input_dev *input) { struct arizona_haptics *haptics = input_get_drvdata(input); + struct snd_soc_component *component; cancel_work_sync(&haptics->work); - if (haptics->arizona->dapm) - snd_soc_dapm_disable_pin(haptics->arizona->dapm, "HAPTICS"); + if (haptics->arizona->dapm) { + component = snd_soc_dapm_to_component(haptics->arizona->dapm); + snd_soc_component_disable_pin(component, "HAPTICS"); + } } static int arizona_haptics_probe(struct platform_device *pdev) -- 1.9.1
next prev parent reply other threads:[~2016-11-28 17:33 UTC|newest] Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-11-28 17:32 [PATCH 0/5] ASoC/arizona: Ensure pin searches use widget name prefix Richard Fitzgerald 2016-11-28 17:32 ` Richard Fitzgerald 2016-11-28 17:32 ` [PATCH 1/5] ASoC: core: Add component pin control functions Richard Fitzgerald 2016-11-28 17:32 ` Richard Fitzgerald 2016-11-29 9:23 ` Charles Keepax 2016-11-29 9:23 ` Charles Keepax 2016-11-28 17:32 ` [PATCH 2/5] ASoC: arizona: Use " Richard Fitzgerald 2016-11-28 17:32 ` Richard Fitzgerald 2016-11-29 9:25 ` Charles Keepax 2016-11-29 9:25 ` Charles Keepax 2016-11-28 17:32 ` [PATCH 3/5] regulator: arizona-micsupp: Use SoC " Richard Fitzgerald 2016-11-28 17:32 ` Richard Fitzgerald 2016-12-15 18:28 ` Applied "regulator: arizona-micsupp: Use SoC component pin control functions" to the regulator tree Mark Brown 2016-12-15 18:28 ` Mark Brown 2016-11-28 17:32 ` [PATCH 4/5] extcon: arizona: Use SoC component pin control functions Richard Fitzgerald 2016-11-28 17:32 ` Richard Fitzgerald 2016-12-01 21:46 ` Applied "extcon: arizona: Use SoC component pin control functions" to the asoc tree Mark Brown 2016-12-01 21:46 ` Mark Brown 2016-11-28 17:32 ` Richard Fitzgerald [this message] 2016-11-28 17:32 ` [PATCH 5/5] Input: arizona-haptics - Use SoC component pin control functions Richard Fitzgerald 2016-11-28 18:53 ` Dmitry Torokhov 2016-12-01 21:48 ` Applied "Input: arizona-haptics - Use SoC component pin control functions" to the asoc tree Mark Brown 2016-12-01 21:48 ` Mark Brown
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1480354350-24978-6-git-send-email-rf@opensource.wolfsonmicro.com \ --to=rf@opensource.wolfsonmicro.com \ --cc=alsa-devel@alsa-project.org \ --cc=broonie@kernel.org \ --cc=cw00.choi@samsung.com \ --cc=dmitry.torokhov@gmail.com \ --cc=linux-input@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=myungjoo.ham@samsung.com \ --cc=patches@opensource.wolfsonmicro.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.