[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f260347f-bc97-6065-ece4-299b72f0aedb@xilinx.com>
Date: Thu, 7 Jan 2021 11:52:40 +0100
From: Michal Simek <michal.simek@...inx.com>
To: Linus Walleij <linus.walleij@...aro.org>,
Michal Simek <michal.simek@...inx.com>
CC: Srinivas Neeli <srinivas.neeli@...inx.com>,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
Shubhrajyoti Datta <shubhrajyoti.datta@...inx.com>,
<sgoud@...inx.com>, Robert Hancock <hancock@...systems.ca>,
William Breathitt Gray <vilhelm.gray@...il.com>,
Syed Nayyar Waris <syednwaris@...il.com>,
"open list:GPIO SUBSYSTEM" <linux-gpio@...r.kernel.org>,
Linux ARM <linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
<git@...inx.com>
Subject: Re: [PATCH V4 5/5] gpio: gpio-xilinx: Add check if width exceeds 32
On 07. 01. 21 11:47, Linus Walleij wrote:
> On Thu, Jan 7, 2021 at 11:29 AM Michal Simek <michal.simek@...inx.com> wrote:
>> On 07. 01. 21 11:17, Linus Walleij wrote:
>>> On Wed, Jan 6, 2021 at 1:27 PM Srinivas Neeli <srinivas.neeli@...inx.com> wrote:
>
>>>> @@ -591,6 +591,9 @@ static int xgpio_probe(struct platform_device *pdev)
>>>> if (of_property_read_u32(np, "xlnx,gpio-width", &chip->gpio_width[0]))
>>>> chip->gpio_width[0] = 32;
>>>
>>> This xlnx,gpio-width seems very much like the standard ngpios property
>>> from Documentation/devicetree/bindings/gpio/gpio.txt
>>> but I guess not much to do about that now. :/
>>>
>>> Do you think you can add support for both?
>>
>> support for both is definitely possible but we need to handle also gpio
>> width for second channel referenced by xlnx,gpio2-widht now.
>>
>> It means we could end up in situation which can be misleading for users
>> where ngpios will be 10 and xlnx,gpio2-width another 10 and in total we
>> have 20 gpios.
>
> OK that is confusing. Let's not do that then.
>
>> I think that it is better not to start to mess with ngpios property not
>> to confuse people which are coming from other SOCs because ngpios can
>> suggest all gpios assigned to this controller.
>
> OK I agree.
>
>>>> + if (chip->gpio_width[0] > 32)
>>>> + return -EINVAL;
>>>
>>> This looks OK.
>>
>> Does it mean ack for this patch?
>
> Yeah after explanations this patch is fine:
> Acked-by: Linus Walleij <linus.walleij@...aro.org>
>
> It's just that this hardware with paired controllers is a bit weird so it will
> lead to discussions all the time because it's hard to understand.
Maybe it should be described a little bit differently in DT.
Just to have gpio node and every bank could be described as a child node
where standard properties could be used and irq will be shared.
Thanks,
Michal
Powered by blists - more mailing lists