Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1285934
| From | Martyn Welch <martyn.welch@collabora.co.uk> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 1/3] Device tree binding documentation for gpio-switch |
| Date | 2015-12-07 22:20 +0100 |
| Message-ID | <qDbmp-1sP-13@gated-at.bofh.it> (permalink) |
| References | <qC2uT-5Kw-37@gated-at.bofh.it> <qC2uV-5Kw-73@gated-at.bofh.it> <qD7Vw-7B3-13@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 07/12/15 17:37, Rob Herring wrote:
> +Linus W
>
> On Fri, Dec 04, 2015 at 05:31:13PM +0000, Martyn Welch wrote:
>> This patch adds documentation for the gpio-switch binding. This binding
>> provides a mechanism to bind named links to gpio, with the primary
>> purpose of enabling standardised access to switches that might be standard
>> across a group of devices but implemented differently on each device.
>
> This is good and what I suggested, but it now makes me wonder if switch
> is generic enough. This boils down to needing to expose single gpio
> lines to userspace with a defined function/use. IIRC, there's been some
> discussion about this before along with improving the userspace
> interface for GPIO in general. So I'd like to get Linus' thoughts on
> this.
>
No problem. Rename gpio-signal?
>
>> Signed-off-by: Martyn Welch <martyn.welch@collabora.co.uk>
>> ---
>> .../devicetree/bindings/misc/gpio-switch.txt | 47 ++++++++++++++++++++++
>> 1 file changed, 47 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/misc/gpio-switch.txt
>>
>> diff --git a/Documentation/devicetree/bindings/misc/gpio-switch.txt b/Documentation/devicetree/bindings/misc/gpio-switch.txt
>> new file mode 100644
>> index 0000000..13528bd
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/misc/gpio-switch.txt
>> @@ -0,0 +1,47 @@
>> +Device-Tree bindings for gpio attached switches.
>> +
>> +This provides a mechanism to provide a named link to specified gpios. This can
>> +be useful in instances such as when theres a need to monitor a switch, which is
>> +common across a family of devices, but attached to different gpios and even
>> +implemented in different ways on differnet devices.
>> +
>> +Required properties:
>> + - compatible = "gpio-switch";
>> +
>> +Each signal is represented as a sub-node of "gpio-switch". The naming of
>> +sub-nodes is arbitrary.
>> +
>> +Required sub-node properties:
>> +
>> + - label: Name to be given to gpio switch.
>> + - gpios: OF device-tree gpio specification.
>> +
>> +Optional sub-node properties:
>> +
>> + - read-only: Boolean flag to mark the gpio as read-only, i.e. the line
>> + should not be driven by the host.
>
> In terms a a switch use, allowing driving it would be an override of the
> switch. Is that the idea here?
>
Yeah - since it had become a lot more generic and a lot of
switches/signals would probably be implemented with a pull-up resistor
of something like that, it seemed to make sense to allow them to be
driven as well.
>> +
>> +Example nodes:
>> +
>> + gpio-switch {
>> + compatible = "gpio-switch";
>
> Both from a binding and driver perspective, there is no point in
> grouping these. Each node can simply have this compatible string.
>
True. I did it this way as this is how gpio-keys is implemented. OK,
that has one optional parameter (autorepeat) for the block and this has
none. Though I can also see that these probably have less in common than
the individual lines used in gpio-keys.
>> +
>> + write-protect {
>> + label = "write-protect";
>> + gpios = <&gpx3 0 GPIO_ACTIVE_LOW>;
>> + read-only;
>> + };
>> +
>> + developer-switch {
>> + label = "developer-switch";
>> + gpios = <&gpx1 3 GPIO_ACTIVE_HIGH>;
>> + read-only;
>> + };
>> +
>> + recovery-switch {
>> + label = "recovery-switch";
>> + gpios = <&gpx0 7 GPIO_ACTIVE_LOW>;
>> + read-only;
>> + };
>> + };
>> +
>> --
>> 2.1.4
>>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Add support for monitoring gpio switches Martyn Welch <martyn.welch@collabora.co.uk> - 2015-12-04 18:40 +0100
[PATCH 2/3] Add support for monitoring gpio switches Martyn Welch <martyn.welch@collabora.co.uk> - 2015-12-04 18:40 +0100
[PATCH] fix noderef.cocci warnings kbuild test robot <lkp@intel.com> - 2015-12-04 19:20 +0100
Re: [PATCH 2/3] Add support for monitoring gpio switches kbuild test robot <lkp@intel.com> - 2015-12-04 19:20 +0100
Re: [PATCH 2/3] Add support for monitoring gpio switches Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-12-04 20:00 +0100
Re: [PATCH 2/3] Add support for monitoring gpio switches Martyn Welch <martyn.welch@collabora.co.uk> - 2015-12-05 11:50 +0100
Re: [PATCH 2/3] Add support for monitoring gpio switches Linus Walleij <linus.walleij@linaro.org> - 2015-12-11 10:10 +0100
[PATCH 1/3] Device tree binding documentation for gpio-switch Martyn Welch <martyn.welch@collabora.co.uk> - 2015-12-04 18:40 +0100
Re: [PATCH 1/3] Device tree binding documentation for gpio-switch Rob Herring <robh@kernel.org> - 2015-12-07 18:40 +0100
Re: [PATCH 1/3] Device tree binding documentation for gpio-switch Martyn Welch <martyn.welch@collabora.co.uk> - 2015-12-07 22:20 +0100
Re: [PATCH 1/3] Device tree binding documentation for gpio-switch Linus Walleij <linus.walleij@linaro.org> - 2015-12-11 13:50 +0100
Re: [PATCH 1/3] Device tree binding documentation for gpio-switch Rob Herring <robh+dt@kernel.org> - 2015-12-11 15:10 +0100
[PATCH 3/3] ARM: dts: Addition of binding for gpio switches on peach-pi Martyn Welch <martyn.welch@collabora.co.uk> - 2015-12-04 18:40 +0100
csiph-web