xref: /linux/Documentation/devicetree/bindings/gpio/pisosr-gpio.yaml (revision fcb117e0758d1462128a50c5788555e03b48833b)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/gpio/pisosr-gpio.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Generic Parallel-in/Serial-out Shift Register GPIO Driver
8
9description:
10  This binding describes generic parallel-in/serial-out shift register
11  devices that can be used for GPI (General Purpose Input). This includes
12  SN74165 serial-out shift registers and the SN65HVS88x series of
13  industrial serializers.
14
15maintainers:
16  - Frank Li <Frank.Li@nxp.com>
17
18properties:
19  compatible:
20    enum:
21      - pisosr-gpio
22
23  gpio-controller: true
24
25  '#gpio-cells':
26    const: 2
27
28  ngpios:
29    maximum: 32
30    default: 8
31
32  load-gpios:
33    description:
34      GPIO pin specifier attached to load enable, this
35      pin is pulsed before reading from the device to
36      load input pin values into the device.
37
38  spi-cpol: true
39
40required:
41  - compatible
42  - gpio-controller
43  - '#gpio-cells'
44
45allOf:
46  - $ref: /schemas/spi/spi-peripheral-props.yaml#
47
48unevaluatedProperties: false
49
50examples:
51  - |
52    #include <dt-bindings/gpio/gpio.h>
53
54    spi {
55        #address-cells = <1>;
56        #size-cells = <0>;
57
58        gpio@0 {
59            compatible = "pisosr-gpio";
60            reg = <0>;
61            gpio-controller;
62            #gpio-cells = <2>;
63            load-gpios = <&gpio2 23 GPIO_ACTIVE_LOW>;
64            spi-max-frequency = <1000000>;
65            spi-cpol;
66        };
67    };
68