lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sat, 17 Feb 2018 17:09:40 +0200
From:   Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
To:     Dominik Brodowski <linux@...inikbrodowski.net>,
        tim@...eglstein.org, jarkko.nikula@...ux.intel.com,
        preid@...ctromag.com.au, wsa@...-dreams.de
Cc:     linux-i2c@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: i2c-designware: sound and s2ram broken on Broadwell-U system
 since commit ca382f5b38f367b6 (add i2c gpio recovery option)

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@...ux.intel.com>
Intel Finland Oy

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ