]> git.ipfire.org Git - people/ms/u-boot.git/blame - arch/arm/include/asm/arch-rockchip/grf_rk3368.h
rockchip: rk3368: grf: use shifted-constants
[people/ms/u-boot.git] / arch / arm / include / asm / arch-rockchip / grf_rk3368.h
CommitLineData
c1828cf7
PT
1/*
2 * (C) Copyright 2016 Rockchip Electronics Co., Ltd
3 * (C) Copyright 2017 Theobroma Systems Design und Consulting GmbH
27600a58
AY
4 *
5 * SPDX-License-Identifier: GPL-2.0+
6 */
7#ifndef _ASM_ARCH_GRF_RK3368_H
8#define _ASM_ARCH_GRF_RK3368_H
9
10#include <common.h>
11
12struct rk3368_grf {
13 u32 gpio1a_iomux;
14 u32 gpio1b_iomux;
15 u32 gpio1c_iomux;
16 u32 gpio1d_iomux;
17 u32 gpio2a_iomux;
18 u32 gpio2b_iomux;
19 u32 gpio2c_iomux;
20 u32 gpio2d_iomux;
21 u32 gpio3a_iomux;
22 u32 gpio3b_iomux;
23 u32 gpio3c_iomux;
24 u32 gpio3d_iomux;
25 u32 reserved[0x34];
26 u32 gpio1a_pull;
27 u32 gpio1b_pull;
28 u32 gpio1c_pull;
29 u32 gpio1d_pull;
30 u32 gpio2a_pull;
31 u32 gpio2b_pull;
32 u32 gpio2c_pull;
33 u32 gpio2d_pull;
34 u32 gpio3a_pull;
35 u32 gpio3b_pull;
36 u32 gpio3c_pull;
37 u32 gpio3d_pull;
38 u32 reserved1[0x34];
39 u32 gpio1a_drv;
40 u32 gpio1b_drv;
41 u32 gpio1c_drv;
42 u32 gpio1d_drv;
43 u32 gpio2a_drv;
44 u32 gpio2b_drv;
45 u32 gpio2c_drv;
46 u32 gpio2d_drv;
47 u32 gpio3a_drv;
48 u32 gpio3b_drv;
49 u32 gpio3c_drv;
50 u32 gpio3d_drv;
51 u32 reserved2[0x34];
52 u32 gpio1l_sr;
53 u32 gpio1h_sr;
54 u32 gpio2l_sr;
55 u32 gpio2h_sr;
56 u32 gpio3l_sr;
57 u32 gpio3h_sr;
58 u32 reserved3[0x1a];
59 u32 gpio_smt;
60 u32 reserved4[0x1f];
61 u32 soc_con0;
62 u32 soc_con1;
63 u32 soc_con2;
64 u32 soc_con3;
65 u32 soc_con4;
66 u32 soc_con5;
67 u32 soc_con6;
68 u32 soc_con7;
69 u32 soc_con8;
70 u32 soc_con9;
71 u32 soc_con10;
72 u32 soc_con11;
73 u32 soc_con12;
74 u32 soc_con13;
75 u32 soc_con14;
76 u32 soc_con15;
77 u32 soc_con16;
78 u32 soc_con17;
79};
80check_member(rk3368_grf, soc_con17, 0x444);
81
82struct rk3368_pmu_grf {
83 u32 gpio0a_iomux;
84 u32 gpio0b_iomux;
85 u32 gpio0c_iomux;
86 u32 gpio0d_iomux;
87 u32 gpio0a_pull;
88 u32 gpio0b_pull;
89 u32 gpio0c_pull;
90 u32 gpio0d_pull;
91 u32 gpio0a_drv;
92 u32 gpio0b_drv;
93 u32 gpio0c_drv;
94 u32 gpio0d_drv;
95 u32 gpio0l_sr;
96 u32 gpio0h_sr;
525a8c8f 97 u32 reserved[0x72];
cc89369f 98 u32 os_reg[4];
27600a58 99};
525a8c8f
PT
100check_member(rk3368_pmu_grf, gpio0h_sr, 0x34);
101check_member(rk3368_pmu_grf, os_reg[0], 0x200);
27600a58
AY
102
103/*GRF_GPIO0C_IOMUX*/
104enum {
c1828cf7
PT
105 GPIO0C7_SHIFT = 14,
106 GPIO0C7_MASK = GENMASK(GPIO0C7_SHIFT + 1, GPIO0C7_SHIFT),
107 GPIO0C7_GPIO = 0,
108 GPIO0C7_LCDC_D19 = (1 << GPIO0C7_SHIFT),
109 GPIO0C7_TRACE_D9 = (2 << GPIO0C7_SHIFT),
110 GPIO0C7_UART1_RTSN = (3 << GPIO0C7_SHIFT),
27600a58
AY
111
112 GPIO0C6_SHIFT = 12,
c1828cf7 113 GPIO0C6_MASK = GENMASK(GPIO0C6_SHIFT + 1, GPIO0C6_SHIFT),
27600a58 114 GPIO0C6_GPIO = 0,
c1828cf7
PT
115 GPIO0C6_LCDC_D18 = (1 << GPIO0C6_SHIFT),
116 GPIO0C6_TRACE_D8 = (2 << GPIO0C6_SHIFT),
117 GPIO0C6_UART1_CTSN = (3 << GPIO0C6_SHIFT),
27600a58
AY
118
119 GPIO0C5_SHIFT = 10,
c1828cf7 120 GPIO0C5_MASK = GENMASK(GPIO0C5_SHIFT + 1, GPIO0C5_SHIFT),
27600a58 121 GPIO0C5_GPIO = 0,
c1828cf7
PT
122 GPIO0C5_LCDC_D17 = (1 << GPIO0C5_SHIFT),
123 GPIO0C5_TRACE_D7 = (2 << GPIO0C5_SHIFT),
124 GPIO0C5_UART1_SOUT = (3 << GPIO0C5_SHIFT),
27600a58
AY
125
126 GPIO0C4_SHIFT = 8,
c1828cf7 127 GPIO0C4_MASK = GENMASK(GPIO0C4_SHIFT + 1, GPIO0C4_SHIFT),
27600a58 128 GPIO0C4_GPIO = 0,
c1828cf7
PT
129 GPIO0C4_LCDC_D16 = (1 << GPIO0C4_SHIFT),
130 GPIO0C4_TRACE_D6 = (2 << GPIO0C4_SHIFT),
131 GPIO0C4_UART1_SIN = (3 << GPIO0C4_SHIFT),
27600a58
AY
132
133 GPIO0C3_SHIFT = 6,
c1828cf7 134 GPIO0C3_MASK = GENMASK(GPIO0C3_SHIFT + 1, GPIO0C3_SHIFT),
27600a58 135 GPIO0C3_GPIO = 0,
c1828cf7
PT
136 GPIO0C3_LCDC_D15 = (1 << GPIO0C3_SHIFT),
137 GPIO0C3_TRACE_D5 = (2 << GPIO0C3_SHIFT),
138 GPIO0C3_MCU_JTAG_TDO = (3 << GPIO0C3_SHIFT),
27600a58
AY
139
140 GPIO0C2_SHIFT = 4,
c1828cf7 141 GPIO0C2_MASK = GENMASK(GPIO0C2_SHIFT + 1, GPIO0C2_SHIFT),
27600a58 142 GPIO0C2_GPIO = 0,
c1828cf7
PT
143 GPIO0C2_LCDC_D14 = (1 << GPIO0C2_SHIFT),
144 GPIO0C2_TRACE_D4 = (2 << GPIO0C2_SHIFT),
145 GPIO0C2_MCU_JTAG_TDI = (3 << GPIO0C2_SHIFT),
27600a58
AY
146
147 GPIO0C1_SHIFT = 2,
c1828cf7 148 GPIO0C1_MASK = GENMASK(GPIO0C1_SHIFT + 1, GPIO0C1_SHIFT),
27600a58 149 GPIO0C1_GPIO = 0,
c1828cf7
PT
150 GPIO0C1_LCDC_D13 = (1 << GPIO0C1_SHIFT),
151 GPIO0C1_TRACE_D3 = (2 << GPIO0C1_SHIFT),
152 GPIO0C1_MCU_JTAG_TRTSN = (3 << GPIO0C1_SHIFT),
27600a58
AY
153
154 GPIO0C0_SHIFT = 0,
c1828cf7 155 GPIO0C0_MASK = GENMASK(GPIO0C0_SHIFT + 1, GPIO0C0_SHIFT),
27600a58 156 GPIO0C0_GPIO = 0,
c1828cf7
PT
157 GPIO0C0_LCDC_D12 = (1 << GPIO0C0_SHIFT),
158 GPIO0C0_TRACE_D2 = (2 << GPIO0C0_SHIFT),
159 GPIO0C0_MCU_JTAG_TDO = (3 << GPIO0C0_SHIFT),
27600a58
AY
160};
161
162/*GRF_GPIO0D_IOMUX*/
163enum {
164 GPIO0D7_SHIFT = 14,
c1828cf7 165 GPIO0D7_MASK = GENMASK(GPIO0D7_SHIFT + 1, GPIO0D7_SHIFT),
27600a58 166 GPIO0D7_GPIO = 0,
c1828cf7
PT
167 GPIO0D7_LCDC_DCLK = (1 << GPIO0D7_SHIFT),
168 GPIO0D7_TRACE_CTL = (2 << GPIO0D7_SHIFT),
169 GPIO0D7_PMU_DEBUG5 = (3 << GPIO0D7_SHIFT),
27600a58
AY
170
171 GPIO0D6_SHIFT = 12,
c1828cf7 172 GPIO0D6_MASK = GENMASK(GPIO0D6_SHIFT + 1, GPIO0D6_SHIFT),
27600a58 173 GPIO0D6_GPIO = 0,
c1828cf7
PT
174 GPIO0D6_LCDC_DEN = (1 << GPIO0D6_SHIFT),
175 GPIO0D6_TRACE_CLK = (2 << GPIO0D6_SHIFT),
176 GPIO0D6_PMU_DEBUG4 = (3 << GPIO0D6_SHIFT),
27600a58
AY
177
178 GPIO0D5_SHIFT = 10,
c1828cf7 179 GPIO0D5_MASK = GENMASK(GPIO0D5_SHIFT + 1, GPIO0D5_SHIFT),
27600a58 180 GPIO0D5_GPIO = 0,
c1828cf7
PT
181 GPIO0D5_LCDC_VSYNC = (1 << GPIO0D5_SHIFT),
182 GPIO0D5_TRACE_D15 = (2 << GPIO0D5_SHIFT),
183 GPIO0D5_PMU_DEBUG3 = (3 << GPIO0D5_SHIFT),
27600a58
AY
184
185 GPIO0D4_SHIFT = 8,
c1828cf7 186 GPIO0D4_MASK = GENMASK(GPIO0D4_SHIFT + 1, GPIO0D4_SHIFT),
27600a58 187 GPIO0D4_GPIO = 0,
c1828cf7
PT
188 GPIO0D4_LCDC_HSYNC = (1 << GPIO0D4_SHIFT),
189 GPIO0D4_TRACE_D14 = (2 << GPIO0D4_SHIFT),
190 GPIO0D4_PMU_DEBUG2 = (3 << GPIO0D4_SHIFT),
27600a58
AY
191
192 GPIO0D3_SHIFT = 6,
c1828cf7 193 GPIO0D3_MASK = GENMASK(GPIO0D3_SHIFT + 1, GPIO0D3_SHIFT),
27600a58 194 GPIO0D3_GPIO = 0,
c1828cf7
PT
195 GPIO0D3_LCDC_D23 = (1 << GPIO0D3_SHIFT),
196 GPIO0D3_TRACE_D13 = (2 << GPIO0D3_SHIFT),
197 GPIO0D3_UART4_SIN = (3 << GPIO0D3_SHIFT),
27600a58
AY
198
199 GPIO0D2_SHIFT = 4,
c1828cf7 200 GPIO0D2_MASK = GENMASK(GPIO0D2_SHIFT + 1, GPIO0D2_SHIFT),
27600a58 201 GPIO0D2_GPIO = 0,
c1828cf7
PT
202 GPIO0D2_LCDC_D22 = (1 << GPIO0D2_SHIFT),
203 GPIO0D2_TRACE_D12 = (2 << GPIO0D2_SHIFT),
204 GPIO0D2_UART4_SOUT = (3 << GPIO0D2_SHIFT),
27600a58
AY
205
206 GPIO0D1_SHIFT = 2,
c1828cf7 207 GPIO0D1_MASK = GENMASK(GPIO0D1_SHIFT + 1, GPIO0D1_SHIFT),
27600a58 208 GPIO0D1_GPIO = 0,
c1828cf7
PT
209 GPIO0D1_LCDC_D21 = (1 << GPIO0D1_SHIFT),
210 GPIO0D1_TRACE_D11 = (2 << GPIO0D1_SHIFT),
211 GPIO0D1_UART4_RTSN = (3 << GPIO0D1_SHIFT),
27600a58
AY
212
213 GPIO0D0_SHIFT = 0,
c1828cf7 214 GPIO0D0_MASK = GENMASK(GPIO0D0_SHIFT + 1, GPIO0D0_SHIFT),
27600a58 215 GPIO0D0_GPIO = 0,
c1828cf7
PT
216 GPIO0D0_LCDC_D20 = (1 << GPIO0D0_SHIFT),
217 GPIO0D0_TRACE_D10 = (2 << GPIO0D0_SHIFT),
218 GPIO0D0_UART4_CTSN = (3 << GPIO0D0_SHIFT),
27600a58
AY
219};
220
221/*GRF_GPIO2A_IOMUX*/
222enum {
223 GPIO2A7_SHIFT = 14,
c1828cf7 224 GPIO2A7_MASK = GENMASK(GPIO2A7_SHIFT + 1, GPIO2A7_SHIFT),
27600a58 225 GPIO2A7_GPIO = 0,
c1828cf7
PT
226 GPIO2A7_SDMMC0_D2 = (1 << GPIO2A7_SHIFT),
227 GPIO2A7_JTAG_TCK = (2 << GPIO2A7_SHIFT),
27600a58
AY
228
229 GPIO2A6_SHIFT = 12,
c1828cf7 230 GPIO2A6_MASK = GENMASK(GPIO2A6_SHIFT + 1, GPIO2A6_SHIFT),
27600a58 231 GPIO2A6_GPIO = 0,
c1828cf7
PT
232 GPIO2A6_SDMMC0_D1 = (1 << GPIO2A6_SHIFT),
233 GPIO2A6_UART2_SIN = (2 << GPIO2A6_SHIFT),
27600a58
AY
234
235 GPIO2A5_SHIFT = 10,
c1828cf7 236 GPIO2A5_MASK = GENMASK(GPIO2A5_SHIFT + 1, GPIO2A5_SHIFT),
27600a58 237 GPIO2A5_GPIO = 0,
c1828cf7
PT
238 GPIO2A5_SDMMC0_D0 = (1 << GPIO2A5_SHIFT),
239 GPIO2A5_UART2_SOUT = (2 << GPIO2A5_SHIFT),
27600a58
AY
240
241 GPIO2A4_SHIFT = 8,
c1828cf7 242 GPIO2A4_MASK = GENMASK(GPIO2A4_SHIFT + 1, GPIO2A4_SHIFT),
27600a58 243 GPIO2A4_GPIO = 0,
c1828cf7
PT
244 GPIO2A4_FLASH_DQS = (1 << GPIO2A4_SHIFT),
245 GPIO2A4_EMMC_CLKOUT = (2 << GPIO2A4_SHIFT),
27600a58
AY
246
247 GPIO2A3_SHIFT = 6,
c1828cf7 248 GPIO2A3_MASK = GENMASK(GPIO2A3_SHIFT + 1, GPIO2A3_SHIFT),
27600a58 249 GPIO2A3_GPIO = 0,
c1828cf7
PT
250 GPIO2A3_FLASH_CSN3 = (1 << GPIO2A3_SHIFT),
251 GPIO2A3_EMMC_RSTNOUT = (2 << GPIO2A3_SHIFT),
27600a58
AY
252
253 GPIO2A2_SHIFT = 4,
c1828cf7
PT
254 GPIO2A2_MASK = GENMASK(GPIO2A2_SHIFT + 1, GPIO2A2_SHIFT),
255 GPIO2A2_GPIO = 0,
256 GPIO2A2_FLASH_CSN2 = (1 << GPIO2A2_SHIFT),
27600a58
AY
257
258 GPIO2A1_SHIFT = 2,
c1828cf7 259 GPIO2A1_MASK = GENMASK(GPIO2A1_SHIFT + 1, GPIO2A1_SHIFT),
27600a58 260 GPIO2A1_GPIO = 0,
c1828cf7 261 GPIO2A1_FLASH_CSN1 = (1 << GPIO2A1_SHIFT),
27600a58
AY
262
263 GPIO2A0_SHIFT = 0,
c1828cf7 264 GPIO2A0_MASK = GENMASK(GPIO2A0_SHIFT + 1, GPIO2A0_SHIFT),
27600a58 265 GPIO2A0_GPIO = 0,
c1828cf7 266 GPIO2A0_FLASH_CSN0 = (1 << GPIO2A0_SHIFT),
27600a58
AY
267};
268
269/*GRF_GPIO2D_IOMUX*/
270enum {
271 GPIO2D7_SHIFT = 14,
c1828cf7 272 GPIO2D7_MASK = GENMASK(GPIO2D7_SHIFT + 1, GPIO2D7_SHIFT),
27600a58 273 GPIO2D7_GPIO = 0,
c1828cf7 274 GPIO2D7_SDIO0_D3 = (1 << GPIO2D7_SHIFT),
27600a58
AY
275
276 GPIO2D6_SHIFT = 12,
c1828cf7 277 GPIO2D6_MASK = GENMASK(GPIO2D6_SHIFT + 1, GPIO2D6_SHIFT),
27600a58 278 GPIO2D6_GPIO = 0,
c1828cf7 279 GPIO2D6_SDIO0_D2 = (1 << GPIO2D6_SHIFT),
27600a58
AY
280
281 GPIO2D5_SHIFT = 10,
c1828cf7 282 GPIO2D5_MASK = GENMASK(GPIO2D5_SHIFT + 1, GPIO2D5_SHIFT),
27600a58 283 GPIO2D5_GPIO = 0,
c1828cf7 284 GPIO2D5_SDIO0_D1 = (1 << GPIO2D5_SHIFT),
27600a58
AY
285
286 GPIO2D4_SHIFT = 8,
c1828cf7 287 GPIO2D4_MASK = GENMASK(GPIO2D4_SHIFT + 1, GPIO2D4_SHIFT),
27600a58 288 GPIO2D4_GPIO = 0,
c1828cf7 289 GPIO2D4_SDIO0_D0 = (1 << GPIO2D4_SHIFT),
27600a58
AY
290
291 GPIO2D3_SHIFT = 6,
c1828cf7 292 GPIO2D3_MASK = GENMASK(GPIO2D3_SHIFT + 1, GPIO2D3_SHIFT),
27600a58 293 GPIO2D3_GPIO = 0,
c1828cf7 294 GPIO2D3_UART0_RTS0 = (1 << GPIO2D3_SHIFT),
27600a58
AY
295
296 GPIO2D2_SHIFT = 4,
c1828cf7 297 GPIO2D2_MASK = GENMASK(GPIO2D2_SHIFT + 1, GPIO2D2_SHIFT),
27600a58 298 GPIO2D2_GPIO = 0,
c1828cf7 299 GPIO2D2_UART0_CTS0 = (1 << GPIO2D2_SHIFT),
27600a58
AY
300
301 GPIO2D1_SHIFT = 2,
c1828cf7 302 GPIO2D1_MASK = GENMASK(GPIO2D1_SHIFT + 1, GPIO2D1_SHIFT),
27600a58 303 GPIO2D1_GPIO = 0,
c1828cf7 304 GPIO2D1_UART0_SOUT = (1 << GPIO2D1_SHIFT),
27600a58
AY
305
306 GPIO2D0_SHIFT = 0,
c1828cf7 307 GPIO2D0_MASK = GENMASK(GPIO2D0_SHIFT + 1, GPIO2D0_SHIFT),
27600a58 308 GPIO2D0_GPIO = 0,
c1828cf7 309 GPIO2D0_UART0_SIN = (1 << GPIO2D0_SHIFT),
27600a58
AY
310};
311
c1828cf7 312/* GRF_GPIO1C_IOMUX */
27600a58 313enum {
c1828cf7
PT
314 GPIO1C7_SHIFT = 14,
315 GPIO1C7_MASK = GENMASK(GPIO1C7_SHIFT + 1, GPIO1C7_SHIFT),
316 GPIO1C7_GPIO = 0,
317 GPIO1C7_EMMC_DATA5 = (2 << GPIO1C7_SHIFT),
318
319 GPIO1C6_SHIFT = 12,
320 GPIO1C6_MASK = GENMASK(GPIO1C6_SHIFT + 1, GPIO1C6_SHIFT),
321 GPIO1C6_GPIO = 0,
322 GPIO1C6_EMMC_DATA4 = (2 << GPIO1C6_SHIFT),
323
324 GPIO1C5_SHIFT = 10,
325 GPIO1C5_MASK = GENMASK(GPIO1C5_SHIFT + 1, GPIO1C5_SHIFT),
326 GPIO1C5_GPIO = 0,
327 GPIO1C5_EMMC_DATA3 = (2 << GPIO1C5_SHIFT),
328
329 GPIO1C4_SHIFT = 8,
330 GPIO1C4_MASK = GENMASK(GPIO1C4_SHIFT + 1, GPIO1C4_SHIFT),
331 GPIO1C4_GPIO = 0,
332 GPIO1C4_EMMC_DATA2 = (2 << GPIO1C4_SHIFT),
333
334 GPIO1C3_SHIFT = 6,
335 GPIO1C3_MASK = GENMASK(GPIO1C3_SHIFT + 1, GPIO1C3_SHIFT),
336 GPIO1C3_GPIO = 0,
337 GPIO1C3_EMMC_DATA1 = (2 << GPIO1C3_SHIFT),
338
339 GPIO1C2_SHIFT = 4,
340 GPIO1C2_MASK = GENMASK(GPIO1C2_SHIFT + 1, GPIO1C2_SHIFT),
341 GPIO1C2_GPIO = 0,
342 GPIO1C2_EMMC_DATA0 = (2 << GPIO1C2_SHIFT),
343};
344
345/* GRF_GPIO1D_IOMUX*/
346enum {
347 GPIO1D3_SHIFT = 6,
348 GPIO1D3_MASK = GENMASK(GPIO1D3_SHIFT + 1, GPIO1D3_SHIFT),
349 GPIO1D3_GPIO = 0,
350 GPIO1D3_EMMC_PWREN = (2 << GPIO1D3_SHIFT),
351
352 GPIO1D2_SHIFT = 4,
353 GPIO1D2_MASK = GENMASK(GPIO1D2_SHIFT + 1, GPIO1D2_SHIFT),
354 GPIO1D2_GPIO = 0,
355 GPIO1D2_EMMC_CMD = (2 << GPIO1D2_SHIFT),
356
357 GPIO1D1_SHIFT = 2,
358 GPIO1D1_MASK = GENMASK(GPIO1D1_SHIFT + 1, GPIO1D1_SHIFT),
359 GPIO1D1_GPIO = 0,
360 GPIO1D1_EMMC_DATA7 = (2 << GPIO1D1_SHIFT),
361
362 GPIO1D0_SHIFT = 0,
363 GPIO1D0_MASK = GENMASK(GPIO1D0_SHIFT + 1, GPIO1D0_SHIFT),
364 GPIO1D0_GPIO = 0,
365 GPIO1D0_EMMC_DATA6 = (2 << GPIO1D0_SHIFT),
366};
367
368
369/*GRF_GPIO3B_IOMUX*/
370enum {
371 GPIO3B7_SHIFT = 14,
372 GPIO3B7_MASK = GENMASK(GPIO3B7_SHIFT + 1, GPIO3B7_SHIFT),
373 GPIO3B7_GPIO = 0,
374 GPIO3B7_MAC_RXD0 = (1 << GPIO3B7_SHIFT),
375
376 GPIO3B6_SHIFT = 12,
377 GPIO3B6_MASK = GENMASK(GPIO3B6_SHIFT + 1, GPIO3B6_SHIFT),
378 GPIO3B6_GPIO = 0,
379 GPIO3B6_MAC_TXD3 = (1 << GPIO3B6_SHIFT),
380
381 GPIO3B5_SHIFT = 10,
382 GPIO3B5_MASK = GENMASK(GPIO3B5_SHIFT + 1, GPIO3B5_SHIFT),
383 GPIO3B5_GPIO = 0,
384 GPIO3B5_MAC_TXEN = (1 << GPIO3B5_SHIFT),
385
386 GPIO3B4_SHIFT = 8,
387 GPIO3B4_MASK = GENMASK(GPIO3B4_SHIFT + 1, GPIO3B4_SHIFT),
388 GPIO3B4_GPIO = 0,
389 GPIO3B4_MAC_COL = (1 << GPIO3B4_SHIFT),
390
391 GPIO3B3_SHIFT = 6,
392 GPIO3B3_MASK = GENMASK(GPIO3B3_SHIFT + 1, GPIO3B3_SHIFT),
393 GPIO3B3_GPIO = 0,
394 GPIO3B3_MAC_CRS = (1 << GPIO3B3_SHIFT),
395
396 GPIO3B2_SHIFT = 4,
397 GPIO3B2_MASK = GENMASK(GPIO3B2_SHIFT + 1, GPIO3B2_SHIFT),
398 GPIO3B2_GPIO = 0,
399 GPIO3B2_MAC_TXD2 = (1 << GPIO3B2_SHIFT),
400
401 GPIO3B1_SHIFT = 2,
402 GPIO3B1_MASK = GENMASK(GPIO3B1_SHIFT + 1, GPIO3B1_SHIFT),
403 GPIO3B1_GPIO = 0,
404 GPIO3B1_MAC_TXD1 = (1 << GPIO3B1_SHIFT),
405
406 GPIO3B0_SHIFT = 0,
407 GPIO3B0_MASK = GENMASK(GPIO3B0_SHIFT + 1, GPIO3B0_SHIFT),
408 GPIO3B0_GPIO = 0,
409 GPIO3B0_MAC_TXD0 = (1 << GPIO3B0_SHIFT),
410 GPIO3B0_PWM0 = (2 << GPIO3B0_SHIFT),
411};
27600a58 412
c1828cf7
PT
413/*GRF_GPIO3C_IOMUX*/
414enum {
27600a58 415 GPIO3C6_SHIFT = 12,
c1828cf7 416 GPIO3C6_MASK = GENMASK(GPIO3C6_SHIFT + 1, GPIO3C6_SHIFT),
27600a58 417 GPIO3C6_GPIO = 0,
c1828cf7 418 GPIO3C6_MAC_CLK = (1 << GPIO3C6_SHIFT),
27600a58
AY
419
420 GPIO3C5_SHIFT = 10,
c1828cf7 421 GPIO3C5_MASK = GENMASK(GPIO3C5_SHIFT + 1, GPIO3C5_SHIFT),
27600a58 422 GPIO3C5_GPIO = 0,
c1828cf7 423 GPIO3C5_MAC_RXEN = (1 << GPIO3C5_SHIFT),
27600a58
AY
424
425 GPIO3C4_SHIFT = 8,
c1828cf7 426 GPIO3C4_MASK = GENMASK(GPIO3C4_SHIFT + 1, GPIO3C4_SHIFT),
27600a58 427 GPIO3C4_GPIO = 0,
c1828cf7 428 GPIO3C4_MAC_RXDV = (1 << GPIO3C4_SHIFT),
27600a58
AY
429
430 GPIO3C3_SHIFT = 6,
c1828cf7 431 GPIO3C3_MASK = GENMASK(GPIO3C3_SHIFT + 1, GPIO3C3_SHIFT),
27600a58 432 GPIO3C3_GPIO = 0,
c1828cf7 433 GPIO3C3_MAC_MDC = (1 << GPIO3C3_SHIFT),
27600a58
AY
434
435 GPIO3C2_SHIFT = 4,
c1828cf7
PT
436 GPIO3C2_MASK = GENMASK(GPIO3C2_SHIFT + 1, GPIO3C2_SHIFT),
437 GPIO3C2_GPIO = 0,
438 GPIO3C2_MAC_RXD3 = (1 << GPIO3C2_SHIFT),
27600a58
AY
439
440 GPIO3C1_SHIFT = 2,
c1828cf7 441 GPIO3C1_MASK = GENMASK(GPIO3C1_SHIFT + 1, GPIO3C1_SHIFT),
27600a58 442 GPIO3C1_GPIO = 0,
c1828cf7 443 GPIO3C1_MAC_RXD2 = (1 << GPIO3C1_SHIFT),
27600a58
AY
444
445 GPIO3C0_SHIFT = 0,
c1828cf7 446 GPIO3C0_MASK = GENMASK(GPIO3C0_SHIFT + 1, GPIO3C0_SHIFT),
27600a58 447 GPIO3C0_GPIO = 0,
c1828cf7 448 GPIO3C0_MAC_RXD1 = (1 << GPIO3C0_SHIFT),
27600a58
AY
449};
450
451/*GRF_GPIO3D_IOMUX*/
452enum {
27600a58 453 GPIO3D4_SHIFT = 8,
c1828cf7 454 GPIO3D4_MASK = GENMASK(GPIO3D4_SHIFT + 1, GPIO3D4_SHIFT),
27600a58 455 GPIO3D4_GPIO = 0,
c1828cf7 456 GPIO3D4_MAC_TXCLK = (1 << GPIO3D4_SHIFT),
27600a58
AY
457
458 GPIO3D1_SHIFT = 2,
c1828cf7 459 GPIO3D1_MASK = GENMASK(GPIO3D1_SHIFT + 1, GPIO3D1_SHIFT),
27600a58 460 GPIO3D1_GPIO = 0,
c1828cf7 461 GPIO3D1_MAC_RXCLK = (1 << GPIO3D1_SHIFT),
27600a58
AY
462
463 GPIO3D0_SHIFT = 0,
c1828cf7 464 GPIO3D0_MASK = GENMASK(GPIO3D0_SHIFT + 1, GPIO3D0_SHIFT),
27600a58 465 GPIO3D0_GPIO = 0,
c1828cf7
PT
466 GPIO3D0_MAC_MDIO = (1 << GPIO3D0_SHIFT),
467};
468
469/* GRF_SOC_CON0 */
470enum {
471 NOC_RSP_ERR_STALL = BIT(9),
472 MOBILE_DDR_SEL = BIT(4),
473 DDR0_16BIT_EN = BIT(3),
474 MSCH0_MAINDDR3_DDR3 = BIT(2),
475 MSCH0_MAINPARTIALPOP = BIT(1),
476 UPCTL_C_ACTIVE = BIT(0),
27600a58
AY
477};
478
479/*GRF_SOC_CON11/12/13*/
480enum {
481 MCU_SRAM_BASE_BIT27_BIT12_SHIFT = 0,
482 MCU_SRAM_BASE_BIT27_BIT12_MASK = GENMASK(15, 0),
483};
484
485/*GRF_SOC_CON12*/
486enum {
487 MCU_EXSRAM_BASE_BIT27_BIT12_SHIFT = 0,
488 MCU_EXSRAM_BASE_BIT27_BIT12_MASK = GENMASK(15, 0),
489};
490
491/*GRF_SOC_CON13*/
492enum {
493 MCU_EXPERI_BASE_BIT27_BIT12_SHIFT = 0,
494 MCU_EXPERI_BASE_BIT27_BIT12_MASK = GENMASK(15, 0),
495};
496
497/*GRF_SOC_CON14*/
498enum {
499 MCU_EXPERI_BASE_BIT31_BIT28_SHIFT = 12,
500 MCU_EXPERI_BASE_BIT31_BIT28_MASK = GENMASK(15, 12),
501 MCU_EXSRAM_BASE_BIT31_BIT28_SHIFT = 8,
502 MCU_EXSRAM_BASE_BIT31_BIT28_MASK = GENMASK(11, 8),
503 MCU_SRAM_BASE_BIT31_BIT28_SHIFT = 4,
504 MCU_SRAM_BASE_BIT31_BIT28_MASK = GENMASK(7, 4),
505 MCU_CODE_BASE_BIT31_BIT28_SHIFT = 0,
506 MCU_CODE_BASE_BIT31_BIT28_MASK = GENMASK(3, 0),
507};
508#endif