[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5210588.IYgZy3yWn7@wuerfel>
Date: Thu, 15 Oct 2015 17:59:08 +0200
From: Arnd Bergmann <arnd@...db.de>
To: linux-arm-kernel@...ts.infradead.org
Cc: Thierry Reding <thierry.reding@...il.com>, arm@...nel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] ARM: tegra: Comment out gpio-ranges properties
On Friday 09 October 2015 17:51:47 Thierry Reding wrote:
> From: Thierry Reding <treding@...dia.com>
>
> While the addition of these properties is technically correct it unveils
> a bug with deferred probe. The problem is that the presence of the gpio-
> range property causes the gpio-tegra driver to defer probe (it needs the
> pinctrl driver to be ready). That's technically correct, but it causes a
> couple of issues:
>
> - The keyboard on Chromebooks stops working. The reason for that is
> that the gpio-tegra device has not registered an IRQ domain by the
> time the EC SPI device is registered, hence the interrupt number
> resolves to 0. This is technically a bug in the SPI core, since it
> should really resolve the interrupt at probe time and defer if the
> IRQ domain isn't available yet. This is similar to what's done for
> I2C and platform device already.
>
> - The gpio-tegra device deferring probe means that it is moved to the
> end of the dpm_list. This list defines the suspend/resume order for
> devices. However the core lacks a way to move all users of the
> gpio-tegra device to the end of the dpm_list at the same time. This
> in turn results in a subtle bug on Jetson TK1, where the gpio-keys
> device is used to expose the power key as input. The power key is a
> convenient way to wake the system from suspend. Interestingly, the
> gpio-keys device ends up getting probed at a point after gpio-tegra
> has been probed successfully from having been deferred earlier. As
> such the driver doesn't need to defer the probe itself, and hence
> the device isn't moved to the end of the dpm_list. This causes the
> gpio-tegra device to be suspended before gpio-keys, which in turn
> leaves gpio-keys unable to wake the system from suspend.
>
> There are patches in the works to fix both of the above issues, but they
> are too involved to make it into v4.3, so in the meantime let's fix the
> regressions by commenting out the gpio-ranges properties until the fixes
> have landed.
>
> Signed-off-by: Thierry Reding <treding@...dia.com>
> ---
>
Applied to fixes, thanks!
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists