On 6/19/19 4:53 PM, Lukasz Majewski wrote: > On Wed, 19 Jun 2019 16:32:57 +0200 > Marek Vasut <ma...@denx.de> wrote: > >> On 6/19/19 4:19 PM, Lukasz Majewski wrote: >>> Hi Marek, >>> >>>> On 6/19/19 2:27 PM, Lukasz Majewski wrote: >>>>> Those properties are U-Boot specific as the mxs gpio Linux driver >>>>> (up to version v5.1.11) is not supporting them. >>>>> >>>>> Signed-off-by: Lukasz Majewski <lu...@denx.de> >>>> >>>> [...] >>>> >>>>> +&gpio4 { >>>>> + gpio-ranges = <&pinctrl 120 0 21>; >>>> >>>> Are you sure the GPIO controller offset is 120 here ? Shouldn't >>>> that be 0 , while the pin controller offset should be 120 ? Some >>>> for the others ? >>> >>> Please find following excerpt from the documentation [1]: >>> >>> The format is: <[pin controller phandle], [GPIO controller offset], >>> [pin controller offset], [number of pins]>; >>> >>> Example: >>> >>> gpio-ranges = <&foo 0 20 10>, <&bar 10 50 20>; >>> >>> This means: >>> - pins 20..29 on pin controller "foo" is mapped to GPIO line 0..9 >>> and >>> - pins 50..69 on pin controller "bar" is mapped to GPIO line 10..29 >>> >>> >>> The 120 is the GPIO controller offset (logical one) [*] and >>> corresponds to the final GPIO number. >>> >>> Then we do have the "pin controller offset" which is the pin number >>> start index per controller (like gpio0, gpio1, gpioN). In my case >>> it is always 0. >> >> I think you have these two swapped. The pin controller is the >> super-node here, hence each GPIO block is at offset N in the pin >> controller pin space. Each GPIO block then has GPIOs, which either >> start from 0 or M within the GPIO block pin space (in MXS case, this >> is always 0). > > Yes, correct. This shall be <&pinctrl 0 120 21> > > I will prepare v6.
And update the GPIO controller driver accordingly. -- Best regards, Marek Vasut _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot