Re: [PATCH v2 5/6] gpio-exar/8250-exar: Make set of exported GPIOs configurable

From: Jan Kiszka
Date: Mon May 22 2017 - 13:04:44 EST


On 2017-05-22 18:33, Andy Shevchenko wrote:
> On Sun, May 21, 2017 at 2:43 PM, Jan Kiszka <jan.kiszka@xxxxxxxxxxx> wrote:
>> On 2017-05-18 19:43, Andy Shevchenko wrote:
>>> On Thu, May 18, 2017 at 5:59 PM, Jan Kiszka <jan.kiszka@xxxxxxxxxxx> wrote:
>>>> On the SIMATIC, IOT2040 only a single pin is exportable as GPIO, the
>
>>>> + pdata.first_gpio = first_gpio;
>>>> + pdata.ngpio = ngpio;
>>>
>>> Still thinking about device properties ("ngpios" and something like
>>> "exar8250,gpio-start").
>>
>> Changed back to properties, removing all platform data.
>>
>> But what's the purpose of prefixing the name here? This does not have
>> anything to do with device trees. It's a private parameter channel
>> between the creating device driver and the gpio driver, and there will
>> be no other bindings.
>
> To avoid potential collision with registered official property, that's
> why better to use prefix.
> (I didn't find anything like GPIO start / pin in registered
> properties, maybe there is one)

When using the "public" channel devices properties, we cannot prevent
that people set some for the device, despite it is not supposed to be
controlled by DT or ACPI. But I don't see where default properties
should come from, except via intentionally designed DTs or ACPI tables.

Anyway, I can prefix.

>
>>>> + unsigned int first_gpio;
>>>> + unsigned int ngpio;
>>>
>>> u16 ?
>
>> If we do that, then we would rather have to choose u8. But this is
>> pointless restriction. I prefer to stay with the native type.
>
> Still for properties it would be u32, wouldn't it?
>

Because properties ask for a type width, yes. I can align both to u32,
though.

Jan