* i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
@ 2018-02-17 13:25 Dominik Brodowski
2018-02-17 15:02 ` Andy Shevchenko
0 siblings, 1 reply; 10+ messages in thread
From: Dominik Brodowski @ 2018-02-17 13:25 UTC (permalink / raw)
To: tim, jarkko.nikula, andriy.shevchenko, preid, wsa; +Cc: linux-i2c, linux-kernel
Dear all,
on v4.16-rc1+, sound does not work any more on my Dell XPS 13;
suspend-to-RAM hangs as well. I have bisected this problem down to
commit ca382f5b38f3; reverting this on top of Linus' latest (1e3510b2b053)
fixes these issues. A bit info on the system (from a working kernel):
00:00.0 Host bridge: Intel Corporation Broadwell-U Host Bridge -OPI (rev 09)
ls -l /sys/devices/pci0000:00/INT3432:00/i2c-0/i2c-INT343A:00
total 0
lrwxrwxrwx 1 root root 0 Feb 17 14:20 driver -> ../../../../../bus/i2c/drivers/rt286
lrwxrwxrwx 1 root root 0 Feb 17 14:20 firmware_node -> ../../../../LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT3432:00/INT343A:00
-r--r--r-- 1 root root 4096 Feb 17 14:20 modalias
-r--r--r-- 1 root root 4096 Feb 17 14:20 name
drwxr-xr-x 2 root root 0 Feb 17 14:19 power
lrwxrwxrwx 1 root root 0 Feb 17 14:10 subsystem -> ../../../../../bus/i2c
-rw-r--r-- 1 root root 4096 Feb 17 14:20 uevent
>From a working dmesg:
sst-acpi INT3438:00: DesignWare DMA Controller, 8 channels
haswell-pcm-audio haswell-pcm-audio: Direct firmware load for intel/IntcPP01.bin failed with error -2
haswell-pcm-audio haswell-pcm-audio: fw image intel/IntcPP01.bin not available(-2)
haswell-pcm-audio haswell-pcm-audio: FW loaded, mailbox readback FW info: type 01, - version: 00.00, build 77, source commit id: 876ac6906f31a43b6772b23c7c983ce9dcb18a19
broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> System Pin mapping ok
broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload0 Pin mapping ok
broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload1 Pin mapping ok
broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Loopback Pin mapping ok
broadwell-audio broadwell-audio: rt286-aif1 <-> snd-soc-dummy-dai mapping ok
input: broadwell-rt286 Headset as /devices/pci0000:00/INT3438:00/broadwell-audio/sound/card1/input15
And a few snippets from a broken kernel dmesg:
i2c_designware: probe of INT3432:00 failed with error -38
i2c_designware: probe of INT3433:00 failed with error -38
broadwell-audio broadwell-audio: ASoC: CPU DAI System Pin not registered
broadwell-audio broadwell-audio: ASoC: CODEC DAI rt286-aif1 not registered
Ideas on how to fix this properly?
Thanks,
Dominik
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-17 13:25 i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option) Dominik Brodowski
@ 2018-02-17 15:02 ` Andy Shevchenko
2018-02-17 15:09 ` Andy Shevchenko
0 siblings, 1 reply; 10+ messages in thread
From: Andy Shevchenko @ 2018-02-17 15:02 UTC (permalink / raw)
To: Dominik Brodowski, tim, jarkko.nikula, preid, wsa; +Cc: linux-i2c, linux-kernel
On Sat, 2018-02-17 at 14:25 +0100, Dominik Brodowski wrote:
> on v4.16-rc1+, sound does not work any more on my Dell XPS 13;
> suspend-to-RAM hangs as well. I have bisected this problem down to
> commit ca382f5b38f3; reverting this on top of Linus' latest
> (1e3510b2b053)
> fixes these issues.
> And a few snippets from a broken kernel dmesg:
>
> i2c_designware: probe of INT3432:00 failed with error -38
> i2c_designware: probe of INT3433:00 failed with error -38
ENOSYS here at probe time, taking into account the commit you think is a
culprit, can be passed from gpiod_get() calls only.
> Ideas on how to fix this properly?
Enable CONFIG_DEBUG_GPIO first and share through some service the dmesg.
(it might be good idea to add 'ignore_loglevel initcall_debug' to the
kernel command line)
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-17 15:02 ` Andy Shevchenko
@ 2018-02-17 15:09 ` Andy Shevchenko
2018-02-17 16:58 ` Dominik Brodowski
2018-02-19 17:38 ` Dominik Brodowski
0 siblings, 2 replies; 10+ messages in thread
From: Andy Shevchenko @ 2018-02-17 15:09 UTC (permalink / raw)
To: Dominik Brodowski, tim, jarkko.nikula, preid, wsa; +Cc: linux-i2c, linux-kernel
On Sat, 2018-02-17 at 17:02 +0200, Andy Shevchenko wrote:
> On Sat, 2018-02-17 at 14:25 +0100, Dominik Brodowski wrote:
>
> > on v4.16-rc1+, sound does not work any more on my Dell XPS 13;
> > suspend-to-RAM hangs as well. I have bisected this problem down to
> > commit ca382f5b38f3; reverting this on top of Linus' latest
> > (1e3510b2b053)
> > fixes these issues.
> > And a few snippets from a broken kernel dmesg:
> >
> > i2c_designware: probe of INT3432:00 failed with error -38
> > i2c_designware: probe of INT3433:00 failed with error -38
>
> ENOSYS here at probe time, taking into account the commit you think is
> a
> culprit, can be passed from gpiod_get() calls only.
>
> > Ideas on how to fix this properly?
>
> Enable CONFIG_DEBUG_GPIO first and share through some service the
> dmesg.
> (it might be good idea to add 'ignore_loglevel initcall_debug' to the
> kernel command line)
And tell if the following patch helps.
--- a/drivers/i2c/busses/i2c-designware-master.c
+++ b/drivers/i2c/busses/i2c-designware-master.c
@@ -644,7 +644,7 @@ static int i2c_dw_init_recovery_info(struct
dw_i2c_dev *dev)
gpio = devm_gpiod_get(dev->dev, "scl", GPIOD_OUT_HIGH);
if (IS_ERR(gpio)) {
r = PTR_ERR(gpio);
- if (r == -ENOENT)
+ if (r == -ENOENT || r == -ENOSYS)
return 0;
return r;
}
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-17 15:09 ` Andy Shevchenko
@ 2018-02-17 16:58 ` Dominik Brodowski
2018-02-17 20:57 ` Andy Shevchenko
2018-02-19 17:38 ` Dominik Brodowski
1 sibling, 1 reply; 10+ messages in thread
From: Dominik Brodowski @ 2018-02-17 16:58 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: tim, jarkko.nikula, preid, wsa, linux-i2c, linux-kernel
On Sat, Feb 17, 2018 at 05:09:40PM +0200, Andy Shevchenko wrote:
> On Sat, 2018-02-17 at 17:02 +0200, Andy Shevchenko wrote:
> > On Sat, 2018-02-17 at 14:25 +0100, Dominik Brodowski wrote:
> >
> > > on v4.16-rc1+, sound does not work any more on my Dell XPS 13;
> > > suspend-to-RAM hangs as well. I have bisected this problem down to
> > > commit ca382f5b38f3; reverting this on top of Linus' latest
> > > (1e3510b2b053)
> > > fixes these issues.
> > > And a few snippets from a broken kernel dmesg:
> > >
> > > i2c_designware: probe of INT3432:00 failed with error -38
> > > i2c_designware: probe of INT3433:00 failed with error -38
> >
> > ENOSYS here at probe time, taking into account the commit you think is
> > a
> > culprit, can be passed from gpiod_get() calls only.
> >
> > > Ideas on how to fix this properly?
> >
> > Enable CONFIG_DEBUG_GPIO first and share through some service the
> > dmesg.
> > (it might be good idea to add 'ignore_loglevel initcall_debug' to the
> > kernel command line)
>
> And tell if the following patch helps.
>
> --- a/drivers/i2c/busses/i2c-designware-master.c
> +++ b/drivers/i2c/busses/i2c-designware-master.c
> @@ -644,7 +644,7 @@ static int i2c_dw_init_recovery_info(struct
> dw_i2c_dev *dev)
> gpio = devm_gpiod_get(dev->dev, "scl", GPIOD_OUT_HIGH);
> if (IS_ERR(gpio)) {
> r = PTR_ERR(gpio);
> - if (r == -ENOENT)
> + if (r == -ENOENT || r == -ENOSYS)
> return 0;
> return r;
> }
>
This patch fixes the issue, thanks. Do you still need the DEBUG_GPIO output?
Thanks,
Dominik
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-17 16:58 ` Dominik Brodowski
@ 2018-02-17 20:57 ` Andy Shevchenko
2018-02-18 9:41 ` Dominik Brodowski
0 siblings, 1 reply; 10+ messages in thread
From: Andy Shevchenko @ 2018-02-17 20:57 UTC (permalink / raw)
To: Dominik Brodowski; +Cc: tim, jarkko.nikula, preid, wsa, linux-i2c, linux-kernel
On Sat, 2018-02-17 at 17:58 +0100, Dominik Brodowski wrote:
> On Sat, Feb 17, 2018 at 05:09:40PM +0200, Andy Shevchenko wrote:
> This patch fixes the issue, thanks.
I will send it soon out.
> Do you still need the DEBUG_GPIO output?
It would be nice to have, though if it makes difficulties to you, then
don't bother.
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-17 20:57 ` Andy Shevchenko
@ 2018-02-18 9:41 ` Dominik Brodowski
2018-02-18 14:23 ` Andy Shevchenko
0 siblings, 1 reply; 10+ messages in thread
From: Dominik Brodowski @ 2018-02-18 9:41 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: tim, jarkko.nikula, preid, wsa, linux-i2c, linux-kernel
On Sat, Feb 17, 2018 at 10:57:01PM +0200, Andy Shevchenko wrote:
> On Sat, 2018-02-17 at 17:58 +0100, Dominik Brodowski wrote:
> > On Sat, Feb 17, 2018 at 05:09:40PM +0200, Andy Shevchenko wrote:
>
> > This patch fixes the issue, thanks.
>
> I will send it soon out.
>
> > Do you still need the DEBUG_GPIO output?
>
> It would be nice to have, though if it makes difficulties to you, then
> don't bother.
Note that I have to enable CONFIG_GPIOLIB before I can enable DEBUG_GPIO;
CONFIG_PINCTRL was off as well. Maybe some "SELECT" is missing for
CONFIG_I2C_DESIGNWARE_BAYTRAIL ?
The following output is with your patch applied. Do you need it without
your fixup patch as well?
$ dmesg | egrep -i "(gpio|pinctrl|i2c|broadw)"
[ 0.591578] calling dw_i2c_init_driver+0x0/0x13 @ 1
[ 0.625040] i2c_designware INT3432:00: GPIO lookup for consumer scl
[ 0.625073] i2c_designware INT3432:00: using ACPI for GPIO lookup
[ 0.625102] acpi INT3432:00: GPIO: looking up scl-gpios
[ 0.625129] acpi INT3432:00: GPIO: looking up scl-gpio
[ 0.625154] i2c_designware INT3432:00: using lookup tables for GPIO lookup
[ 0.625202] i2c_designware INT3432:00: lookup for GPIO scl failed
[ 0.678297] i2c_designware INT3433:00: GPIO lookup for consumer scl
[ 0.678326] i2c_designware INT3433:00: using ACPI for GPIO lookup
[ 0.678353] acpi INT3433:00: GPIO: looking up scl-gpios
[ 0.678376] acpi INT3433:00: GPIO: looking up scl-gpio
[ 0.678398] i2c_designware INT3433:00: using lookup tables for GPIO lookup
[ 0.678427] i2c_designware INT3433:00: lookup for GPIO scl failed
[ 0.701403] initcall dw_i2c_init_driver+0x0/0x13 returned 0 after 107421 usecs
[ 1.711543] calling gpio_clk_driver_init+0x0/0x13 @ 1
[ 1.712419] initcall gpio_clk_driver_init+0x0/0x13 returned 0 after 44 usecs
[ 1.933569] calling synaptics_i2c_driver_init+0x0/0x13 @ 1
[ 1.933602] initcall synaptics_i2c_driver_init+0x0/0x13 returned 0 after 30 usecs
[ 1.933996] calling rmi_i2c_driver_init+0x0/0x13 @ 1
[ 1.934060] initcall rmi_i2c_driver_init+0x0/0x13 returned 0 after 59 usecs
[ 1.935852] calling i2c_i801_init+0x0/0xc9 @ 1
[ 1.957452] initcall i2c_i801_init+0x0/0xc9 returned 0 after 21089 usecs
[ 1.977716] calling i2c_hid_driver_init+0x0/0x13 @ 1
[ 2.025330] input: DLL0665:01 06CB:76AD Touchpad as /devices/pci0000:00/INT3433:00/i2c-1/i2c-DLL0665:01/0018:06CB:76AD.0001/input/input9
[ 2.025853] hid-multitouch 0018:06CB:76AD.0001: input: I2C HID v1.00 Mouse [DLL0665:01 06CB:76AD] on i2c-DLL0665:01
[ 2.026376] initcall i2c_hid_driver_init+0x0/0x13 returned 0 after 47514 usecs
[ 2.065027] calling max98090_i2c_driver_init+0x0/0x13 @ 1
[ 2.065075] initcall max98090_i2c_driver_init+0x0/0x13 returned 0 after 44 usecs
[ 2.065077] calling rt286_i2c_driver_init+0x0/0x13 @ 1
[ 2.118805] initcall rt286_i2c_driver_init+0x0/0x13 returned 0 after 52461 usecs
[ 2.118809] calling rt5640_i2c_driver_init+0x0/0x13 @ 1
[ 2.118853] initcall rt5640_i2c_driver_init+0x0/0x13 returned 0 after 38 usecs
[ 2.118856] calling rt5651_i2c_driver_init+0x0/0x13 @ 1
[ 2.118894] initcall rt5651_i2c_driver_init+0x0/0x13 returned 0 after 34 usecs
[ 2.165208] calling broadwell_audio_init+0x0/0x13 @ 1
[ 2.167941] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> System Pin mapping ok
[ 2.168171] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload0 Pin mapping ok
[ 2.168377] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload1 Pin mapping ok
[ 2.168575] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Loopback Pin mapping ok
[ 2.170833] broadwell-audio broadwell-audio: rt286-aif1 <-> snd-soc-dummy-dai mapping ok
[ 2.179624] input: broadwell-rt286 Headset as /devices/pci0000:00/INT3438:00/broadwell-audio/sound/card1/input15
[ 2.180363] initcall broadwell_audio_init+0x0/0x13 returned 0 after 14793 usecs
Thanks,
Dominik
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-18 9:41 ` Dominik Brodowski
@ 2018-02-18 14:23 ` Andy Shevchenko
2018-02-18 16:32 ` Dominik Brodowski
0 siblings, 1 reply; 10+ messages in thread
From: Andy Shevchenko @ 2018-02-18 14:23 UTC (permalink / raw)
To: Dominik Brodowski
Cc: Andy Shevchenko, tim, Jarkko Nikula, Phil Reid, Wolfram Sang,
linux-i2c, Linux Kernel Mailing List
On Sun, Feb 18, 2018 at 11:41 AM, Dominik Brodowski
<linux@dominikbrodowski.net> wrote:
> On Sat, Feb 17, 2018 at 10:57:01PM +0200, Andy Shevchenko wrote:
>> On Sat, 2018-02-17 at 17:58 +0100, Dominik Brodowski wrote:
>> > Do you still need the DEBUG_GPIO output?
>>
>> It would be nice to have, though if it makes difficulties to you, then
>> don't bother.
>
> Note that I have to enable CONFIG_GPIOLIB before I can enable DEBUG_GPIO;
> CONFIG_PINCTRL was off as well. Maybe some "SELECT" is missing for
> CONFIG_I2C_DESIGNWARE_BAYTRAIL ?
Ah, so, your configuration misses pin control driver. You need to
enable it in order to get GPIOs working.
It might fix your issue w/o my patch.
> The following output is with your patch applied.
...which is useless.
> Do you need it without
> your fixup patch as well?
Yes, and with enabled pin control driver.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-18 14:23 ` Andy Shevchenko
@ 2018-02-18 16:32 ` Dominik Brodowski
2018-02-19 14:01 ` Andy Shevchenko
0 siblings, 1 reply; 10+ messages in thread
From: Dominik Brodowski @ 2018-02-18 16:32 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Andy Shevchenko, tim, Jarkko Nikula, Phil Reid, Wolfram Sang,
linux-i2c, Linux Kernel Mailing List
On Sun, Feb 18, 2018 at 04:23:41PM +0200, Andy Shevchenko wrote:
> On Sun, Feb 18, 2018 at 11:41 AM, Dominik Brodowski
> <linux@dominikbrodowski.net> wrote:
> > On Sat, Feb 17, 2018 at 10:57:01PM +0200, Andy Shevchenko wrote:
> >> On Sat, 2018-02-17 at 17:58 +0100, Dominik Brodowski wrote:
>
> >> > Do you still need the DEBUG_GPIO output?
> >>
> >> It would be nice to have, though if it makes difficulties to you, then
> >> don't bother.
> >
> > Note that I have to enable CONFIG_GPIOLIB before I can enable DEBUG_GPIO;
> > CONFIG_PINCTRL was off as well. Maybe some "SELECT" is missing for
> > CONFIG_I2C_DESIGNWARE_BAYTRAIL ?
>
> Ah, so, your configuration misses pin control driver. You need to
> enable it in order to get GPIOs working.
Well, I did not need it in the past to have working sound and working
suspend to RAM. And it already works if
CONFIG_PINCTRL=y
CONFIG_DEBUG_PINCTRL=y
CONFIG_GPIOLIB=y
CONFIG_GPIO_ACPI=y
CONFIG_DEBUG_GPIO=y
are set (but no PINCTRL or GPIO drivers!).
So I'd suggest to
(a) keep your fixup patch (as things work as previously then),
(b) to have CONFIG_I2C_DESIGNWARE_BAYTRAIL select the appropriate options from
above [and CONFIG_XPOWER_PMIC_OPREGION ?] (or depend on it?), or
(c) (probably best) both.
> It might fix your issue w/o my patch.
>
> > The following output is with your patch applied.
>
> ...which is useless.
>
> > Do you need it without
> > your fixup patch as well?
>
> Yes, and with enabled pin control driver.
Well, I've reverted your fixup patch locally and enabled all drivers that I
could -- including CONFIG_XPOWER_PMIC_OPREGION, CONFIG_MFD_AXP20X, and
CONFIG_MFD_AXP20X_I2C. But I'm not sure at all that a driver actually became
active...
$ dmesg | egrep -i "(gpio|pinctrl|i2c|broadw)"
[ 0.031029] Performance Events: PEBS fmt2+, Broadwell events, 16-deep LBR, full-width counters, Intel PMU driver.
[ 0.079300] pinctrl core: initialized pinctrl subsystem
[ 0.105267] gpio-f7188x: Not a Fintek device at 0x0000002e
[ 0.105285] gpio-f7188x: Not a Fintek device at 0x0000004e
[ 0.621048] i2c_designware INT3432:00: GPIO lookup for consumer scl
[ 0.621053] i2c_designware INT3432:00: using ACPI for GPIO lookup
[ 0.621057] acpi INT3432:00: GPIO: looking up scl-gpios
[ 0.621062] acpi INT3432:00: GPIO: looking up scl-gpio
[ 0.621065] i2c_designware INT3432:00: using lookup tables for GPIO lookup
[ 0.621087] i2c_designware INT3432:00: lookup for GPIO scl failed
[ 0.682478] i2c_designware INT3433:00: GPIO lookup for consumer scl
[ 0.682482] i2c_designware INT3433:00: using ACPI for GPIO lookup
[ 0.682486] acpi INT3433:00: GPIO: looking up scl-gpios
[ 0.682490] acpi INT3433:00: GPIO: looking up scl-gpio
[ 0.682493] i2c_designware INT3433:00: using lookup tables for GPIO lookup
[ 0.682497] i2c_designware INT3433:00: lookup for GPIO scl failed
[ 1.208551] gpio_it87: Unknown Chip found, Chip 1d00 Revision 0
[ 1.870861] input: DLL0665:01 06CB:76AD Touchpad as /devices/pci0000:00/INT3433:00/i2c-1/i2c-DLL0665:01/0018:06CB:76AD.0001/input/input9
[ 1.871601] hid-multitouch 0018:06CB:76AD.0001: input: I2C HID v1.00 Mouse [DLL0665:01 06CB:76AD] on i2c-DLL0665:01
[ 2.015224] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> System Pin mapping ok
[ 2.015433] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload0 Pin mapping ok
[ 2.015642] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload1 Pin mapping ok
[ 2.015839] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Loopback Pin mapping ok
[ 2.017899] broadwell-audio broadwell-audio: rt286-aif1 <-> snd-soc-dummy-dai mapping ok
[ 2.025473] input: broadwell-rt286 Headset as /devices/pci0000:00/INT3438:00/broadwell-audio/sound/card1/input15
Thanks,
Dominik
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-18 16:32 ` Dominik Brodowski
@ 2018-02-19 14:01 ` Andy Shevchenko
0 siblings, 0 replies; 10+ messages in thread
From: Andy Shevchenko @ 2018-02-19 14:01 UTC (permalink / raw)
To: Dominik Brodowski
Cc: Andy Shevchenko, tim, Jarkko Nikula, Phil Reid, Wolfram Sang,
linux-i2c, Linux Kernel Mailing List
On Sun, Feb 18, 2018 at 6:32 PM, Dominik Brodowski
<linux@dominikbrodowski.net> wrote:
> On Sun, Feb 18, 2018 at 04:23:41PM +0200, Andy Shevchenko wrote:
>> On Sun, Feb 18, 2018 at 11:41 AM, Dominik Brodowski
>> <linux@dominikbrodowski.net> wrote:
>> > On Sat, Feb 17, 2018 at 10:57:01PM +0200, Andy Shevchenko wrote:
>> >> On Sat, 2018-02-17 at 17:58 +0100, Dominik Brodowski wrote:
>>
>> >> > Do you still need the DEBUG_GPIO output?
>> >>
>> >> It would be nice to have, though if it makes difficulties to you, then
>> >> don't bother.
>> >
>> > Note that I have to enable CONFIG_GPIOLIB before I can enable DEBUG_GPIO;
>> > CONFIG_PINCTRL was off as well. Maybe some "SELECT" is missing for
>> > CONFIG_I2C_DESIGNWARE_BAYTRAIL ?
>>
>> Ah, so, your configuration misses pin control driver. You need to
>> enable it in order to get GPIOs working.
>
> Well, I did not need it in the past to have working sound and working
> suspend to RAM. And it already works if
>
> CONFIG_PINCTRL=y
> CONFIG_DEBUG_PINCTRL=y
>
> CONFIG_GPIOLIB=y
> CONFIG_GPIO_ACPI=y
> CONFIG_DEBUG_GPIO=y
>
> are set (but no PINCTRL or GPIO drivers!).
>
> So I'd suggest to
>
> (a) keep your fixup patch (as things work as previously then),
You may answer to mail with the patch by giving a Tested-by tag.
> (b) to have CONFIG_I2C_DESIGNWARE_BAYTRAIL select the appropriate options from
> above [and CONFIG_XPOWER_PMIC_OPREGION ?] (or depend on it?), or
I don't think there is such dependency.
Jarkko, what do you think?
>> Yes, and with enabled pin control driver.
>
> Well, I've reverted your fixup patch locally and enabled all drivers that I
> could -- including CONFIG_XPOWER_PMIC_OPREGION, CONFIG_MFD_AXP20X, and
> CONFIG_MFD_AXP20X_I2C. But I'm not sure at all that a driver actually became
> active...
-ENOSYS is returned when !GPIOLIB. That what made behaviour different
in the first place.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option)
2018-02-17 15:09 ` Andy Shevchenko
2018-02-17 16:58 ` Dominik Brodowski
@ 2018-02-19 17:38 ` Dominik Brodowski
1 sibling, 0 replies; 10+ messages in thread
From: Dominik Brodowski @ 2018-02-19 17:38 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: tim, jarkko.nikula, preid, wsa, linux-i2c, linux-kernel
On Sat, Feb 17, 2018 at 05:09:40PM +0200, Andy Shevchenko wrote:
> On Sat, 2018-02-17 at 17:02 +0200, Andy Shevchenko wrote:
> > On Sat, 2018-02-17 at 14:25 +0100, Dominik Brodowski wrote:
> >
> > > on v4.16-rc1+, sound does not work any more on my Dell XPS 13;
> > > suspend-to-RAM hangs as well. I have bisected this problem down to
> > > commit ca382f5b38f3; reverting this on top of Linus' latest
> > > (1e3510b2b053)
> > > fixes these issues.
> > > And a few snippets from a broken kernel dmesg:
> > >
> > > i2c_designware: probe of INT3432:00 failed with error -38
> > > i2c_designware: probe of INT3433:00 failed with error -38
> >
> > ENOSYS here at probe time, taking into account the commit you think is
> > a
> > culprit, can be passed from gpiod_get() calls only.
> >
> > > Ideas on how to fix this properly?
> >
> > Enable CONFIG_DEBUG_GPIO first and share through some service the
> > dmesg.
> > (it might be good idea to add 'ignore_loglevel initcall_debug' to the
> > kernel command line)
>
> And tell if the following patch helps.
>
> --- a/drivers/i2c/busses/i2c-designware-master.c
> +++ b/drivers/i2c/busses/i2c-designware-master.c
> @@ -644,7 +644,7 @@ static int i2c_dw_init_recovery_info(struct
> dw_i2c_dev *dev)
> gpio = devm_gpiod_get(dev->dev, "scl", GPIOD_OUT_HIGH);
> if (IS_ERR(gpio)) {
> r = PTR_ERR(gpio);
> - if (r == -ENOENT)
> + if (r == -ENOENT || r == -ENOSYS)
> return 0;
> return r;
> }
>
Fixes: ca382f5b38f3 ("i2c: designware: add i2c gpio recovery option")
Tested-and-reported-by: Dominik Brodowski <linux@dominikbrodowski.net>
Thanks,
Dominik
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2018-02-19 17:38 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-17 13:25 i2c-designware: sound and s2ram broken on Broadwell-U system since commit ca382f5b38f367b6 (add i2c gpio recovery option) Dominik Brodowski
2018-02-17 15:02 ` Andy Shevchenko
2018-02-17 15:09 ` Andy Shevchenko
2018-02-17 16:58 ` Dominik Brodowski
2018-02-17 20:57 ` Andy Shevchenko
2018-02-18 9:41 ` Dominik Brodowski
2018-02-18 14:23 ` Andy Shevchenko
2018-02-18 16:32 ` Dominik Brodowski
2018-02-19 14:01 ` Andy Shevchenko
2018-02-19 17:38 ` Dominik Brodowski
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.