[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201118150336.g3u3ljuhrbrn2cko@sekiro>
Date: Wed, 18 Nov 2020 16:03:36 +0100
From: Ludovic Desroches <ludovic.desroches@...rochip.com>
To: cristian.birsan@...rochip.com
Cc: alexandre.belloni@...tlin.com, nicolas.ferre@...rochip.com,
robh+dt@...nel.org, linux-arm-kernel@...ts.infradead.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linus.walleij@...aro.org, linux-gpio@...r.kernel.org
Subject: Re: [PATCH 0/3] ARM: dts: at91: add pincontrol node for USB Host
Hi Cristi,
Adding the gpio list.
On Wed, Nov 18, 2020 at 02:00:16PM +0200, cristian.birsan@...rochip.com wrote:
> From: Cristian Birsan <cristian.birsan@...rochip.com>
>
> The pincontrol node is needed for USB Host since Linux v5.7-rc1. Without
> it the driver probes but VBus is not powered because of wrong pincontrol
> configuration. The patch was tested on SAM9x60EK, SAMA5D4-EK and SAMA5D3-EK.
>
No problem on my side with this set of patches, it's consistent with what we
have.
Acked-by: Ludovic Desroches <ludovic.desroches@...rochip.com>
I just want to share the full picture leading to this situation. You told me the
breakage appears after this commit:
commit 2ab73c6d8323fa1eb02c16c07c40ba2ed17da729
Author: Thierry Reding <treding@...dia.com>
Date: Thu Mar 19 13:27:29 2020 +0100
gpio: Support GPIO controllers without pin-ranges
Wake gpiochip_generic_request() call into the pinctrl helpers only if a
GPIO controller had any pin-ranges assigned to it. This allows a driver
to unconditionally use this helper if it supports multiple devices of
which only a subset have pin-ranges assigned to them.
Signed-off-by: Thierry Reding <treding@...dia.com>
Link: https://lore.kernel.org/r/20200319122737.3063291-2-thierry.reding@gmail.com
Tested-by: Vidya Sagar <vidyas@...dia.com>
Signed-off-by: Linus Walleij <linus.walleij@...aro.org>
We were used to defining pinctrl for all our pins. That is somewhat redundant
when the pin is requested through the gpiolib.
The pinctrl-at91 driver doesn't register any pin range. After this commit, the
gpio_generic_request() fails. The consequence is if we forgot to define the
pinctrl, the pin won't be muxed as a gpio.
At first glance, there is no trivial way to register the pin range in the
pinctrl-at91 driver. There is one driver for the pinctrl and one for the gpio.
I am open to suggestions to fix it in the pinctrl-at91 driver as well if there
is an elegant way (I have some in mind, but there are not) without having to
refactor the driver.
Regards
Ludovic
> Cristian Birsan (3):
> ARM: dts: sam9x60: add pincontrol for USB Host
> ARM: dts: at91: sama5d4_xplained: add pincontrol for USB Host
> ARM: dts: at91: sama5d3_xplained: add pincontrol for USB Host
>
> arch/arm/boot/dts/at91-sam9x60ek.dts | 9 +++++++++
> arch/arm/boot/dts/at91-sama5d3_xplained.dts | 7 +++++++
> arch/arm/boot/dts/at91-sama5d4_xplained.dts | 7 +++++++
> 3 files changed, 23 insertions(+)
>
> --
> 2.25.1
>
Powered by blists - more mailing lists