xref: /linux/Documentation/devicetree/bindings/gpio/xylon,logicvc-gpio.yaml (revision 6bdbe62c748c4b8cfe3555bb9b1daecc0d1e585a)
1*6bdbe62cSPaul Kocialkowski# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*6bdbe62cSPaul Kocialkowski# Copyright 2019 Bootlin
3*6bdbe62cSPaul Kocialkowski%YAML 1.2
4*6bdbe62cSPaul Kocialkowski---
5*6bdbe62cSPaul Kocialkowski$id: "http://devicetree.org/schemas/gpio/xylon,logicvc-gpio.yaml#"
6*6bdbe62cSPaul Kocialkowski$schema: "http://devicetree.org/meta-schemas/core.yaml#"
7*6bdbe62cSPaul Kocialkowski
8*6bdbe62cSPaul Kocialkowskititle: Xylon LogiCVC GPIO controller
9*6bdbe62cSPaul Kocialkowski
10*6bdbe62cSPaul Kocialkowskimaintainers:
11*6bdbe62cSPaul Kocialkowski  - Paul Kocialkowski <paul.kocialkowski@bootlin.com>
12*6bdbe62cSPaul Kocialkowski
13*6bdbe62cSPaul Kocialkowskidescription: |
14*6bdbe62cSPaul Kocialkowski  The LogiCVC GPIO describes the GPIO block included in the LogiCVC display
15*6bdbe62cSPaul Kocialkowski  controller. These are meant to be used for controlling display-related
16*6bdbe62cSPaul Kocialkowski  signals.
17*6bdbe62cSPaul Kocialkowski
18*6bdbe62cSPaul Kocialkowski  The controller exposes GPIOs from the display and power control registers,
19*6bdbe62cSPaul Kocialkowski  which are mapped by the driver as follows:
20*6bdbe62cSPaul Kocialkowski  - GPIO[4:0] (display control) mapped to index 0-4
21*6bdbe62cSPaul Kocialkowski  - EN_BLIGHT (power control) mapped to index 5
22*6bdbe62cSPaul Kocialkowski  - EN_VDD (power control) mapped to index 6
23*6bdbe62cSPaul Kocialkowski  - EN_VEE (power control) mapped to index 7
24*6bdbe62cSPaul Kocialkowski  - V_EN (power control) mapped to index 8
25*6bdbe62cSPaul Kocialkowski
26*6bdbe62cSPaul Kocialkowskiproperties:
27*6bdbe62cSPaul Kocialkowski  $nodename:
28*6bdbe62cSPaul Kocialkowski    pattern: "^gpio@[0-9a-f]+$"
29*6bdbe62cSPaul Kocialkowski
30*6bdbe62cSPaul Kocialkowski  compatible:
31*6bdbe62cSPaul Kocialkowski    enum:
32*6bdbe62cSPaul Kocialkowski      - xylon,logicvc-3.02.a-gpio
33*6bdbe62cSPaul Kocialkowski
34*6bdbe62cSPaul Kocialkowski  reg:
35*6bdbe62cSPaul Kocialkowski    maxItems: 1
36*6bdbe62cSPaul Kocialkowski
37*6bdbe62cSPaul Kocialkowski  "#gpio-cells":
38*6bdbe62cSPaul Kocialkowski    const: 2
39*6bdbe62cSPaul Kocialkowski
40*6bdbe62cSPaul Kocialkowski  gpio-controller: true
41*6bdbe62cSPaul Kocialkowski
42*6bdbe62cSPaul Kocialkowski  gpio-line-names:
43*6bdbe62cSPaul Kocialkowski    minItems: 1
44*6bdbe62cSPaul Kocialkowski    maxItems: 9
45*6bdbe62cSPaul Kocialkowski
46*6bdbe62cSPaul Kocialkowskirequired:
47*6bdbe62cSPaul Kocialkowski  - compatible
48*6bdbe62cSPaul Kocialkowski  - reg
49*6bdbe62cSPaul Kocialkowski  - "#gpio-cells"
50*6bdbe62cSPaul Kocialkowski  - gpio-controller
51*6bdbe62cSPaul Kocialkowski
52*6bdbe62cSPaul Kocialkowskiexamples:
53*6bdbe62cSPaul Kocialkowski  - |
54*6bdbe62cSPaul Kocialkowski    logicvc: logicvc@43c00000 {
55*6bdbe62cSPaul Kocialkowski      compatible = "xylon,logicvc-3.02.a", "syscon", "simple-mfd";
56*6bdbe62cSPaul Kocialkowski      reg = <0x43c00000 0x6000>;
57*6bdbe62cSPaul Kocialkowski
58*6bdbe62cSPaul Kocialkowski      #address-cells = <1>;
59*6bdbe62cSPaul Kocialkowski      #size-cells = <1>;
60*6bdbe62cSPaul Kocialkowski
61*6bdbe62cSPaul Kocialkowski      logicvc_gpio: gpio@40 {
62*6bdbe62cSPaul Kocialkowski        compatible = "xylon,logicvc-3.02.a-gpio";
63*6bdbe62cSPaul Kocialkowski        reg = <0x40 0x40>;
64*6bdbe62cSPaul Kocialkowski        gpio-controller;
65*6bdbe62cSPaul Kocialkowski        #gpio-cells = <2>;
66*6bdbe62cSPaul Kocialkowski        gpio-line-names = "GPIO0", "GPIO1", "GPIO2", "GPIO3", "GPIO4",
67*6bdbe62cSPaul Kocialkowski               "EN_BLIGHT", "EN_VDD", "EN_VEE", "V_EN";
68*6bdbe62cSPaul Kocialkowski      };
69*6bdbe62cSPaul Kocialkowski    };
70