xref: /freebsd/sys/contrib/device-tree/Bindings/gpio/lacie,netxbig-gpio-ext.yaml (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
1*833e5d42SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*833e5d42SEmmanuel Vadot%YAML 1.2
3*833e5d42SEmmanuel Vadot---
4*833e5d42SEmmanuel Vadot$id: http://devicetree.org/schemas/gpio/lacie,netxbig-gpio-ext.yaml#
5*833e5d42SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*833e5d42SEmmanuel Vadot
7*833e5d42SEmmanuel Vadottitle: NetxBig GPIO extension bus
8*833e5d42SEmmanuel Vadot
9*833e5d42SEmmanuel Vadotmaintainers:
10*833e5d42SEmmanuel Vadot  - Simon Guinot <simon.guinot@sequanux.org>
11*833e5d42SEmmanuel Vadot
12*833e5d42SEmmanuel Vadotdescription: >
13*833e5d42SEmmanuel Vadot  GPIO extension bus found on some LaCie/Seagate boards
14*833e5d42SEmmanuel Vadot  (Example: 2Big/5Big Network v2, 2Big NAS).
15*833e5d42SEmmanuel Vadot
16*833e5d42SEmmanuel Vadotproperties:
17*833e5d42SEmmanuel Vadot  compatible:
18*833e5d42SEmmanuel Vadot    items:
19*833e5d42SEmmanuel Vadot      - const: lacie,netxbig-gpio-ext
20*833e5d42SEmmanuel Vadot
21*833e5d42SEmmanuel Vadot  addr-gpios:
22*833e5d42SEmmanuel Vadot    description: GPIOs representing the address register (LSB->MSB).
23*833e5d42SEmmanuel Vadot    items:
24*833e5d42SEmmanuel Vadot      - description: bit 0 (LSB)
25*833e5d42SEmmanuel Vadot      - description: bit 1
26*833e5d42SEmmanuel Vadot      - description: bit 2 (MSB)
27*833e5d42SEmmanuel Vadot
28*833e5d42SEmmanuel Vadot  data-gpios:
29*833e5d42SEmmanuel Vadot    description: GPIOs representing the data register (LSB->MSB).
30*833e5d42SEmmanuel Vadot    items:
31*833e5d42SEmmanuel Vadot      - description: bit 0 (LSB)
32*833e5d42SEmmanuel Vadot      - description: bit 1
33*833e5d42SEmmanuel Vadot      - description: bit 2 (MSB)
34*833e5d42SEmmanuel Vadot
35*833e5d42SEmmanuel Vadot  enable-gpio:
36*833e5d42SEmmanuel Vadot    description: Latches the new configuration (address, data) on raising edge.
37*833e5d42SEmmanuel Vadot    maxItems: 1
38*833e5d42SEmmanuel Vadot
39*833e5d42SEmmanuel Vadotrequired:
40*833e5d42SEmmanuel Vadot  - compatible
41*833e5d42SEmmanuel Vadot  - addr-gpios
42*833e5d42SEmmanuel Vadot  - data-gpios
43*833e5d42SEmmanuel Vadot  - enable-gpio
44*833e5d42SEmmanuel Vadot
45*833e5d42SEmmanuel VadotadditionalProperties: false
46*833e5d42SEmmanuel Vadot
47*833e5d42SEmmanuel Vadotexamples:
48*833e5d42SEmmanuel Vadot  - |
49*833e5d42SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
50*833e5d42SEmmanuel Vadot
51*833e5d42SEmmanuel Vadot    gpio {
52*833e5d42SEmmanuel Vadot        compatible = "lacie,netxbig-gpio-ext";
53*833e5d42SEmmanuel Vadot        addr-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH
54*833e5d42SEmmanuel Vadot                      &gpio1 16 GPIO_ACTIVE_HIGH
55*833e5d42SEmmanuel Vadot                      &gpio1 17 GPIO_ACTIVE_HIGH>;
56*833e5d42SEmmanuel Vadot        data-gpios = <&gpio1 12 GPIO_ACTIVE_HIGH
57*833e5d42SEmmanuel Vadot                      &gpio1 13 GPIO_ACTIVE_HIGH
58*833e5d42SEmmanuel Vadot                      &gpio1 14 GPIO_ACTIVE_HIGH>;
59*833e5d42SEmmanuel Vadot        enable-gpio = <&gpio0 29 GPIO_ACTIVE_HIGH>;
60*833e5d42SEmmanuel Vadot    };
61