dt-bindings: pinctrl: aspeed: Convert AST2400 bindings to json-schema
[linux-2.6-block.git] / Documentation / devicetree / bindings / pinctrl / aspeed,ast2500-pinctrl.txt
1 =============================
2 Aspeed AST2500 Pin Controller
3 =============================
4
5 Required properties for g5:
6 - compatible :                  Should be one of the following:
7                                 "aspeed,ast2500-pinctrl"
8                                 "aspeed,g5-pinctrl"
9
10 - aspeed,external-nodes:        A cell of phandles to external controller nodes:
11                                 0: compatible with "aspeed,ast2500-gfx", "syscon"
12                                 1: compatible with "aspeed,ast2500-lhc", "syscon"
13
14 The pin controller node should be the child of a syscon node with the required
15 property:
16
17 - compatible :          Should be one of the following:
18                         "aspeed,ast2500-scu", "syscon", "simple-mfd"
19                         "aspeed,g5-scu", "syscon", "simple-mfd"
20
21 Refer to the the bindings described in
22 Documentation/devicetree/bindings/mfd/syscon.txt
23
24 Subnode Format
25 ==============
26
27 The required properties of pinmux child nodes are:
28 - function: the mux function to select
29 - groups  : the list of groups to select with this function
30
31 Required properties of pinconf child nodes are:
32 - groups: A list of groups to select (either this or "pins" must be
33           specified)
34 - pins  : A list of ball names as strings, eg "D14" (either this or "groups"
35           must be specified)
36
37 Optional properties of pinconf child nodes are:
38 - bias-disable  : disable any pin bias
39 - bias-pull-down: pull down the pin
40 - drive-strength: sink or source at most X mA
41
42 Definitions are as specified in
43 Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt, with any
44 further limitations as described above.
45
46 For pinmux, each mux function has only one associated pin group. Each group is
47 named by its function. The following values for the function and groups
48 properties are supported:
49
50 ACPI ADC0 ADC1 ADC10 ADC11 ADC12 ADC13 ADC14 ADC15 ADC2 ADC3 ADC4 ADC5 ADC6
51 ADC7 ADC8 ADC9 BMCINT DDCCLK DDCDAT ESPI FWSPICS1 FWSPICS2 GPID0 GPID2 GPID4
52 GPID6 GPIE0 GPIE2 GPIE4 GPIE6 I2C10 I2C11 I2C12 I2C13 I2C14 I2C3 I2C4 I2C5 I2C6
53 I2C7 I2C8 I2C9 LAD0 LAD1 LAD2 LAD3 LCLK LFRAME LPCHC LPCPD LPCPLUS LPCPME
54 LPCRST LPCSMI LSIRQ MAC1LINK MAC2LINK MDIO1 MDIO2 NCTS1 NCTS2 NCTS3 NCTS4 NDCD1
55 NDCD2 NDCD3 NDCD4 NDSR1 NDSR2 NDSR3 NDSR4 NDTR1 NDTR2 NDTR3 NDTR4 NRI1 NRI2
56 NRI3 NRI4 NRTS1 NRTS2 NRTS3 NRTS4 OSCCLK PEWAKE PNOR PWM0 PWM1 PWM2 PWM3 PWM4
57 PWM5 PWM6 PWM7 RGMII1 RGMII2 RMII1 RMII2 RXD1 RXD2 RXD3 RXD4 SALT1 SALT10
58 SALT11 SALT12 SALT13 SALT14 SALT2 SALT3 SALT4 SALT5 SALT6 SALT7 SALT8 SALT9
59 SCL1 SCL2 SD1 SD2 SDA1 SDA2 SGPM SGPS1 SGPS2 SIOONCTRL SIOPBI SIOPBO SIOPWREQ
60 SIOPWRGD SIOS3 SIOS5 SIOSCI SPI1 SPI1CS1 SPI1DEBUG SPI1PASSTHRU SPI2CK SPI2CS0
61 SPI2CS1 SPI2MISO SPI2MOSI TIMER3 TIMER4 TIMER5 TIMER6 TIMER7 TIMER8 TXD1 TXD2
62 TXD3 TXD4 UART6 USB11BHID USB2AD USB2AH USB2BD USB2BH USBCKI VGABIOSROM VGAHS
63 VGAVS VPI24 VPO WDTRST1 WDTRST2
64
65 Example
66 =======
67
68 ahb {
69         apb {
70                 syscon: scu@1e6e2000 {
71                         compatible = "aspeed,ast2500-scu", "syscon", "simple-mfd";
72                         reg = <0x1e6e2000 0x1a8>;
73
74                         pinctrl: pinctrl {
75                                 compatible = "aspeed,g5-pinctrl";
76                                 aspeed,external-nodes = <&gfx &lhc>;
77
78                                 pinctrl_i2c3_default: i2c3_default {
79                                         function = "I2C3";
80                                         groups = "I2C3";
81                                 };
82
83                                 pinctrl_gpioh0_unbiased_default: gpioh0 {
84                                         pins = "A18";
85                                         bias-disable;
86                                 };
87                         };
88                 };
89
90                 gfx: display@1e6e6000 {
91                         compatible = "aspeed,ast2500-gfx", "syscon";
92                         reg = <0x1e6e6000 0x1000>;
93                 };
94         };
95
96         lpc: lpc@1e789000 {
97                 compatible = "aspeed,ast2500-lpc", "simple-mfd";
98                 reg = <0x1e789000 0x1000>;
99
100                 #address-cells = <1>;
101                 #size-cells = <1>;
102                 ranges = <0x0 0x1e789000 0x1000>;
103
104                 lpc_host: lpc-host@80 {
105                         compatible = "aspeed,ast2500-lpc-host", "simple-mfd", "syscon";
106                         reg = <0x80 0x1e0>;
107                         reg-io-width = <4>;
108
109                         #address-cells = <1>;
110                         #size-cells = <1>;
111                         ranges = <0x0 0x80 0x1e0>;
112
113                         lhc: lhc@20 {
114                                compatible = "aspeed,ast2500-lhc";
115                                reg = <0x20 0x24 0x48 0x8>;
116                         };
117                 };
118         };
119 };