aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pinctrl/mvebu/pinctrl-armada-38x.c')
-rw-r--r--drivers/pinctrl/mvebu/pinctrl-armada-38x.c120
1 files changed, 62 insertions, 58 deletions
diff --git a/drivers/pinctrl/mvebu/pinctrl-armada-38x.c b/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
index 83bbcc72be1f..6ec82c62dff7 100644
--- a/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
+++ b/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
@@ -94,56 +94,58 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
94 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 94 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
95 MPP_VAR_FUNCTION(1, "ge0", "rxd0", V_88F6810_PLUS), 95 MPP_VAR_FUNCTION(1, "ge0", "rxd0", V_88F6810_PLUS),
96 MPP_VAR_FUNCTION(2, "pcie0", "rstout", V_88F6810_PLUS), 96 MPP_VAR_FUNCTION(2, "pcie0", "rstout", V_88F6810_PLUS),
97 MPP_VAR_FUNCTION(3, "pcie1", "rstout", V_88F6820_PLUS),
98 MPP_VAR_FUNCTION(4, "spi0", "cs1", V_88F6810_PLUS), 97 MPP_VAR_FUNCTION(4, "spi0", "cs1", V_88F6810_PLUS),
99 MPP_VAR_FUNCTION(5, "dev", "ad14", V_88F6810_PLUS)), 98 MPP_VAR_FUNCTION(5, "dev", "ad14", V_88F6810_PLUS),
99 MPP_VAR_FUNCTION(6, "pcie3", "clkreq", V_88F6810_PLUS)),
100 MPP_MODE(13, 100 MPP_MODE(13,
101 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 101 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
102 MPP_VAR_FUNCTION(1, "ge0", "rxd1", V_88F6810_PLUS), 102 MPP_VAR_FUNCTION(1, "ge0", "rxd1", V_88F6810_PLUS),
103 MPP_VAR_FUNCTION(2, "pcie0", "clkreq", V_88F6810_PLUS), 103 MPP_VAR_FUNCTION(2, "pcie0", "clkreq", V_88F6810_PLUS),
104 MPP_VAR_FUNCTION(3, "pcie1", "clkreq", V_88F6820_PLUS), 104 MPP_VAR_FUNCTION(3, "pcie1", "clkreq", V_88F6820_PLUS),
105 MPP_VAR_FUNCTION(4, "spi0", "cs2", V_88F6810_PLUS), 105 MPP_VAR_FUNCTION(4, "spi0", "cs2", V_88F6810_PLUS),
106 MPP_VAR_FUNCTION(5, "dev", "ad15", V_88F6810_PLUS)), 106 MPP_VAR_FUNCTION(5, "dev", "ad15", V_88F6810_PLUS),
107 MPP_VAR_FUNCTION(6, "pcie2", "clkreq", V_88F6810_PLUS)),
107 MPP_MODE(14, 108 MPP_MODE(14,
108 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 109 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
109 MPP_VAR_FUNCTION(1, "ge0", "rxd2", V_88F6810_PLUS), 110 MPP_VAR_FUNCTION(1, "ge0", "rxd2", V_88F6810_PLUS),
110 MPP_VAR_FUNCTION(2, "ptp", "clk", V_88F6810_PLUS), 111 MPP_VAR_FUNCTION(2, "ptp", "clk", V_88F6810_PLUS),
111 MPP_VAR_FUNCTION(3, "m", "vtt_ctrl", V_88F6810_PLUS), 112 MPP_VAR_FUNCTION(3, "dram", "vttctrl", V_88F6810_PLUS),
112 MPP_VAR_FUNCTION(4, "spi0", "cs3", V_88F6810_PLUS), 113 MPP_VAR_FUNCTION(4, "spi0", "cs3", V_88F6810_PLUS),
113 MPP_VAR_FUNCTION(5, "dev", "wen1", V_88F6810_PLUS)), 114 MPP_VAR_FUNCTION(5, "dev", "we1", V_88F6810_PLUS),
115 MPP_VAR_FUNCTION(6, "pcie3", "clkreq", V_88F6810_PLUS)),
114 MPP_MODE(15, 116 MPP_MODE(15,
115 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 117 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
116 MPP_VAR_FUNCTION(1, "ge0", "rxd3", V_88F6810_PLUS), 118 MPP_VAR_FUNCTION(1, "ge0", "rxd3", V_88F6810_PLUS),
117 MPP_VAR_FUNCTION(2, "ge", "mdc slave", V_88F6810_PLUS), 119 MPP_VAR_FUNCTION(2, "ge", "mdc slave", V_88F6810_PLUS),
118 MPP_VAR_FUNCTION(3, "pcie0", "rstout", V_88F6810_PLUS), 120 MPP_VAR_FUNCTION(3, "pcie0", "rstout", V_88F6810_PLUS),
119 MPP_VAR_FUNCTION(4, "spi0", "mosi", V_88F6810_PLUS), 121 MPP_VAR_FUNCTION(4, "spi0", "mosi", V_88F6810_PLUS)),
120 MPP_VAR_FUNCTION(5, "pcie1", "rstout", V_88F6820_PLUS)),
121 MPP_MODE(16, 122 MPP_MODE(16,
122 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 123 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
123 MPP_VAR_FUNCTION(1, "ge0", "rxctl", V_88F6810_PLUS), 124 MPP_VAR_FUNCTION(1, "ge0", "rxctl", V_88F6810_PLUS),
124 MPP_VAR_FUNCTION(2, "ge", "mdio slave", V_88F6810_PLUS), 125 MPP_VAR_FUNCTION(2, "ge", "mdio slave", V_88F6810_PLUS),
125 MPP_VAR_FUNCTION(3, "m", "decc_err", V_88F6810_PLUS), 126 MPP_VAR_FUNCTION(3, "dram", "deccerr", V_88F6810_PLUS),
126 MPP_VAR_FUNCTION(4, "spi0", "miso", V_88F6810_PLUS), 127 MPP_VAR_FUNCTION(4, "spi0", "miso", V_88F6810_PLUS),
127 MPP_VAR_FUNCTION(5, "pcie0", "clkreq", V_88F6810_PLUS)), 128 MPP_VAR_FUNCTION(5, "pcie0", "clkreq", V_88F6810_PLUS),
129 MPP_VAR_FUNCTION(6, "pcie1", "clkreq", V_88F6820_PLUS)),
128 MPP_MODE(17, 130 MPP_MODE(17,
129 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 131 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
130 MPP_VAR_FUNCTION(1, "ge0", "rxclk", V_88F6810_PLUS), 132 MPP_VAR_FUNCTION(1, "ge0", "rxclk", V_88F6810_PLUS),
131 MPP_VAR_FUNCTION(2, "ptp", "clk", V_88F6810_PLUS), 133 MPP_VAR_FUNCTION(2, "ptp", "clk", V_88F6810_PLUS),
132 MPP_VAR_FUNCTION(3, "ua1", "rxd", V_88F6810_PLUS), 134 MPP_VAR_FUNCTION(3, "ua1", "rxd", V_88F6810_PLUS),
133 MPP_VAR_FUNCTION(4, "spi0", "sck", V_88F6810_PLUS), 135 MPP_VAR_FUNCTION(4, "spi0", "sck", V_88F6810_PLUS),
134 MPP_VAR_FUNCTION(5, "sata1", "prsnt", V_88F6810_PLUS)), 136 MPP_VAR_FUNCTION(5, "sata1", "prsnt", V_88F6810_PLUS),
137 MPP_VAR_FUNCTION(6, "sata0", "prsnt", V_88F6810_PLUS)),
135 MPP_MODE(18, 138 MPP_MODE(18,
136 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 139 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
137 MPP_VAR_FUNCTION(1, "ge0", "rxerr", V_88F6810_PLUS), 140 MPP_VAR_FUNCTION(1, "ge0", "rxerr", V_88F6810_PLUS),
138 MPP_VAR_FUNCTION(2, "ptp", "trig_gen", V_88F6810_PLUS), 141 MPP_VAR_FUNCTION(2, "ptp", "trig", V_88F6810_PLUS),
139 MPP_VAR_FUNCTION(3, "ua1", "txd", V_88F6810_PLUS), 142 MPP_VAR_FUNCTION(3, "ua1", "txd", V_88F6810_PLUS),
140 MPP_VAR_FUNCTION(4, "spi0", "cs0", V_88F6810_PLUS), 143 MPP_VAR_FUNCTION(4, "spi0", "cs0", V_88F6810_PLUS)),
141 MPP_VAR_FUNCTION(5, "pcie1", "rstout", V_88F6820_PLUS)),
142 MPP_MODE(19, 144 MPP_MODE(19,
143 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 145 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
144 MPP_VAR_FUNCTION(1, "ge0", "col", V_88F6810_PLUS), 146 MPP_VAR_FUNCTION(1, "ge0", "col", V_88F6810_PLUS),
145 MPP_VAR_FUNCTION(2, "ptp", "event_req", V_88F6810_PLUS), 147 MPP_VAR_FUNCTION(2, "ptp", "evreq", V_88F6810_PLUS),
146 MPP_VAR_FUNCTION(3, "pcie0", "clkreq", V_88F6810_PLUS), 148 MPP_VAR_FUNCTION(3, "ge0", "txerr", V_88F6810_PLUS),
147 MPP_VAR_FUNCTION(4, "sata1", "prsnt", V_88F6810_PLUS), 149 MPP_VAR_FUNCTION(4, "sata1", "prsnt", V_88F6810_PLUS),
148 MPP_VAR_FUNCTION(5, "ua0", "cts", V_88F6810_PLUS), 150 MPP_VAR_FUNCTION(5, "ua0", "cts", V_88F6810_PLUS),
149 MPP_VAR_FUNCTION(6, "ua1", "rxd", V_88F6810_PLUS)), 151 MPP_VAR_FUNCTION(6, "ua1", "rxd", V_88F6810_PLUS)),
@@ -151,7 +153,6 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
151 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 153 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
152 MPP_VAR_FUNCTION(1, "ge0", "txclk", V_88F6810_PLUS), 154 MPP_VAR_FUNCTION(1, "ge0", "txclk", V_88F6810_PLUS),
153 MPP_VAR_FUNCTION(2, "ptp", "clk", V_88F6810_PLUS), 155 MPP_VAR_FUNCTION(2, "ptp", "clk", V_88F6810_PLUS),
154 MPP_VAR_FUNCTION(3, "pcie1", "rstout", V_88F6820_PLUS),
155 MPP_VAR_FUNCTION(4, "sata0", "prsnt", V_88F6810_PLUS), 156 MPP_VAR_FUNCTION(4, "sata0", "prsnt", V_88F6810_PLUS),
156 MPP_VAR_FUNCTION(5, "ua0", "rts", V_88F6810_PLUS), 157 MPP_VAR_FUNCTION(5, "ua0", "rts", V_88F6810_PLUS),
157 MPP_VAR_FUNCTION(6, "ua1", "txd", V_88F6810_PLUS)), 158 MPP_VAR_FUNCTION(6, "ua1", "txd", V_88F6810_PLUS)),
@@ -161,7 +162,8 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
161 MPP_VAR_FUNCTION(2, "ge1", "rxd0", V_88F6810_PLUS), 162 MPP_VAR_FUNCTION(2, "ge1", "rxd0", V_88F6810_PLUS),
162 MPP_VAR_FUNCTION(3, "sata0", "prsnt", V_88F6810_PLUS), 163 MPP_VAR_FUNCTION(3, "sata0", "prsnt", V_88F6810_PLUS),
163 MPP_VAR_FUNCTION(4, "sd0", "cmd", V_88F6810_PLUS), 164 MPP_VAR_FUNCTION(4, "sd0", "cmd", V_88F6810_PLUS),
164 MPP_VAR_FUNCTION(5, "dev", "bootcs", V_88F6810_PLUS)), 165 MPP_VAR_FUNCTION(5, "dev", "bootcs", V_88F6810_PLUS),
166 MPP_VAR_FUNCTION(6, "sata1", "prsnt", V_88F6810_PLUS)),
165 MPP_MODE(22, 167 MPP_MODE(22,
166 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 168 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
167 MPP_VAR_FUNCTION(1, "spi0", "mosi", V_88F6810_PLUS), 169 MPP_VAR_FUNCTION(1, "spi0", "mosi", V_88F6810_PLUS),
@@ -209,7 +211,7 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
209 MPP_MODE(30, 211 MPP_MODE(30,
210 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 212 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
211 MPP_VAR_FUNCTION(2, "ge1", "txd2", V_88F6810_PLUS), 213 MPP_VAR_FUNCTION(2, "ge1", "txd2", V_88F6810_PLUS),
212 MPP_VAR_FUNCTION(5, "dev", "oen", V_88F6810_PLUS)), 214 MPP_VAR_FUNCTION(5, "dev", "oe", V_88F6810_PLUS)),
213 MPP_MODE(31, 215 MPP_MODE(31,
214 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 216 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
215 MPP_VAR_FUNCTION(2, "ge1", "txd3", V_88F6810_PLUS), 217 MPP_VAR_FUNCTION(2, "ge1", "txd3", V_88F6810_PLUS),
@@ -217,10 +219,10 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
217 MPP_MODE(32, 219 MPP_MODE(32,
218 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 220 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
219 MPP_VAR_FUNCTION(2, "ge1", "txctl", V_88F6810_PLUS), 221 MPP_VAR_FUNCTION(2, "ge1", "txctl", V_88F6810_PLUS),
220 MPP_VAR_FUNCTION(5, "dev", "wen0", V_88F6810_PLUS)), 222 MPP_VAR_FUNCTION(5, "dev", "we0", V_88F6810_PLUS)),
221 MPP_MODE(33, 223 MPP_MODE(33,
222 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 224 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
223 MPP_VAR_FUNCTION(1, "m", "decc_err", V_88F6810_PLUS), 225 MPP_VAR_FUNCTION(1, "dram", "deccerr", V_88F6810_PLUS),
224 MPP_VAR_FUNCTION(5, "dev", "ad3", V_88F6810_PLUS)), 226 MPP_VAR_FUNCTION(5, "dev", "ad3", V_88F6810_PLUS)),
225 MPP_MODE(34, 227 MPP_MODE(34,
226 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 228 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
@@ -231,7 +233,7 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
231 MPP_VAR_FUNCTION(5, "dev", "a1", V_88F6810_PLUS)), 233 MPP_VAR_FUNCTION(5, "dev", "a1", V_88F6810_PLUS)),
232 MPP_MODE(36, 234 MPP_MODE(36,
233 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 235 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
234 MPP_VAR_FUNCTION(1, "ptp", "trig_gen", V_88F6810_PLUS), 236 MPP_VAR_FUNCTION(1, "ptp", "trig", V_88F6810_PLUS),
235 MPP_VAR_FUNCTION(5, "dev", "a0", V_88F6810_PLUS)), 237 MPP_VAR_FUNCTION(5, "dev", "a0", V_88F6810_PLUS)),
236 MPP_MODE(37, 238 MPP_MODE(37,
237 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 239 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
@@ -241,7 +243,7 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
241 MPP_VAR_FUNCTION(5, "dev", "ad8", V_88F6810_PLUS)), 243 MPP_VAR_FUNCTION(5, "dev", "ad8", V_88F6810_PLUS)),
242 MPP_MODE(38, 244 MPP_MODE(38,
243 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 245 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
244 MPP_VAR_FUNCTION(1, "ptp", "event_req", V_88F6810_PLUS), 246 MPP_VAR_FUNCTION(1, "ptp", "evreq", V_88F6810_PLUS),
245 MPP_VAR_FUNCTION(2, "ge1", "rxd1", V_88F6810_PLUS), 247 MPP_VAR_FUNCTION(2, "ge1", "rxd1", V_88F6810_PLUS),
246 MPP_VAR_FUNCTION(3, "ref", "clk_out0", V_88F6810_PLUS), 248 MPP_VAR_FUNCTION(3, "ref", "clk_out0", V_88F6810_PLUS),
247 MPP_VAR_FUNCTION(4, "sd0", "d0", V_88F6810_PLUS), 249 MPP_VAR_FUNCTION(4, "sd0", "d0", V_88F6810_PLUS),
@@ -266,7 +268,8 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
266 MPP_VAR_FUNCTION(2, "ge1", "rxctl", V_88F6810_PLUS), 268 MPP_VAR_FUNCTION(2, "ge1", "rxctl", V_88F6810_PLUS),
267 MPP_VAR_FUNCTION(3, "ua0", "cts", V_88F6810_PLUS), 269 MPP_VAR_FUNCTION(3, "ua0", "cts", V_88F6810_PLUS),
268 MPP_VAR_FUNCTION(4, "spi1", "cs3", V_88F6810_PLUS), 270 MPP_VAR_FUNCTION(4, "spi1", "cs3", V_88F6810_PLUS),
269 MPP_VAR_FUNCTION(5, "dev", "burst/last", V_88F6810_PLUS)), 271 MPP_VAR_FUNCTION(5, "dev", "burst/last", V_88F6810_PLUS),
272 MPP_VAR_FUNCTION(6, "nand", "rb0", V_88F6810_PLUS)),
270 MPP_MODE(42, 273 MPP_MODE(42,
271 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 274 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
272 MPP_VAR_FUNCTION(1, "ua1", "txd", V_88F6810_PLUS), 275 MPP_VAR_FUNCTION(1, "ua1", "txd", V_88F6810_PLUS),
@@ -275,84 +278,82 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
275 MPP_MODE(43, 278 MPP_MODE(43,
276 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 279 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
277 MPP_VAR_FUNCTION(1, "pcie0", "clkreq", V_88F6810_PLUS), 280 MPP_VAR_FUNCTION(1, "pcie0", "clkreq", V_88F6810_PLUS),
278 MPP_VAR_FUNCTION(2, "m", "vtt_ctrl", V_88F6810_PLUS), 281 MPP_VAR_FUNCTION(2, "dram", "vttctrl", V_88F6810_PLUS),
279 MPP_VAR_FUNCTION(3, "m", "decc_err", V_88F6810_PLUS), 282 MPP_VAR_FUNCTION(3, "dram", "deccerr", V_88F6810_PLUS),
280 MPP_VAR_FUNCTION(4, "pcie0", "rstout", V_88F6810_PLUS), 283 MPP_VAR_FUNCTION(4, "spi1", "cs2", V_88F6810_PLUS),
281 MPP_VAR_FUNCTION(5, "dev", "clkout", V_88F6810_PLUS)), 284 MPP_VAR_FUNCTION(5, "dev", "clkout", V_88F6810_PLUS),
285 MPP_VAR_FUNCTION(6, "nand", "rb1", V_88F6810_PLUS)),
282 MPP_MODE(44, 286 MPP_MODE(44,
283 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 287 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
284 MPP_VAR_FUNCTION(1, "sata0", "prsnt", V_88F6810_PLUS), 288 MPP_VAR_FUNCTION(1, "sata0", "prsnt", V_88F6810_PLUS),
285 MPP_VAR_FUNCTION(2, "sata1", "prsnt", V_88F6810_PLUS), 289 MPP_VAR_FUNCTION(2, "sata1", "prsnt", V_88F6810_PLUS),
286 MPP_VAR_FUNCTION(3, "sata2", "prsnt", V_88F6828), 290 MPP_VAR_FUNCTION(3, "sata2", "prsnt", V_88F6828),
287 MPP_VAR_FUNCTION(4, "sata3", "prsnt", V_88F6828), 291 MPP_VAR_FUNCTION(4, "sata3", "prsnt", V_88F6828)),
288 MPP_VAR_FUNCTION(5, "pcie0", "rstout", V_88F6810_PLUS)),
289 MPP_MODE(45, 292 MPP_MODE(45,
290 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 293 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
291 MPP_VAR_FUNCTION(1, "ref", "clk_out0", V_88F6810_PLUS), 294 MPP_VAR_FUNCTION(1, "ref", "clk_out0", V_88F6810_PLUS),
292 MPP_VAR_FUNCTION(2, "pcie0", "rstout", V_88F6810_PLUS), 295 MPP_VAR_FUNCTION(2, "pcie0", "rstout", V_88F6810_PLUS),
293 MPP_VAR_FUNCTION(3, "pcie1", "rstout", V_88F6820_PLUS), 296 MPP_VAR_FUNCTION(6, "ua1", "rxd", V_88F6810_PLUS)),
294 MPP_VAR_FUNCTION(4, "pcie2", "rstout", V_88F6810_PLUS),
295 MPP_VAR_FUNCTION(5, "pcie3", "rstout", V_88F6810_PLUS)),
296 MPP_MODE(46, 297 MPP_MODE(46,
297 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 298 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
298 MPP_VAR_FUNCTION(1, "ref", "clk_out1", V_88F6810_PLUS), 299 MPP_VAR_FUNCTION(1, "ref", "clk_out1", V_88F6810_PLUS),
299 MPP_VAR_FUNCTION(2, "pcie0", "rstout", V_88F6810_PLUS), 300 MPP_VAR_FUNCTION(2, "pcie0", "rstout", V_88F6810_PLUS),
300 MPP_VAR_FUNCTION(3, "pcie1", "rstout", V_88F6820_PLUS), 301 MPP_VAR_FUNCTION(6, "ua1", "txd", V_88F6810_PLUS)),
301 MPP_VAR_FUNCTION(4, "pcie2", "rstout", V_88F6810_PLUS),
302 MPP_VAR_FUNCTION(5, "pcie3", "rstout", V_88F6810_PLUS)),
303 MPP_MODE(47, 302 MPP_MODE(47,
304 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 303 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
305 MPP_VAR_FUNCTION(1, "sata0", "prsnt", V_88F6810_PLUS), 304 MPP_VAR_FUNCTION(1, "sata0", "prsnt", V_88F6810_PLUS),
306 MPP_VAR_FUNCTION(2, "sata1", "prsnt", V_88F6810_PLUS), 305 MPP_VAR_FUNCTION(2, "sata1", "prsnt", V_88F6810_PLUS),
307 MPP_VAR_FUNCTION(3, "sata2", "prsnt", V_88F6828), 306 MPP_VAR_FUNCTION(3, "sata2", "prsnt", V_88F6828),
308 MPP_VAR_FUNCTION(4, "spi1", "cs2", V_88F6810_PLUS),
309 MPP_VAR_FUNCTION(5, "sata3", "prsnt", V_88F6828)), 307 MPP_VAR_FUNCTION(5, "sata3", "prsnt", V_88F6828)),
310 MPP_MODE(48, 308 MPP_MODE(48,
311 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 309 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
312 MPP_VAR_FUNCTION(1, "sata0", "prsnt", V_88F6810_PLUS), 310 MPP_VAR_FUNCTION(1, "sata0", "prsnt", V_88F6810_PLUS),
313 MPP_VAR_FUNCTION(2, "m", "vtt_ctrl", V_88F6810_PLUS), 311 MPP_VAR_FUNCTION(2, "dram", "vttctrl", V_88F6810_PLUS),
314 MPP_VAR_FUNCTION(3, "tdm2c", "pclk", V_88F6810_PLUS), 312 MPP_VAR_FUNCTION(3, "tdm", "pclk", V_88F6810_PLUS),
315 MPP_VAR_FUNCTION(4, "audio", "mclk", V_88F6810_PLUS), 313 MPP_VAR_FUNCTION(4, "audio", "mclk", V_88F6810_PLUS),
316 MPP_VAR_FUNCTION(5, "sd0", "d4", V_88F6810_PLUS)), 314 MPP_VAR_FUNCTION(5, "sd0", "d4", V_88F6810_PLUS),
315 MPP_VAR_FUNCTION(6, "pcie0", "clkreq", V_88F6810_PLUS)),
317 MPP_MODE(49, 316 MPP_MODE(49,
318 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 317 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
319 MPP_VAR_FUNCTION(1, "sata2", "prsnt", V_88F6828), 318 MPP_VAR_FUNCTION(1, "sata2", "prsnt", V_88F6828),
320 MPP_VAR_FUNCTION(2, "sata3", "prsnt", V_88F6828), 319 MPP_VAR_FUNCTION(2, "sata3", "prsnt", V_88F6828),
321 MPP_VAR_FUNCTION(3, "tdm2c", "fsync", V_88F6810_PLUS), 320 MPP_VAR_FUNCTION(3, "tdm", "fsync", V_88F6810_PLUS),
322 MPP_VAR_FUNCTION(4, "audio", "lrclk", V_88F6810_PLUS), 321 MPP_VAR_FUNCTION(4, "audio", "lrclk", V_88F6810_PLUS),
323 MPP_VAR_FUNCTION(5, "sd0", "d5", V_88F6810_PLUS)), 322 MPP_VAR_FUNCTION(5, "sd0", "d5", V_88F6810_PLUS),
323 MPP_VAR_FUNCTION(6, "pcie1", "clkreq", V_88F6820_PLUS)),
324 MPP_MODE(50, 324 MPP_MODE(50,
325 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 325 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
326 MPP_VAR_FUNCTION(1, "pcie0", "rstout", V_88F6810_PLUS), 326 MPP_VAR_FUNCTION(1, "pcie0", "rstout", V_88F6810_PLUS),
327 MPP_VAR_FUNCTION(2, "pcie1", "rstout", V_88F6820_PLUS), 327 MPP_VAR_FUNCTION(3, "tdm", "drx", V_88F6810_PLUS),
328 MPP_VAR_FUNCTION(3, "tdm2c", "drx", V_88F6810_PLUS),
329 MPP_VAR_FUNCTION(4, "audio", "extclk", V_88F6810_PLUS), 328 MPP_VAR_FUNCTION(4, "audio", "extclk", V_88F6810_PLUS),
330 MPP_VAR_FUNCTION(5, "sd0", "cmd", V_88F6810_PLUS)), 329 MPP_VAR_FUNCTION(5, "sd0", "cmd", V_88F6810_PLUS)),
331 MPP_MODE(51, 330 MPP_MODE(51,
332 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 331 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
333 MPP_VAR_FUNCTION(3, "tdm2c", "dtx", V_88F6810_PLUS), 332 MPP_VAR_FUNCTION(3, "tdm", "dtx", V_88F6810_PLUS),
334 MPP_VAR_FUNCTION(4, "audio", "sdo", V_88F6810_PLUS), 333 MPP_VAR_FUNCTION(4, "audio", "sdo", V_88F6810_PLUS),
335 MPP_VAR_FUNCTION(5, "m", "decc_err", V_88F6810_PLUS)), 334 MPP_VAR_FUNCTION(5, "dram", "deccerr", V_88F6810_PLUS),
335 MPP_VAR_FUNCTION(6, "ptp", "trig", V_88F6810_PLUS)),
336 MPP_MODE(52, 336 MPP_MODE(52,
337 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 337 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
338 MPP_VAR_FUNCTION(1, "pcie0", "rstout", V_88F6810_PLUS), 338 MPP_VAR_FUNCTION(1, "pcie0", "rstout", V_88F6810_PLUS),
339 MPP_VAR_FUNCTION(2, "pcie1", "rstout", V_88F6820_PLUS), 339 MPP_VAR_FUNCTION(3, "tdm", "int", V_88F6810_PLUS),
340 MPP_VAR_FUNCTION(3, "tdm2c", "intn", V_88F6810_PLUS),
341 MPP_VAR_FUNCTION(4, "audio", "sdi", V_88F6810_PLUS), 340 MPP_VAR_FUNCTION(4, "audio", "sdi", V_88F6810_PLUS),
342 MPP_VAR_FUNCTION(5, "sd0", "d6", V_88F6810_PLUS)), 341 MPP_VAR_FUNCTION(5, "sd0", "d6", V_88F6810_PLUS),
342 MPP_VAR_FUNCTION(6, "ptp", "clk", V_88F6810_PLUS)),
343 MPP_MODE(53, 343 MPP_MODE(53,
344 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 344 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
345 MPP_VAR_FUNCTION(1, "sata1", "prsnt", V_88F6810_PLUS), 345 MPP_VAR_FUNCTION(1, "sata1", "prsnt", V_88F6810_PLUS),
346 MPP_VAR_FUNCTION(2, "sata0", "prsnt", V_88F6810_PLUS), 346 MPP_VAR_FUNCTION(2, "sata0", "prsnt", V_88F6810_PLUS),
347 MPP_VAR_FUNCTION(3, "tdm2c", "rstn", V_88F6810_PLUS), 347 MPP_VAR_FUNCTION(3, "tdm", "rst", V_88F6810_PLUS),
348 MPP_VAR_FUNCTION(4, "audio", "bclk", V_88F6810_PLUS), 348 MPP_VAR_FUNCTION(4, "audio", "bclk", V_88F6810_PLUS),
349 MPP_VAR_FUNCTION(5, "sd0", "d7", V_88F6810_PLUS)), 349 MPP_VAR_FUNCTION(5, "sd0", "d7", V_88F6810_PLUS),
350 MPP_VAR_FUNCTION(6, "ptp", "evreq", V_88F6810_PLUS)),
350 MPP_MODE(54, 351 MPP_MODE(54,
351 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 352 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
352 MPP_VAR_FUNCTION(1, "sata0", "prsnt", V_88F6810_PLUS), 353 MPP_VAR_FUNCTION(1, "sata0", "prsnt", V_88F6810_PLUS),
353 MPP_VAR_FUNCTION(2, "sata1", "prsnt", V_88F6810_PLUS), 354 MPP_VAR_FUNCTION(2, "sata1", "prsnt", V_88F6810_PLUS),
354 MPP_VAR_FUNCTION(3, "pcie0", "rstout", V_88F6810_PLUS), 355 MPP_VAR_FUNCTION(3, "pcie0", "rstout", V_88F6810_PLUS),
355 MPP_VAR_FUNCTION(4, "pcie1", "rstout", V_88F6820_PLUS), 356 MPP_VAR_FUNCTION(4, "ge0", "txerr", V_88F6810_PLUS),
356 MPP_VAR_FUNCTION(5, "sd0", "d3", V_88F6810_PLUS)), 357 MPP_VAR_FUNCTION(5, "sd0", "d3", V_88F6810_PLUS)),
357 MPP_MODE(55, 358 MPP_MODE(55,
358 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 359 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
@@ -360,29 +361,32 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
360 MPP_VAR_FUNCTION(2, "ge", "mdio", V_88F6810_PLUS), 361 MPP_VAR_FUNCTION(2, "ge", "mdio", V_88F6810_PLUS),
361 MPP_VAR_FUNCTION(3, "pcie1", "clkreq", V_88F6820_PLUS), 362 MPP_VAR_FUNCTION(3, "pcie1", "clkreq", V_88F6820_PLUS),
362 MPP_VAR_FUNCTION(4, "spi1", "cs1", V_88F6810_PLUS), 363 MPP_VAR_FUNCTION(4, "spi1", "cs1", V_88F6810_PLUS),
363 MPP_VAR_FUNCTION(5, "sd0", "d0", V_88F6810_PLUS)), 364 MPP_VAR_FUNCTION(5, "sd0", "d0", V_88F6810_PLUS),
365 MPP_VAR_FUNCTION(6, "ua1", "rxd", V_88F6810_PLUS)),
364 MPP_MODE(56, 366 MPP_MODE(56,
365 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 367 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
366 MPP_VAR_FUNCTION(1, "ua1", "rts", V_88F6810_PLUS), 368 MPP_VAR_FUNCTION(1, "ua1", "rts", V_88F6810_PLUS),
367 MPP_VAR_FUNCTION(2, "ge", "mdc", V_88F6810_PLUS), 369 MPP_VAR_FUNCTION(2, "ge", "mdc", V_88F6810_PLUS),
368 MPP_VAR_FUNCTION(3, "m", "decc_err", V_88F6810_PLUS), 370 MPP_VAR_FUNCTION(3, "dram", "deccerr", V_88F6810_PLUS),
369 MPP_VAR_FUNCTION(4, "spi1", "mosi", V_88F6810_PLUS)), 371 MPP_VAR_FUNCTION(4, "spi1", "mosi", V_88F6810_PLUS),
372 MPP_VAR_FUNCTION(6, "ua1", "txd", V_88F6810_PLUS)),
370 MPP_MODE(57, 373 MPP_MODE(57,
371 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 374 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
372 MPP_VAR_FUNCTION(4, "spi1", "sck", V_88F6810_PLUS), 375 MPP_VAR_FUNCTION(4, "spi1", "sck", V_88F6810_PLUS),
373 MPP_VAR_FUNCTION(5, "sd0", "clk", V_88F6810_PLUS)), 376 MPP_VAR_FUNCTION(5, "sd0", "clk", V_88F6810_PLUS),
377 MPP_VAR_FUNCTION(6, "ua1", "txd", V_88F6810_PLUS)),
374 MPP_MODE(58, 378 MPP_MODE(58,
375 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 379 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
376 MPP_VAR_FUNCTION(1, "pcie1", "clkreq", V_88F6820_PLUS), 380 MPP_VAR_FUNCTION(1, "pcie1", "clkreq", V_88F6820_PLUS),
377 MPP_VAR_FUNCTION(2, "i2c1", "sck", V_88F6810_PLUS), 381 MPP_VAR_FUNCTION(2, "i2c1", "sck", V_88F6810_PLUS),
378 MPP_VAR_FUNCTION(3, "pcie2", "clkreq", V_88F6810_PLUS), 382 MPP_VAR_FUNCTION(3, "pcie2", "clkreq", V_88F6810_PLUS),
379 MPP_VAR_FUNCTION(4, "spi1", "miso", V_88F6810_PLUS), 383 MPP_VAR_FUNCTION(4, "spi1", "miso", V_88F6810_PLUS),
380 MPP_VAR_FUNCTION(5, "sd0", "d1", V_88F6810_PLUS)), 384 MPP_VAR_FUNCTION(5, "sd0", "d1", V_88F6810_PLUS),
385 MPP_VAR_FUNCTION(6, "ua1", "rxd", V_88F6810_PLUS)),
381 MPP_MODE(59, 386 MPP_MODE(59,
382 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS), 387 MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
383 MPP_VAR_FUNCTION(1, "pcie0", "rstout", V_88F6810_PLUS), 388 MPP_VAR_FUNCTION(1, "pcie0", "rstout", V_88F6810_PLUS),
384 MPP_VAR_FUNCTION(2, "i2c1", "sda", V_88F6810_PLUS), 389 MPP_VAR_FUNCTION(2, "i2c1", "sda", V_88F6810_PLUS),
385 MPP_VAR_FUNCTION(3, "pcie1", "rstout", V_88F6820_PLUS),
386 MPP_VAR_FUNCTION(4, "spi1", "cs0", V_88F6810_PLUS), 390 MPP_VAR_FUNCTION(4, "spi1", "cs0", V_88F6810_PLUS),
387 MPP_VAR_FUNCTION(5, "sd0", "d2", V_88F6810_PLUS)), 391 MPP_VAR_FUNCTION(5, "sd0", "d2", V_88F6810_PLUS)),
388}; 392};
@@ -411,7 +415,7 @@ static struct mvebu_mpp_ctrl armada_38x_mpp_controls[] = {
411 415
412static struct pinctrl_gpio_range armada_38x_mpp_gpio_ranges[] = { 416static struct pinctrl_gpio_range armada_38x_mpp_gpio_ranges[] = {
413 MPP_GPIO_RANGE(0, 0, 0, 32), 417 MPP_GPIO_RANGE(0, 0, 0, 32),
414 MPP_GPIO_RANGE(1, 32, 32, 27), 418 MPP_GPIO_RANGE(1, 32, 32, 28),
415}; 419};
416 420
417static int armada_38x_pinctrl_probe(struct platform_device *pdev) 421static int armada_38x_pinctrl_probe(struct platform_device *pdev)