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).

[...]


-- 
Best regards,
Marek Vasut
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to