Thread (22 messages) 22 messages, 8 authors, 2014-03-07

Re: [PATCHv2 3/5] net: rfkill: gpio: remove gpio names

From: Stephen Warren <hidden>
Date: 2014-03-05 02:18:39
Also in: linux-arm-kernel, linux-tegra, linux-wireless, lkml

On 03/04/2014 06:43 PM, Linus Walleij wrote:
On Wed, Feb 26, 2014 at 7:04 AM, Stephen Warren [off-list ref] wrote:
quoted
quoted
-     gpio = devm_gpiod_get_index(&pdev->dev, rfkill->reset_name, 0);
+     gpio = devm_gpiod_get_index(&pdev->dev, NULL, 0);
I think the correct fix here is to look up the GPIO by name rather than
by index, but simply hard-code the name rather than generating it with
sprintf(). Index lookups are hard to expand compatibly, but named-based
lookups scale much better.

In other words, I rather specifically disagree with using a plain
"gpios" property in any future DT binding, but would strongly prefer
e.g. reset-gpios/shutdown-gpios or gpios/gpio-names.
If I understand the situation correctly it's like ACPI does not have named
GPIOs so keeping specifying this in DT GPIO bindings is counter-productive
to the work of abstracting the access to GPIO handlers so that drivers
need not know whether ACPI or DT is used for describing the hardware.
For devices that already have both ACPI and DT bindings, we can't
pretend they can be the same; they are already potentially different. We
simply need to parse DT and ACPI differently, since that's the sway
their bindings are defined.

For any devices that don't have both ACPI and DT bindings, I agree we
should certainly strive to make any new bindings aligned so we don't
have to deal with this for them.

However, we can't change the past.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help