* [PATCH] ASoC: Intel: byt-max98090 Fix GPIOs lookup
@ 2017-06-09 16:50 ` Dmitry Torokhov
0 siblings, 0 replies; 4+ messages in thread
From: Dmitry Torokhov @ 2017-06-09 16:50 UTC (permalink / raw)
To: Liam Girdwood, Mark Brown
Cc: linux-kernel, Nicolas Porcel, Takashi Iwai, alsa-devel
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Commit 9c3c9bc9cc98 ("gpiolib: tighten up ACPI legacy gpio lookups")
changed the way fallback to _CRS-defined GPIOs is executed by requiring
drivers use common connection ID for all GPIOs fetched from _CRS. This
broke byt-max98090 driver, which expected GPIO core to ignore the names
it supplied and simply give GPIOs 0 and 1 from whatever block it finds.
By giving the same name to both GPIOs 0 and 1, the driver will perform
the lookup for both of them instead of the first requested. This is the
same behavior than before the commit.
Signed-off-by: Nicolas Porcel <nicolasporcel06@gmail.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
---
sound/soc/intel/boards/byt-max98090.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/soc/intel/boards/byt-max98090.c b/sound/soc/intel/boards/byt-max98090.c
index d9f81b8d915d..a6e57d95c1e2 100644
--- a/sound/soc/intel/boards/byt-max98090.c
+++ b/sound/soc/intel/boards/byt-max98090.c
@@ -67,13 +67,13 @@ static struct snd_soc_jack_pin hs_jack_pins[] = {
static struct snd_soc_jack_gpio hs_jack_gpios[] = {
{
- .name = "hp-gpio",
+ .name = "byt_max98090",
.idx = 0,
.report = SND_JACK_HEADPHONE | SND_JACK_LINEOUT,
.debounce_time = 200,
},
{
- .name = "mic-gpio",
+ .name = "byt_max98090",
.idx = 1,
.invert = 1,
.report = SND_JACK_MICROPHONE,
--
2.13.0.506.g27d5fe0cd-goog
--
Dmitry
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH] ASoC: Intel: byt-max98090 Fix GPIOs lookup
@ 2017-06-09 16:50 ` Dmitry Torokhov
0 siblings, 0 replies; 4+ messages in thread
From: Dmitry Torokhov @ 2017-06-09 16:50 UTC (permalink / raw)
To: Liam Girdwood, Mark Brown
Cc: Jaroslav Kysela, Takashi Iwai, Nicolas Porcel, alsa-devel,
linux-kernel
From: Nicolas Porcel <nicolasporcel06@gmail.com>
Commit 9c3c9bc9cc98 ("gpiolib: tighten up ACPI legacy gpio lookups")
changed the way fallback to _CRS-defined GPIOs is executed by requiring
drivers use common connection ID for all GPIOs fetched from _CRS. This
broke byt-max98090 driver, which expected GPIO core to ignore the names
it supplied and simply give GPIOs 0 and 1 from whatever block it finds.
By giving the same name to both GPIOs 0 and 1, the driver will perform
the lookup for both of them instead of the first requested. This is the
same behavior than before the commit.
Signed-off-by: Nicolas Porcel <nicolasporcel06@gmail.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
---
sound/soc/intel/boards/byt-max98090.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/soc/intel/boards/byt-max98090.c b/sound/soc/intel/boards/byt-max98090.c
index d9f81b8d915d..a6e57d95c1e2 100644
--- a/sound/soc/intel/boards/byt-max98090.c
+++ b/sound/soc/intel/boards/byt-max98090.c
@@ -67,13 +67,13 @@ static struct snd_soc_jack_pin hs_jack_pins[] = {
static struct snd_soc_jack_gpio hs_jack_gpios[] = {
{
- .name = "hp-gpio",
+ .name = "byt_max98090",
.idx = 0,
.report = SND_JACK_HEADPHONE | SND_JACK_LINEOUT,
.debounce_time = 200,
},
{
- .name = "mic-gpio",
+ .name = "byt_max98090",
.idx = 1,
.invert = 1,
.report = SND_JACK_MICROPHONE,
--
2.13.0.506.g27d5fe0cd-goog
--
Dmitry
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] ASoC: Intel: byt-max98090 Fix GPIOs lookup
2017-06-09 16:50 ` Dmitry Torokhov
@ 2017-06-09 18:22 ` Andy Shevchenko
-1 siblings, 0 replies; 4+ messages in thread
From: Andy Shevchenko @ 2017-06-09 18:22 UTC (permalink / raw)
To: Dmitry Torokhov
Cc: ALSA Development Mailing List, linux-kernel@vger.kernel.org,
Takashi Iwai, Liam Girdwood, Mark Brown, Nicolas Porcel
On Fri, Jun 9, 2017 at 7:50 PM, Dmitry Torokhov
<dmitry.torokhov@gmail.com> wrote:
> From: Nicolas Porcel <nicolasporcel06@gmail.com>
>
> Commit 9c3c9bc9cc98 ("gpiolib: tighten up ACPI legacy gpio lookups")
> changed the way fallback to _CRS-defined GPIOs is executed by requiring
> drivers use common connection ID for all GPIOs fetched from _CRS. This
> broke byt-max98090 driver, which expected GPIO core to ignore the names
> it supplied and simply give GPIOs 0 and 1 from whatever block it finds.
>
> By giving the same name to both GPIOs 0 and 1, the driver will perform
> the lookup for both of them instead of the first requested. This is the
> same behavior than before the commit.
I don't think this is right solution.
We may add mapping table for _CRS which will make this robust.
I will send an RFC
>
> Signed-off-by: Nicolas Porcel <nicolasporcel06@gmail.com>
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
> ---
> sound/soc/intel/boards/byt-max98090.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/soc/intel/boards/byt-max98090.c b/sound/soc/intel/boards/byt-max98090.c
> index d9f81b8d915d..a6e57d95c1e2 100644
> --- a/sound/soc/intel/boards/byt-max98090.c
> +++ b/sound/soc/intel/boards/byt-max98090.c
> @@ -67,13 +67,13 @@ static struct snd_soc_jack_pin hs_jack_pins[] = {
>
> static struct snd_soc_jack_gpio hs_jack_gpios[] = {
> {
> - .name = "hp-gpio",
> + .name = "byt_max98090",
> .idx = 0,
> .report = SND_JACK_HEADPHONE | SND_JACK_LINEOUT,
> .debounce_time = 200,
> },
> {
> - .name = "mic-gpio",
> + .name = "byt_max98090",
> .idx = 1,
> .invert = 1,
> .report = SND_JACK_MICROPHONE,
> --
> 2.13.0.506.g27d5fe0cd-goog
>
>
> --
> Dmitry
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] ASoC: Intel: byt-max98090 Fix GPIOs lookup
@ 2017-06-09 18:22 ` Andy Shevchenko
0 siblings, 0 replies; 4+ messages in thread
From: Andy Shevchenko @ 2017-06-09 18:22 UTC (permalink / raw)
To: Dmitry Torokhov
Cc: Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai,
Nicolas Porcel, ALSA Development Mailing List,
linux-kernel@vger.kernel.org
On Fri, Jun 9, 2017 at 7:50 PM, Dmitry Torokhov
<dmitry.torokhov@gmail.com> wrote:
> From: Nicolas Porcel <nicolasporcel06@gmail.com>
>
> Commit 9c3c9bc9cc98 ("gpiolib: tighten up ACPI legacy gpio lookups")
> changed the way fallback to _CRS-defined GPIOs is executed by requiring
> drivers use common connection ID for all GPIOs fetched from _CRS. This
> broke byt-max98090 driver, which expected GPIO core to ignore the names
> it supplied and simply give GPIOs 0 and 1 from whatever block it finds.
>
> By giving the same name to both GPIOs 0 and 1, the driver will perform
> the lookup for both of them instead of the first requested. This is the
> same behavior than before the commit.
I don't think this is right solution.
We may add mapping table for _CRS which will make this robust.
I will send an RFC
>
> Signed-off-by: Nicolas Porcel <nicolasporcel06@gmail.com>
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
> ---
> sound/soc/intel/boards/byt-max98090.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/soc/intel/boards/byt-max98090.c b/sound/soc/intel/boards/byt-max98090.c
> index d9f81b8d915d..a6e57d95c1e2 100644
> --- a/sound/soc/intel/boards/byt-max98090.c
> +++ b/sound/soc/intel/boards/byt-max98090.c
> @@ -67,13 +67,13 @@ static struct snd_soc_jack_pin hs_jack_pins[] = {
>
> static struct snd_soc_jack_gpio hs_jack_gpios[] = {
> {
> - .name = "hp-gpio",
> + .name = "byt_max98090",
> .idx = 0,
> .report = SND_JACK_HEADPHONE | SND_JACK_LINEOUT,
> .debounce_time = 200,
> },
> {
> - .name = "mic-gpio",
> + .name = "byt_max98090",
> .idx = 1,
> .invert = 1,
> .report = SND_JACK_MICROPHONE,
> --
> 2.13.0.506.g27d5fe0cd-goog
>
>
> --
> Dmitry
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-06-09 18:22 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-09 16:50 [PATCH] ASoC: Intel: byt-max98090 Fix GPIOs lookup Dmitry Torokhov
2017-06-09 16:50 ` Dmitry Torokhov
2017-06-09 18:22 ` Andy Shevchenko
2017-06-09 18:22 ` Andy Shevchenko
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.