Hi Phil, On 06.12.2021 10:22, Phil Elwell wrote: > Since [1], added in 5.7, the absence of a gpio-ranges property has > prevented GPIOs from being restored to inputs when released. > Add those properties for BCM283x and BCM2711 devices. > > [1] commit 2ab73c6d8323 ("gpio: Support GPIO controllers without > pin-ranges") > > Fixes: 2ab73c6d8323 ("gpio: Support GPIO controllers without pin-ranges") > Signed-off-by: Phil Elwell <phil@xxxxxxxxxxxxxxx> This patch breaks today's linux-next (next-20211214) on RPi3 and RPi4. Either there is something missing or wrong here. Booting stops after following messages (on RPi4): [ 3.186786] pinctrl-bcm2835 fe200000.gpio: could not add GPIO chip [ 3.234513] pinctrl-bcm2835 fe200000.gpio: could not add GPIO chip [ 3.276703] mmc0: SDHCI controller on fe340000.mmc [fe340000.mmc] using ADMA [ 3.287191] pinctrl-bcm2835 fe200000.gpio > --- > arch/arm/boot/dts/bcm2711.dtsi | 2 ++ > arch/arm/boot/dts/bcm283x.dtsi | 2 ++ > 2 files changed, 4 insertions(+) > > diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi > index 9e01dbca4a011..dff18fc9a9065 100644 > --- a/arch/arm/boot/dts/bcm2711.dtsi > +++ b/arch/arm/boot/dts/bcm2711.dtsi > @@ -582,6 +582,8 @@ &gpio { > <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, > <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; > > + gpio-ranges = <&gpio 0 0 58>; > + > gpclk0_gpio49: gpclk0_gpio49 { > pin-gpclk { > pins = "gpio49"; > diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi > index a3e06b6809476..c113661a6668f 100644 > --- a/arch/arm/boot/dts/bcm283x.dtsi > +++ b/arch/arm/boot/dts/bcm283x.dtsi > @@ -126,6 +126,8 @@ gpio: gpio@7e200000 { > interrupt-controller; > #interrupt-cells = <2>; > > + gpio-ranges = <&gpio 0 0 54>; > + > /* Defines common pin muxing groups > * > * While each pin can have its mux selected Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland