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