diff options
author | Mugunthan V N <mugunthanvnm@ti.com> | 2013-10-10 15:14:54 -0400 |
---|---|---|
committer | Benoit Cousson <bcousson@baylibre.com> | 2013-10-20 13:16:55 -0400 |
commit | e54686e4c79a5b2e8d8c77317ac8ab08d3040935 (patch) | |
tree | 94318a2c1f8b296e4a51f1215772bcc87224cb50 | |
parent | 9e3269b8c68cef55a35146d32b2adde1009ce075 (diff) |
ARM: dts: AM4372: Update Support for EPOS EVM
-> Adding pinmux for cpsw, i2c0.
-> Enabling the modules that are present in AM4372 EPOS EVM
These modules are tested on AM4372 EPOS EVM.
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Benoit Cousson <bcousson@baylibre.com>
-rw-r--r-- | arch/arm/boot/dts/am43x-epos-evm.dts | 168 | ||||
-rw-r--r-- | include/dt-bindings/pinctrl/am43xx.h | 31 |
2 files changed, 199 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts index 74174d48f476..fbf9c4c7a94f 100644 --- a/arch/arm/boot/dts/am43x-epos-evm.dts +++ b/arch/arm/boot/dts/am43x-epos-evm.dts | |||
@@ -11,8 +11,176 @@ | |||
11 | /dts-v1/; | 11 | /dts-v1/; |
12 | 12 | ||
13 | #include "am4372.dtsi" | 13 | #include "am4372.dtsi" |
14 | #include <dt-bindings/pinctrl/am43xx.h> | ||
15 | #include <dt-bindings/gpio/gpio.h> | ||
14 | 16 | ||
15 | / { | 17 | / { |
16 | model = "TI AM43x EPOS EVM"; | 18 | model = "TI AM43x EPOS EVM"; |
17 | compatible = "ti,am43x-epos-evm","ti,am4372","ti,am43"; | 19 | compatible = "ti,am43x-epos-evm","ti,am4372","ti,am43"; |
20 | |||
21 | vmmcsd_fixed: fixedregulator-sd { | ||
22 | compatible = "regulator-fixed"; | ||
23 | regulator-name = "vmmcsd_fixed"; | ||
24 | regulator-min-microvolt = <3300000>; | ||
25 | regulator-max-microvolt = <3300000>; | ||
26 | enable-active-high; | ||
27 | }; | ||
28 | |||
29 | am43xx_pinmux: pinmux@44e10800 { | ||
30 | cpsw_default: cpsw_default { | ||
31 | pinctrl-single,pins = < | ||
32 | /* Slave 1 */ | ||
33 | 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_crs.rmii1_crs */ | ||
34 | 0x110 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxerr.rmii1_rxerr */ | ||
35 | 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_txen.rmii1_txen */ | ||
36 | 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxdv.rmii1_rxdv */ | ||
37 | 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_txd1.rmii1_txd1 */ | ||
38 | 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_txd0.rmii1_txd0 */ | ||
39 | 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxd1.rmii1_rxd1 */ | ||
40 | 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxd0.rmii1_rxd0 */ | ||
41 | 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii1_refclk.rmii1_refclk */ | ||
42 | >; | ||
43 | }; | ||
44 | |||
45 | cpsw_sleep: cpsw_sleep { | ||
46 | pinctrl-single,pins = < | ||
47 | /* Slave 1 reset value */ | ||
48 | 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
49 | 0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
50 | 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
51 | 0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
52 | 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
53 | 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
54 | 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
55 | 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
56 | 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
57 | >; | ||
58 | }; | ||
59 | |||
60 | davinci_mdio_default: davinci_mdio_default { | ||
61 | pinctrl-single,pins = < | ||
62 | /* MDIO */ | ||
63 | 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */ | ||
64 | 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */ | ||
65 | >; | ||
66 | }; | ||
67 | |||
68 | davinci_mdio_sleep: davinci_mdio_sleep { | ||
69 | pinctrl-single,pins = < | ||
70 | /* MDIO reset value */ | ||
71 | 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
72 | 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7) | ||
73 | >; | ||
74 | }; | ||
75 | |||
76 | i2c0_pins: pinmux_i2c0_pins { | ||
77 | pinctrl-single,pins = < | ||
78 | 0x188 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_sda.i2c0_sda */ | ||
79 | 0x18c (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_scl.i2c0_scl */ | ||
80 | >; | ||
81 | }; | ||
82 | }; | ||
83 | |||
84 | matrix_keypad: matrix_keypad@0 { | ||
85 | compatible = "gpio-matrix-keypad"; | ||
86 | debounce-delay-ms = <5>; | ||
87 | col-scan-delay-us = <2>; | ||
88 | |||
89 | row-gpios = <&gpio0 12 GPIO_ACTIVE_HIGH /* Bank0, pin12 */ | ||
90 | &gpio0 13 GPIO_ACTIVE_HIGH /* Bank0, pin13 */ | ||
91 | &gpio0 14 GPIO_ACTIVE_HIGH /* Bank0, pin14 */ | ||
92 | &gpio0 15 GPIO_ACTIVE_HIGH>; /* Bank0, pin15 */ | ||
93 | |||
94 | col-gpios = <&gpio3 9 GPIO_ACTIVE_HIGH /* Bank3, pin9 */ | ||
95 | &gpio3 10 GPIO_ACTIVE_HIGH /* Bank3, pin10 */ | ||
96 | &gpio2 18 GPIO_ACTIVE_HIGH /* Bank2, pin18 */ | ||
97 | &gpio2 19 GPIO_ACTIVE_HIGH>; /* Bank2, pin19 */ | ||
98 | |||
99 | linux,keymap = <0x00000201 /* P1 */ | ||
100 | 0x01000204 /* P4 */ | ||
101 | 0x02000207 /* P7 */ | ||
102 | 0x0300020a /* NUMERIC_STAR */ | ||
103 | 0x00010202 /* P2 */ | ||
104 | 0x01010205 /* P5 */ | ||
105 | 0x02010208 /* P8 */ | ||
106 | 0x03010200 /* P0 */ | ||
107 | 0x00020203 /* P3 */ | ||
108 | 0x01020206 /* P6 */ | ||
109 | 0x02020209 /* P9 */ | ||
110 | 0x0302020b /* NUMERIC_POUND */ | ||
111 | 0x00030067 /* UP */ | ||
112 | 0x0103006a /* RIGHT */ | ||
113 | 0x0203006c /* DOWN */ | ||
114 | 0x03030069>; /* LEFT */ | ||
115 | }; | ||
116 | }; | ||
117 | |||
118 | &mmc1 { | ||
119 | status = "okay"; | ||
120 | vmmc-supply = <&vmmcsd_fixed>; | ||
121 | bus-width = <4>; | ||
122 | }; | ||
123 | |||
124 | &mac { | ||
125 | pinctrl-names = "default", "sleep"; | ||
126 | pinctrl-0 = <&cpsw_default>; | ||
127 | pinctrl-1 = <&cpsw_sleep>; | ||
128 | status = "okay"; | ||
129 | }; | ||
130 | |||
131 | &davinci_mdio { | ||
132 | pinctrl-names = "default", "sleep"; | ||
133 | pinctrl-0 = <&davinci_mdio_default>; | ||
134 | pinctrl-1 = <&davinci_mdio_sleep>; | ||
135 | status = "okay"; | ||
136 | }; | ||
137 | |||
138 | &cpsw_emac0 { | ||
139 | phy_id = <&davinci_mdio>, <16>; | ||
140 | phy-mode = "rmii"; | ||
141 | }; | ||
142 | |||
143 | &cpsw_emac1 { | ||
144 | phy_id = <&davinci_mdio>, <1>; | ||
145 | phy-mode = "rmii"; | ||
146 | }; | ||
147 | |||
148 | &i2c0 { | ||
149 | status = "okay"; | ||
150 | pinctrl-names = "default"; | ||
151 | pinctrl-0 = <&i2c0_pins>; | ||
152 | |||
153 | at24@50 { | ||
154 | compatible = "at24,24c256"; | ||
155 | pagesize = <64>; | ||
156 | reg = <0x50>; | ||
157 | }; | ||
158 | |||
159 | pixcir_ts@5c { | ||
160 | compatible = "pixcir,pixcir_ts"; | ||
161 | reg = <0x5c>; | ||
162 | interrupt-parent = <&gpio1>; | ||
163 | interrupts = <17 0>; | ||
164 | |||
165 | attb-gpio = <&gpio1 17 GPIO_ACTIVE_HIGH>; | ||
166 | |||
167 | x-size = <1024>; | ||
168 | y-size = <768>; | ||
169 | }; | ||
170 | }; | ||
171 | |||
172 | &gpio0 { | ||
173 | status = "okay"; | ||
174 | }; | ||
175 | |||
176 | &gpio1 { | ||
177 | status = "okay"; | ||
178 | }; | ||
179 | |||
180 | &gpio2 { | ||
181 | status = "okay"; | ||
182 | }; | ||
183 | |||
184 | &gpio3 { | ||
185 | status = "okay"; | ||
18 | }; | 186 | }; |
diff --git a/include/dt-bindings/pinctrl/am43xx.h b/include/dt-bindings/pinctrl/am43xx.h new file mode 100644 index 000000000000..eb6c366adfba --- /dev/null +++ b/include/dt-bindings/pinctrl/am43xx.h | |||
@@ -0,0 +1,31 @@ | |||
1 | /* | ||
2 | * This header provides constants specific to AM43XX pinctrl bindings. | ||
3 | */ | ||
4 | |||
5 | #ifndef _DT_BINDINGS_PINCTRL_AM43XX_H | ||
6 | #define _DT_BINDINGS_PINCTRL_AM43XX_H | ||
7 | |||
8 | #define MUX_MODE0 0 | ||
9 | #define MUX_MODE1 1 | ||
10 | #define MUX_MODE2 2 | ||
11 | #define MUX_MODE3 3 | ||
12 | #define MUX_MODE4 4 | ||
13 | #define MUX_MODE5 5 | ||
14 | #define MUX_MODE6 6 | ||
15 | #define MUX_MODE7 7 | ||
16 | |||
17 | #define PULL_DISABLE (1 << 16) | ||
18 | #define PULL_UP (1 << 17) | ||
19 | #define INPUT_EN (1 << 18) | ||
20 | #define SLEWCTRL_FAST (1 << 19) | ||
21 | #define DS0_PULL_UP_DOWN_EN (1 << 27) | ||
22 | |||
23 | #define PIN_OUTPUT (PULL_DISABLE) | ||
24 | #define PIN_OUTPUT_PULLUP (PULL_UP) | ||
25 | #define PIN_OUTPUT_PULLDOWN 0 | ||
26 | #define PIN_INPUT (INPUT_EN | PULL_DISABLE) | ||
27 | #define PIN_INPUT_PULLUP (INPUT_EN | PULL_UP) | ||
28 | #define PIN_INPUT_PULLDOWN (INPUT_EN) | ||
29 | |||
30 | #endif | ||
31 | |||