1b1d902a9SAdrian Alonso /*
2b1d902a9SAdrian Alonso  * Copyright (C) 2015 Freescale Semiconductor, Inc. All Rights Reserved.
3b1d902a9SAdrian Alonso  *
4b1d902a9SAdrian Alonso  * SPDX-License-Identifier:	GPL-2.0+
5b1d902a9SAdrian Alonso  */
6b1d902a9SAdrian Alonso 
7b1d902a9SAdrian Alonso #ifndef __ASM_ARCH_MX7_IMX_REGS_H__
8b1d902a9SAdrian Alonso #define __ASM_ARCH_MX7_IMX_REGS_H__
9b1d902a9SAdrian Alonso 
10b1d902a9SAdrian Alonso #define ARCH_MXC
11b1d902a9SAdrian Alonso 
12b1d902a9SAdrian Alonso #define CONFIG_SYS_CACHELINE_SIZE	64
13b1d902a9SAdrian Alonso 
14b1d902a9SAdrian Alonso #define ROM_SW_INFO_ADDR                0x000001E8
15b1d902a9SAdrian Alonso #define ROMCP_ARB_BASE_ADDR             0x00000000
16b1d902a9SAdrian Alonso #define ROMCP_ARB_END_ADDR              0x00017FFF
17b1d902a9SAdrian Alonso #define BOOT_ROM_BASE_ADDR              ROMCP_ARB_BASE_ADDR
18b1d902a9SAdrian Alonso #define CAAM_ARB_BASE_ADDR              0x00100000
19b1d902a9SAdrian Alonso #define CAAM_ARB_END_ADDR               0x00107FFF
20b1d902a9SAdrian Alonso #define GIC400_ARB_BASE_ADDR            0x31000000
21b1d902a9SAdrian Alonso #define GIC400_ARB_END_ADDR             0x31007FFF
22b1d902a9SAdrian Alonso #define APBH_DMA_ARB_BASE_ADDR          0x33000000
23b1d902a9SAdrian Alonso #define APBH_DMA_ARB_END_ADDR           0x33007FFF
24b1d902a9SAdrian Alonso #define M4_BOOTROM_BASE_ADDR            0x00180000
25b1d902a9SAdrian Alonso 
26b1d902a9SAdrian Alonso #define MXS_APBH_BASE			APBH_DMA_ARB_BASE_ADDR
27b1d902a9SAdrian Alonso #define MXS_GPMI_BASE			(APBH_DMA_ARB_BASE_ADDR + 0x02000)
28b1d902a9SAdrian Alonso #define MXS_BCH_BASE			(APBH_DMA_ARB_BASE_ADDR + 0x04000)
29b1d902a9SAdrian Alonso 
30b1d902a9SAdrian Alonso /* GPV - PL301 configuration ports */
31b1d902a9SAdrian Alonso #define GPV0_BASE_ADDR                  0x32000000
32b1d902a9SAdrian Alonso #define GPV1_BASE_ADDR                  0x32100000
33b1d902a9SAdrian Alonso #define GPV2_BASE_ADDR                  0x32200000
34b1d902a9SAdrian Alonso #define GPV3_BASE_ADDR                  0x32300000
35b1d902a9SAdrian Alonso #define GPV4_BASE_ADDR                  0x32400000
36b1d902a9SAdrian Alonso #define GPV5_BASE_ADDR                  0x32500000
37b1d902a9SAdrian Alonso #define GPV6_BASE_ADDR                  0x32600000
38b1d902a9SAdrian Alonso #define GPV7_BASE_ADDR                  0x32700000
39b1d902a9SAdrian Alonso 
40b1d902a9SAdrian Alonso #define OCRAM_ARB_BASE_ADDR             0x00900000
41b1d902a9SAdrian Alonso #define OCRAM_ARB_END_ADDR              0x0091FFFF
42b1d902a9SAdrian Alonso #define OCRAM_EPDC_BASE_ADDR            0x00920000
43b1d902a9SAdrian Alonso #define OCRAM_EPDC_END_ADDR             0x0093FFFF
44b1d902a9SAdrian Alonso #define OCRAM_PXP_BASE_ADDR             0x00940000
45b1d902a9SAdrian Alonso #define OCRAM_PXP_END_ADDR              0x00947FFF
46b1d902a9SAdrian Alonso #define IRAM_BASE_ADDR                  OCRAM_ARB_BASE_ADDR
47b1d902a9SAdrian Alonso #define IRAM_SIZE			0x00020000
48b1d902a9SAdrian Alonso 
49b1d902a9SAdrian Alonso #define AIPS1_ARB_BASE_ADDR             0x30000000
50b1d902a9SAdrian Alonso #define AIPS1_ARB_END_ADDR              0x303FFFFF
51b1d902a9SAdrian Alonso #define AIPS2_ARB_BASE_ADDR             0x30400000
52b1d902a9SAdrian Alonso #define AIPS2_ARB_END_ADDR              0x307FFFFF
53b1d902a9SAdrian Alonso #define AIPS3_ARB_BASE_ADDR             0x30800000
54b1d902a9SAdrian Alonso #define AIPS3_ARB_END_ADDR              0x30BFFFFF
55b1d902a9SAdrian Alonso 
56b1d902a9SAdrian Alonso #define WEIM_ARB_BASE_ADDR              0x28000000
57b1d902a9SAdrian Alonso #define WEIM_ARB_END_ADDR               0x2FFFFFFF
58b1d902a9SAdrian Alonso 
59b1d902a9SAdrian Alonso #define QSPI0_ARB_BASE_ADDR             0x60000000
60b1d902a9SAdrian Alonso #define QSPI0_ARB_END_ADDR              0x6FFFFFFF
61b1d902a9SAdrian Alonso #define PCIE_ARB_BASE_ADDR              0x40000000
62b1d902a9SAdrian Alonso #define PCIE_ARB_END_ADDR               0x4FFFFFFF
63b1d902a9SAdrian Alonso #define PCIE_REG_BASE_ADDR              0x33800000
64b1d902a9SAdrian Alonso #define PCIE_REG_END_ADDR               0x33803FFF
65b1d902a9SAdrian Alonso 
66b1d902a9SAdrian Alonso #define MMDC0_ARB_BASE_ADDR             0x80000000
67b1d902a9SAdrian Alonso #define MMDC0_ARB_END_ADDR              0xBFFFFFFF
68b1d902a9SAdrian Alonso #define MMDC1_ARB_BASE_ADDR             0xC0000000
69b1d902a9SAdrian Alonso #define MMDC1_ARB_END_ADDR              0xFFFFFFFF
70b1d902a9SAdrian Alonso 
71b1d902a9SAdrian Alonso /* Cortex-A9 MPCore private memory region */
72b1d902a9SAdrian Alonso #define ARM_PERIPHBASE                  0x31000000
73b1d902a9SAdrian Alonso #define SCU_BASE_ADDR                   ARM_PERIPHBASE
74b1d902a9SAdrian Alonso #define GLOBAL_TIMER_BASE_ADDR          (ARM_PERIPHBASE + 0x0200)
75b1d902a9SAdrian Alonso #define PRIVATE_TIMERS_WD_BASE_ADDR     (ARM_PERIPHBASE + 0x0600)
76b1d902a9SAdrian Alonso 
77b1d902a9SAdrian Alonso 
78b1d902a9SAdrian Alonso /* Defines for Blocks connected via AIPS (SkyBlue) */
79b1d902a9SAdrian Alonso #define AIPS_TZ1_BASE_ADDR              AIPS1_ARB_BASE_ADDR
80b1d902a9SAdrian Alonso #define AIPS_TZ2_BASE_ADDR              AIPS2_ARB_BASE_ADDR
81b1d902a9SAdrian Alonso #define AIPS_TZ3_BASE_ADDR              AIPS3_ARB_BASE_ADDR
82b1d902a9SAdrian Alonso 
83b1d902a9SAdrian Alonso /* DAP base-address */
84b1d902a9SAdrian Alonso #define ARM_IPS_BASE_ADDR               AIPS1_ARB_BASE_ADDR
85b1d902a9SAdrian Alonso 
86b1d902a9SAdrian Alonso /* AIPS_TZ#1- On Platform */
87b1d902a9SAdrian Alonso #define AIPS1_ON_BASE_ADDR              (AIPS_TZ1_BASE_ADDR+0x1F0000)
88b1d902a9SAdrian Alonso /* AIPS_TZ#1- Off Platform */
89b1d902a9SAdrian Alonso #define AIPS1_OFF_BASE_ADDR             (AIPS_TZ1_BASE_ADDR+0x200000)
90b1d902a9SAdrian Alonso 
91b1d902a9SAdrian Alonso #define GPIO1_BASE_ADDR                 AIPS1_OFF_BASE_ADDR
92b1d902a9SAdrian Alonso #define GPIO2_BASE_ADDR                 (AIPS1_OFF_BASE_ADDR+0x10000)
93b1d902a9SAdrian Alonso #define GPIO3_BASE_ADDR                 (AIPS1_OFF_BASE_ADDR+0x20000)
94b1d902a9SAdrian Alonso #define GPIO4_BASE_ADDR                 (AIPS1_OFF_BASE_ADDR+0x30000)
95b1d902a9SAdrian Alonso #define GPIO5_BASE_ADDR                 (AIPS1_OFF_BASE_ADDR+0x40000)
96b1d902a9SAdrian Alonso #define GPIO6_BASE_ADDR                 (AIPS1_OFF_BASE_ADDR+0x50000)
97b1d902a9SAdrian Alonso #define GPIO7_BASE_ADDR                 (AIPS1_OFF_BASE_ADDR+0x60000)
98b1d902a9SAdrian Alonso #define IOMUXC_LPSR_GPR_BASE_ADDR      (AIPS1_OFF_BASE_ADDR+0x70000)
99b1d902a9SAdrian Alonso #define WDOG1_BASE_ADDR                (AIPS1_OFF_BASE_ADDR+0x80000)
100b1d902a9SAdrian Alonso #define WDOG2_BASE_ADDR                (AIPS1_OFF_BASE_ADDR+0x90000)
101b1d902a9SAdrian Alonso #define WDOG3_BASE_ADDR                (AIPS1_OFF_BASE_ADDR+0xA0000)
102b1d902a9SAdrian Alonso #define WDOG4_BASE_ADDR                (AIPS1_OFF_BASE_ADDR+0xB0000)
103b1d902a9SAdrian Alonso #define IOMUXC_LPSR_BASE_ADDR          (AIPS1_OFF_BASE_ADDR+0xC0000)
104b1d902a9SAdrian Alonso #define GPT_IPS_BASE_ADDR              (AIPS1_OFF_BASE_ADDR+0xD0000)
105b1d902a9SAdrian Alonso #define GPT1_BASE_ADDR GPT_IPS_BASE_ADDR
106b1d902a9SAdrian Alonso #define GPT2_IPS_BASE_ADDR             (AIPS1_OFF_BASE_ADDR+0xE0000)
107b1d902a9SAdrian Alonso #define GPT3_IPS_BASE_ADDR             (AIPS1_OFF_BASE_ADDR+0xF0000)
108b1d902a9SAdrian Alonso #define GPT4_IPS_BASE_ADDR             (AIPS1_OFF_BASE_ADDR+0x100000)
109b1d902a9SAdrian Alonso #define ROMCP_IPS_BASE_ADDR            (AIPS1_OFF_BASE_ADDR+0x110000)
110b1d902a9SAdrian Alonso #define KPP_IPS_BASE_ADDR              (AIPS1_OFF_BASE_ADDR+0x120000)
111b1d902a9SAdrian Alonso #define IOMUXC_IPS_BASE_ADDR           (AIPS1_OFF_BASE_ADDR+0x130000)
112b1d902a9SAdrian Alonso #define IOMUXC_BASE_ADDR               IOMUXC_IPS_BASE_ADDR
113b1d902a9SAdrian Alonso #define IOMUXC_GPR_BASE_ADDR           (AIPS1_OFF_BASE_ADDR+0x140000)
114b1d902a9SAdrian Alonso #define OCOTP_BASE_ADDR                (AIPS1_OFF_BASE_ADDR+0x150000)
115b1d902a9SAdrian Alonso #define ANATOP_BASE_ADDR               (AIPS1_OFF_BASE_ADDR+0x160000)
116b1d902a9SAdrian Alonso #define SNVS_BASE_ADDR                 (AIPS1_OFF_BASE_ADDR+0x170000)
117b1d902a9SAdrian Alonso #define CCM_BASE_ADDR                  (AIPS1_OFF_BASE_ADDR+0x180000)
118b1d902a9SAdrian Alonso #define SRC_BASE_ADDR                  (AIPS1_OFF_BASE_ADDR+0x190000)
119b1d902a9SAdrian Alonso #define GPC_IPS_BASE_ADDR              (AIPS1_OFF_BASE_ADDR+0x1A0000)
120b1d902a9SAdrian Alonso #define SEMA41_IPS_BASE_ADDR           (AIPS1_OFF_BASE_ADDR+0x1B0000)
121b1d902a9SAdrian Alonso #define SEMA42_IPS_BASE_ADDR           (AIPS1_OFF_BASE_ADDR+0x1C0000)
122b1d902a9SAdrian Alonso #define RDC_IPS_BASE_ADDR              (AIPS1_OFF_BASE_ADDR+0x1D0000)
123b1d902a9SAdrian Alonso #define CSU_IPS_BASE_ADDR              (AIPS1_OFF_BASE_ADDR+0x1E0000)
124b1d902a9SAdrian Alonso 
125b1d902a9SAdrian Alonso /* AIPS_TZ#2- On Platform */
126b1d902a9SAdrian Alonso #define AIPS2_ON_BASE_ADDR              (AIPS_TZ2_BASE_ADDR+0x1F0000)
127b1d902a9SAdrian Alonso /* AIPS_TZ#2- Off Platform */
128b1d902a9SAdrian Alonso #define AIPS2_OFF_BASE_ADDR             (AIPS_TZ2_BASE_ADDR+0x200000)
129b1d902a9SAdrian Alonso #define ADC1_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x10000)
130b1d902a9SAdrian Alonso #define ADC2_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x20000)
131b1d902a9SAdrian Alonso #define ECSPI4_BASE_ADDR                (AIPS2_OFF_BASE_ADDR+0x30000)
132b1d902a9SAdrian Alonso #define FTM1_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x40000)
133b1d902a9SAdrian Alonso #define FTM2_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x50000)
134b1d902a9SAdrian Alonso #define PWM1_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x60000)
135b1d902a9SAdrian Alonso #define PWM2_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x70000)
136b1d902a9SAdrian Alonso #define PWM3_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x80000)
137b1d902a9SAdrian Alonso #define PWM4_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x90000)
138b1d902a9SAdrian Alonso #define SYSCNT_RD_IPS_BASE_ADDR         (AIPS2_OFF_BASE_ADDR+0xA0000)
139b1d902a9SAdrian Alonso #define SYSCNT_CMP_IPS_BASE_ADDR        (AIPS2_OFF_BASE_ADDR+0xB0000)
140b1d902a9SAdrian Alonso #define SYSCNT_CTRL_IPS_BASE_ADDR       (AIPS2_OFF_BASE_ADDR+0xC0000)
141b1d902a9SAdrian Alonso #define PCIE_PHY_IPS_BASE_ADDR          (AIPS2_OFF_BASE_ADDR+0xD0000)
142b1d902a9SAdrian Alonso #define EPDC_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0xF0000)
143b1d902a9SAdrian Alonso #define EPDC_BASE_ADDR                  EPDC_IPS_BASE_ADDR
144b1d902a9SAdrian Alonso #define EPXP_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x100000)
145b1d902a9SAdrian Alonso #define CSI1_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x110000)
146b1d902a9SAdrian Alonso #define ELCDIF1_IPS_BASE_ADDR           (AIPS2_OFF_BASE_ADDR+0x130000)
147b1d902a9SAdrian Alonso #define MIPI_CSI2_IPS_BASE_ADDR         (AIPS2_OFF_BASE_ADDR+0x150000)
148b1d902a9SAdrian Alonso #define MIPI_DSI_IPS_BASE_ADDR          (AIPS2_OFF_BASE_ADDR+0x160000)
149b1d902a9SAdrian Alonso #define IP2APB_TZASC1_IPS_BASE_ADDR     (AIPS2_OFF_BASE_ADDR+0x180000)
150b1d902a9SAdrian Alonso #define DDRPHY_IPS_BASE_ADDR            (AIPS2_OFF_BASE_ADDR+0x190000)
151b1d902a9SAdrian Alonso #define DDRC_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x1A0000)
152b1d902a9SAdrian Alonso #define IP2APB_PERFMON1_IPS_BASE_ADDR   (AIPS2_OFF_BASE_ADDR+0x1C0000)
153b1d902a9SAdrian Alonso #define IP2APB_PERFMON2_IPS_BASE_ADDR   (AIPS2_OFF_BASE_ADDR+0x1D0000)
154b1d902a9SAdrian Alonso #define IP2APB_AXIMON_IPS_BASE_ADDR     (AIPS2_OFF_BASE_ADDR+0x1E0000)
155b1d902a9SAdrian Alonso #define QOSC_IPS_BASE_ADDR              (AIPS2_OFF_BASE_ADDR+0x1F0000)
156b1d902a9SAdrian Alonso 
157b1d902a9SAdrian Alonso /* AIPS_TZ#3  - Global enable (0) */
158b1d902a9SAdrian Alonso #define ECSPI1_BASE_ADDR                (AIPS_TZ3_BASE_ADDR+0x20000)
159b1d902a9SAdrian Alonso #define ECSPI2_BASE_ADDR                (AIPS_TZ3_BASE_ADDR+0x30000)
160b1d902a9SAdrian Alonso #define ECSPI3_BASE_ADDR                (AIPS_TZ3_BASE_ADDR+0x40000)
161b1d902a9SAdrian Alonso #define UART1_IPS_BASE_ADDR             (AIPS_TZ3_BASE_ADDR+0x60000)
162b1d902a9SAdrian Alonso #define UART3_IPS_BASE_ADDR             (AIPS_TZ3_BASE_ADDR+0x80000)
163b1d902a9SAdrian Alonso #define UART2_IPS_BASE_ADDR             (AIPS_TZ3_BASE_ADDR+0x90000)
164b1d902a9SAdrian Alonso #define SAI1_IPS_BASE_ADDR              (AIPS_TZ3_BASE_ADDR+0xA0000)
165b1d902a9SAdrian Alonso #define SAI2_IPS_BASE_ADDR              (AIPS_TZ3_BASE_ADDR+0xB0000)
166b1d902a9SAdrian Alonso #define SAI3_IPS_BASE_ADDR              (AIPS_TZ3_BASE_ADDR+0xC0000)
167b1d902a9SAdrian Alonso #define SPBA_IPS_BASE_ADDR              (AIPS_TZ3_BASE_ADDR+0xF0000)
168b1d902a9SAdrian Alonso #define CAAM_IPS_BASE_ADDR              (AIPS_TZ3_BASE_ADDR+0x100000)
169b1d902a9SAdrian Alonso 
170b1d902a9SAdrian Alonso /* AIPS_TZ#3- On Platform */
171b1d902a9SAdrian Alonso #define AIPS3_ON_BASE_ADDR              (AIPS_TZ3_BASE_ADDR+0x1F0000)
172b1d902a9SAdrian Alonso /* AIPS_TZ#3- Off Platform */
173b1d902a9SAdrian Alonso #define AIPS3_OFF_BASE_ADDR             (AIPS_TZ3_BASE_ADDR+0x200000)
174b1d902a9SAdrian Alonso #define CAN1_IPS_BASE_ADDR              AIPS3_OFF_BASE_ADDR
175b1d902a9SAdrian Alonso #define CAN2_IPS_BASE_ADDR              (AIPS3_OFF_BASE_ADDR+0x10000)
176b1d902a9SAdrian Alonso #define I2C1_BASE_ADDR                  (AIPS3_OFF_BASE_ADDR+0x20000)
177b1d902a9SAdrian Alonso #define I2C2_BASE_ADDR                  (AIPS3_OFF_BASE_ADDR+0x30000)
178b1d902a9SAdrian Alonso #define I2C3_BASE_ADDR                  (AIPS3_OFF_BASE_ADDR+0x40000)
179b1d902a9SAdrian Alonso #define I2C4_BASE_ADDR                  (AIPS3_OFF_BASE_ADDR+0x50000)
180b1d902a9SAdrian Alonso #define UART4_IPS_BASE_ADDR             (AIPS3_OFF_BASE_ADDR+0x60000)
181b1d902a9SAdrian Alonso #define UART5_IPS_BASE_ADDR             (AIPS3_OFF_BASE_ADDR+0x70000)
182b1d902a9SAdrian Alonso #define UART6_IPS_BASE_ADDR             (AIPS3_OFF_BASE_ADDR+0x80000)
183b1d902a9SAdrian Alonso #define UART7_IPS_BASE_ADDR             (AIPS3_OFF_BASE_ADDR+0x90000)
184b1d902a9SAdrian Alonso #define MUCPU_IPS_BASE_ADDR             (AIPS3_OFF_BASE_ADDR+0xA0000)
185b1d902a9SAdrian Alonso #define MUDSP_IPS_BASE_ADDR             (AIPS3_OFF_BASE_ADDR+0xB0000)
186b1d902a9SAdrian Alonso #define HS_IPS_BASE_ADDR                (AIPS3_OFF_BASE_ADDR+0xC0000)
187b1d902a9SAdrian Alonso #define USBOH2_PL301_IPS_BASE_ADDR      (AIPS3_OFF_BASE_ADDR+0xD0000)
188b1d902a9SAdrian Alonso #define USBOTG1_IPS_BASE_ADDR		(AIPS3_OFF_BASE_ADDR+0x110000)
189b1d902a9SAdrian Alonso #define USBOTG2_IPS_BASE_ADDR		(AIPS3_OFF_BASE_ADDR+0x120000)
190b1d902a9SAdrian Alonso #define USBHSIC_IPS_BASE_ADDR		(AIPS3_OFF_BASE_ADDR+0x130000)
191b1d902a9SAdrian Alonso #define USDHC1_BASE_ADDR                (AIPS3_OFF_BASE_ADDR+0x140000)
192b1d902a9SAdrian Alonso #define USDHC2_BASE_ADDR                (AIPS3_OFF_BASE_ADDR+0x150000)
193b1d902a9SAdrian Alonso #define USDHC3_BASE_ADDR                (AIPS3_OFF_BASE_ADDR+0x160000)
194b1d902a9SAdrian Alonso #define EMVSIM1_IPS_BASE_ADDR           (AIPS3_OFF_BASE_ADDR+0x190000)
195b1d902a9SAdrian Alonso #define EMVSIM2_IPS_BASE_ADDR           (AIPS3_OFF_BASE_ADDR+0x1A0000)
196b1d902a9SAdrian Alonso #define SIM1_IPS_BASE_ADDR              (AIPS3_OFF_BASE_ADDR+0x190000)
197b1d902a9SAdrian Alonso #define SIM2_IPS_BASE_ADDR              (AIPS3_OFF_BASE_ADDR+0x1A0000)
198b1d902a9SAdrian Alonso #define QSPI1_IPS_BASE_ADDR             (AIPS3_OFF_BASE_ADDR+0x1B0000)
199b1d902a9SAdrian Alonso #define WEIM_IPS_BASE_ADDR              (AIPS3_OFF_BASE_ADDR+0x1C0000)
200b1d902a9SAdrian Alonso #define SDMA_PORT_IPS_HOST_BASE_ADDR    (AIPS3_OFF_BASE_ADDR+0x1D0000)
201b1d902a9SAdrian Alonso #define ENET_IPS_BASE_ADDR              (AIPS3_OFF_BASE_ADDR+0x1E0000)
202b1d902a9SAdrian Alonso #define ENET2_IPS_BASE_ADDR             (AIPS3_OFF_BASE_ADDR+0x1F0000)
203b1d902a9SAdrian Alonso 
204b1d902a9SAdrian Alonso #define AIPS1_BASE_ADDR			AIPS1_ON_BASE_ADDR
205b1d902a9SAdrian Alonso #define AIPS2_BASE_ADDR			AIPS2_ON_BASE_ADDR
206b1d902a9SAdrian Alonso #define AIPS3_BASE_ADDR			AIPS3_ON_BASE_ADDR
207b1d902a9SAdrian Alonso 
208b1d902a9SAdrian Alonso #define SDMA_IPS_HOST_BASE_ADDR         SDMA_PORT_IPS_HOST_BASE_ADDR
209b1d902a9SAdrian Alonso #define SDMA_IPS_HOST_IPS_BASE_ADDR     SDMA_PORT_IPS_HOST_BASE_ADDR
210b1d902a9SAdrian Alonso 
211b1d902a9SAdrian Alonso #define SCTR_BASE_ADDR SYSCNT_CTRL_IPS_BASE_ADDR
212b1d902a9SAdrian Alonso #define DEBUG_MONITOR_BASE_ADDR IP2APB_AXIMON_IPS_BASE_ADDR
213b1d902a9SAdrian Alonso 
214b1d902a9SAdrian Alonso #define USB_BASE_ADDR USBOTG1_IPS_BASE_ADDR
215b1d902a9SAdrian Alonso 
216b1d902a9SAdrian Alonso #define FEC_QUIRK_ENET_MAC
217b1d902a9SAdrian Alonso #define SNVS_LPGPR	0x68
218b1d902a9SAdrian Alonso 
219b1d902a9SAdrian Alonso #if !(defined(__KERNEL_STRICT_NAMES) || defined(__ASSEMBLY__))
220b1d902a9SAdrian Alonso #include <asm/types.h>
221b1d902a9SAdrian Alonso 
222b1d902a9SAdrian Alonso extern void imx_get_mac_from_fuse(int dev_id, unsigned char *mac);
223b1d902a9SAdrian Alonso 
224b1d902a9SAdrian Alonso /* System Reset Controller (SRC) */
225b1d902a9SAdrian Alonso struct src {
226b1d902a9SAdrian Alonso 	u32	scr;
227b1d902a9SAdrian Alonso 	u32 a7rcr0;
228b1d902a9SAdrian Alonso 	u32 a7rcr1;
229b1d902a9SAdrian Alonso 	u32 m4rcr;
230b1d902a9SAdrian Alonso 	u32 reserved1;
231b1d902a9SAdrian Alonso 	u32 ercr;
232b1d902a9SAdrian Alonso 	u32 reserved2;
233b1d902a9SAdrian Alonso 	u32 hsicphy_rcr;
234b1d902a9SAdrian Alonso 	u32 usbophy1_rcr;
235b1d902a9SAdrian Alonso 	u32 usbophy2_rcr;
236b1d902a9SAdrian Alonso 	u32 mipiphy_rcr;
237b1d902a9SAdrian Alonso 	u32 pciephy_rcr;
238b1d902a9SAdrian Alonso 	u32 reserved3[10];
239b1d902a9SAdrian Alonso 	u32	sbmr1;
240b1d902a9SAdrian Alonso 	u32	srsr;
241b1d902a9SAdrian Alonso 	u32	reserved4[2];
242b1d902a9SAdrian Alonso 	u32	sisr;
243b1d902a9SAdrian Alonso 	u32	simr;
244b1d902a9SAdrian Alonso 	u32 sbmr2;
245b1d902a9SAdrian Alonso 	u32 gpr1;
246b1d902a9SAdrian Alonso 	u32 gpr2;
247b1d902a9SAdrian Alonso 	u32 gpr3;
248b1d902a9SAdrian Alonso 	u32 gpr4;
249b1d902a9SAdrian Alonso 	u32 gpr5;
250b1d902a9SAdrian Alonso 	u32 gpr6;
251b1d902a9SAdrian Alonso 	u32 gpr7;
252b1d902a9SAdrian Alonso 	u32 gpr8;
253b1d902a9SAdrian Alonso 	u32 gpr9;
254b1d902a9SAdrian Alonso 	u32 gpr10;
255b1d902a9SAdrian Alonso 	u32 reserved5[985];
256b1d902a9SAdrian Alonso 	u32 ddrc_rcr;
257b1d902a9SAdrian Alonso };
258b1d902a9SAdrian Alonso 
259b1d902a9SAdrian Alonso /* GPR0 Bit Fields */
260b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL0_MASK     0x1u
261b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL0_SHIFT    0
262b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL1_MASK     0x2u
263b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL1_SHIFT    1
264b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL2_MASK     0x4u
265b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL2_SHIFT    2
266b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL3_MASK     0x8u
267b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL3_SHIFT    3
268b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL4_MASK     0x10u
269b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL4_SHIFT    4
270b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL5_MASK     0x20u
271b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL5_SHIFT    5
272b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL6_MASK     0x40u
273b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR0_DMAREQ_MUX_SEL6_SHIFT    6
274b1d902a9SAdrian Alonso /* GPR1 Bit Fields */
275b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ACT_CS0_MASK    0x1u
276b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ACT_CS0_SHIFT   0
277b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS0_MASK     0x6u
278b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS0_SHIFT    1
279b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS0(x)       (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS0_SHIFT))&IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS0_MASK)
280b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ACT_CS1_MASK    0x8u
281b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ACT_CS1_SHIFT   3
282b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS1_MASK     0x30u
283b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS1_SHIFT    4
284b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS1(x)       (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS1_SHIFT))&IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS1_MASK)
285b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ACT_CS2_MASK    0x40u
286b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ACT_CS2_SHIFT   6
287b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS2_MASK     0x180u
288b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS2_SHIFT    7
289b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS2(x)       (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS2_SHIFT))&IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS2_MASK)
290b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ACT_CS3_MASK    0x200u
291b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ACT_CS3_SHIFT   9
292b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS3_MASK     0xC00u
293b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS3_SHIFT    10
294b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS3(x)       (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS3_SHIFT))&IOMUXC_GPR_GPR1_GPR_WEIM_ADDRS3_MASK)
295b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_IRQ_MASK             0x1000u
296b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_IRQ_SHIFT            12
297b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENET1_TX_CLK_SEL_MASK 0x2000u
298b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENET1_TX_CLK_SEL_SHIFT 13
299b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENET2_TX_CLK_SEL_MASK 0x4000u
300b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENET2_TX_CLK_SEL_SHIFT 14
301b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ANATOP_TESTMODE_MASK 0x8000u
302b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ANATOP_TESTMODE_SHIFT 15
303b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_PAD_ADD_DS_MASK      0x10000u
304b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_PAD_ADD_DS_SHIFT     16
305b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENET1_CLK_DIR_MASK   0x20000u
306b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENET1_CLK_DIR_SHIFT  17
307b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENET2_CLK_DIR_MASK   0x40000u
308b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENET2_CLK_DIR_SHIFT  18
309b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_EXC_ERR_RESP_EN_MASK 0x400000u
310b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_EXC_ERR_RESP_EN_SHIFT 22
311b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_TZASC1_SECURE_BOOT_LOCK_MASK 0x800000u
312b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_TZASC1_SECURE_BOOT_LOCK_SHIFT 23
313b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_DBG_ACK_MASK         0x30000000u
314b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_DBG_ACK_SHIFT        28
315b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_DBG_ACK(x)           (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR1_GPR_DBG_ACK_SHIFT))&IOMUXC_GPR_GPR1_GPR_DBG_ACK_MASK)
316b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENABLE_OCRAM_EPDC_MASK 0x40000000u
317b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR1_GPR_ENABLE_OCRAM_EPDC_SHIFT 30
318b1d902a9SAdrian Alonso /* GPR2 Bit Fields */
319b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_PXP_LOWPOWER_MASK 0x1u
320b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_PXP_LOWPOWER_SHIFT 0
321b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_PXP_SD_MASK      0x2u
322b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_PXP_SD_SHIFT     1
323b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_PXP_DS_MASK      0x4u
324b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_PXP_DS_SHIFT     2
325b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_PXP_LS_MASK      0x8u
326b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_PXP_LS_SHIFT     3
327b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_LCDIF_LOWPOWER_MASK 0x10u
328b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_LCDIF_LOWPOWER_SHIFT 4
329b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_LCDIF_SD_MASK    0x20u
330b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_LCDIF_SD_SHIFT   5
331b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_LCDIF_DS_MASK    0x40u
332b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_LCDIF_DS_SHIFT   6
333b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_LCDIF_LS_MASK    0x80u
334b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_LCDIF_LS_SHIFT   7
335b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_EPDC_LOWPOWER_MASK 0x100u
336b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_EPDC_LOWPOWER_SHIFT 8
337b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_EPDC_SD_MASK     0x200u
338b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_EPDC_SD_SHIFT    9
339b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_EPDC_DS_MASK     0x400u
340b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_EPDC_DS_SHIFT    10
341b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_EPDC_LS_MASK     0x800u
342b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_EPDC_LS_SHIFT    11
343b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_CPU_LOWPOWER_MASK 0x1000u
344b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_CPU_LOWPOWER_SHIFT 12
345b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_CPU_SD_MASK      0x2000u
346b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_CPU_SD_SHIFT     13
347b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_CPU_DS_MASK      0x4000u
348b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_CPU_DS_SHIFT     14
349b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_CPU_LS_MASK      0x8000u
350b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MEM_CPU_LS_SHIFT     15
351b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_CLK_DIV_MASK     0xFF0000u
352b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_CLK_DIV_SHIFT    16
353b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_CLK_DIV(x)       (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR2_GPR_MQS_CLK_DIV_SHIFT))&IOMUXC_GPR_GPR2_GPR_MQS_CLK_DIV_MASK)
354b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_SW_RST_MASK      0x1000000u
355b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_SW_RST_SHIFT     24
356b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_EN_MASK          0x2000000u
357b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_EN_SHIFT         25
358b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_OVERSAMPLE_MASK  0x4000000u
359b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_MQS_OVERSAMPLE_SHIFT 26
360b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_RESET_BYPASS_MASK 0x8000000u
361b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_RESET_BYPASS_SHIFT 27
362b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_RESET_MASK      0x10000000u
363b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_RESET_SHIFT     28
364b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_CKE0_MASK       0x20000000u
365b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_CKE0_SHIFT      29
366b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_CKE1_MASK       0x40000000u
367b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_CKE1_SHIFT      30
368b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_CKE_BYPASS_MASK 0x80000000u
369b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR2_GPR_DRAM_CKE_BYPASS_SHIFT 31
370b1d902a9SAdrian Alonso /* GPR3 Bit Fields */
371b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_READ_DATA_WAIT_EN_MASK 0x1u
372b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_READ_DATA_WAIT_EN_SHIFT 0
373b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_READ_ADDR_PIPELINE_EN_MASK 0x2u
374b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_READ_ADDR_PIPELINE_EN_SHIFT 1
375b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_WRITE_DATA_PIPELINE_EN_MASK 0x4u
376b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_WRITE_DATA_PIPELINE_EN_SHIFT 2
377b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_WRITE_ADDR_PIPELINE_EN_MASK 0x8u
378b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_WRITE_ADDR_PIPELINE_EN_SHIFT 3
379b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_S_READ_DATA_WAIT_EN_MASK 0x10u
380b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_S_READ_DATA_WAIT_EN_SHIFT 4
381b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_S_READ_ADDR_PIPELINE_EN_MASK 0x20u
382b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_S_READ_ADDR_PIPELINE_EN_SHIFT 5
383b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_S_WRITE_DATA_PIPELINE_EN_MASK 0x40u
384b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_S_WRITE_DATA_PIPELINE_EN_SHIFT 6
385b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_S_WRITE_ADDR_PIPELINE_EN_MASK 0x80u
386b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_S_WRITE_ADDR_PIPELINE_EN_SHIFT 7
387b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_EPDC_READ_DATA_WAIT_EN_MASK 0x100u
388b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_EPDC_READ_DATA_WAIT_EN_SHIFT 8
389b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_EPDC_READ_ADDR_PIPELINE_EN_MASK 0x200u
390b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_EPDC_READ_ADDR_PIPELINE_EN_SHIFT 9
391b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_EPDC_WRITE_DATA_PIPELINE_EN_MASK 0x400u
392b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_EPDC_WRITE_DATA_PIPELINE_EN_SHIFT 10
393b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_EPDC_WRITE_ADDR_PIPELINE_EN_MASK 0x800u
394b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_EPDC_WRITE_ADDR_PIPELINE_EN_SHIFT 11
395b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_PXP_READ_DATA_WAIT_EN_MASK 0x1000u
396b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_PXP_READ_DATA_WAIT_EN_SHIFT 12
397b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_PXP_READ_ADDR_PIPELINE_EN_MASK 0x2000u
398b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_PXP_READ_ADDR_PIPELINE_EN_SHIFT 13
399b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_PXP_WRITE_DATA_PIPELINE_EN_MASK 0x4000u
400b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_PXP_WRITE_DATA_PIPELINE_EN_SHIFT 14
401b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_PXP_WRITE_ADDR_PIPELINE_EN_MASK 0x8000u
402b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_GPR_OCRAM_CTRL_PXP_WRITE_ADDR_PIPELINE_EN_SHIFT 15
403b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_read_data_wait_en_update_pending_MASK 0x10000u
404b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_read_data_wait_en_update_pending_SHIFT 16
405b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_read_addr_pipeline_en_update_pending_MASK 0x20000u
406b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_read_addr_pipeline_en_update_pending_SHIFT 17
407b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_write_data_pipeline_en_update_pending_MASK 0x40000u
408b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_write_data_pipeline_en_update_pending_SHIFT 18
409b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_write_addr_pipeline_en_update_pending_MASK 0x80000u
410b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_write_addr_pipeline_en_update_pending_SHIFT 19
411b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_s_read_data_wait_en_update_pending_MASK 0x100000u
412b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_s_read_data_wait_en_update_pending_SHIFT 20
413b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_s_read_addr_pipeline_en_update_pending_MASK 0x200000u
414b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_s_read_addr_pipeline_en_update_pending_SHIFT 21
415b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_s_write_data_pipeline_en_update_pending_MASK 0x400000u
416b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_s_write_data_pipeline_en_update_pending_SHIFT 22
417b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_s_write_addr_pipeline_en_update_pending_MASK 0x800000u
418b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_s_write_addr_pipeline_en_update_pending_SHIFT 23
419b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_epdc_read_data_wait_en_update_pending_MASK 0x1000000u
420b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_epdc_read_data_wait_en_update_pending_SHIFT 24
421b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_epdc_read_addr_pipeline_en_update_pending_MASK 0x2000000u
422b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_epdc_read_addr_pipeline_en_update_pending_SHIFT 25
423b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_epdc_write_data_pipeline_en_update_pending_MASK 0x4000000u
424b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_epdc_write_data_pipeline_en_update_pending_SHIFT 26
425b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_epdc_write_addr_pipeline_en_update_pending_MASK 0x8000000u
426b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_epdc_write_addr_pipeline_en_update_pending_SHIFT 27
427b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_pxp_read_data_wait_en_update_pending_MASK 0x10000000u
428b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_pxp_read_data_wait_en_update_pending_SHIFT 28
429b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_pxp_read_addr_pipeline_en_update_pending_MASK 0x20000000u
430b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_pxp_read_addr_pipeline_en_update_pending_SHIFT 29
431b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_pxp_write_data_pipeline_en_update_pending_MASK 0x40000000u
432b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_pxp_write_data_pipeline_en_update_pending_SHIFT 30
433b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_pxp_write_addr_pipeline_en_update_pending_MASK 0x80000000u
434b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR3_ocram_ctrl_pxp_write_addr_pipeline_en_update_pending_SHIFT 31
435b1d902a9SAdrian Alonso /* GPR4 Bit Fields */
436b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_SDMA_IPG_STOP_MASK   0x1u
437b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_SDMA_IPG_STOP_SHIFT  0
438b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_CAN1_IPG_STOP_MASK   0x2u
439b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_CAN1_IPG_STOP_SHIFT  1
440b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_CAN2_IPG_STOP_MASK   0x4u
441b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_CAN2_IPG_STOP_SHIFT  2
442b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_ENET1_IPG_STOP_MASK  0x8u
443b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_ENET1_IPG_STOP_SHIFT 3
444b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_ENET2_IPG_STOP_MASK  0x10u
445b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_ENET2_IPG_STOP_SHIFT 4
446b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_SAI1_IPG_STOP_MASK   0x20u
447b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_SAI1_IPG_STOP_SHIFT  5
448b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_SAI2_IPG_STOP_MASK   0x40u
449b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_SAI2_IPG_STOP_SHIFT  6
450b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_SAI3_IPG_STOP_MASK   0x80u
451b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_GPR_SAI3_IPG_STOP_SHIFT  7
452b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_sdma_ipg_stop_ack_MASK   0x10000u
453b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_sdma_ipg_stop_ack_SHIFT  16
454b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_can1_ipg_stop_ack_MASK   0x20000u
455b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_can1_ipg_stop_ack_SHIFT  17
456b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_can2_ipg_stop_ack_MASK   0x40000u
457b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_can2_ipg_stop_ack_SHIFT  18
458b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_enet1_ipg_stop_ack_MASK  0x80000u
459b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_enet1_ipg_stop_ack_SHIFT 19
460b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_enet2_ipg_stop_ack_MASK  0x100000u
461b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_enet2_ipg_stop_ack_SHIFT 20
462b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_sai1_ipg_stop_ack_MASK   0x200000u
463b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_sai1_ipg_stop_ack_SHIFT  21
464b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_sai2_ipg_stop_ack_MASK   0x400000u
465b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_sai2_ipg_stop_ack_SHIFT  22
466b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_sai3_ipg_stop_ack_MASK   0x800000u
467b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_sai3_ipg_stop_ack_SHIFT  23
468b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_cpu_STANDBYWFI_MASK      0x6000000u
469b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_cpu_STANDBYWFI_SHIFT     25
470b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_cpu_STANDBYWFI(x)        (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR4_cpu_STANDBYWFI_SHIFT))&IOMUXC_GPR_GPR4_cpu_STANDBYWFI_MASK)
471b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_cpu_STANDBYWFE_MASK      0x18000000u
472b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_cpu_STANDBYWFE_SHIFT     27
473b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR4_cpu_STANDBYWFE(x)        (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR4_cpu_STANDBYWFE_SHIFT))&IOMUXC_GPR_GPR4_cpu_STANDBYWFE_MASK)
474b1d902a9SAdrian Alonso /* GPR5 Bit Fields */
475b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_CSI_MUX_CONTROL_MASK 0x10u
476b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_CSI_MUX_CONTROL_SHIFT 4
477b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_LVDS_MUX_CONTROL_MASK 0x20u
478b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_LVDS_MUX_CONTROL_SHIFT 5
479b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_WDOG1_MASK_MASK      0x40u
480b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_WDOG1_MASK_SHIFT     6
481b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_WDOG2_MASK_MASK      0x80u
482b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_WDOG2_MASK_SHIFT     7
483b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_LCDIF_HANDSHAKE_MASK 0x1000u
484b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_LCDIF_HANDSHAKE_SHIFT 12
485b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_PCIE_BTNRST_MASK     0x80000u
486b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_PCIE_BTNRST_SHIFT    19
487b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_WDOG3_MASK_MASK      0x100000u
488b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_WDOG3_MASK_SHIFT     20
489b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_LCDIF_CSI_VSYNC_SEL_MASK 0x200000u
490b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_LCDIF_CSI_VSYNC_SEL_SHIFT 21
491b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_WDOG4_MASK_MASK      0x400000u
492b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_WDOG4_MASK_SHIFT     22
493b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_GPT4_CAPIN1_SEL_MASK 0x1000000u
494b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_GPT4_CAPIN1_SEL_SHIFT 24
495b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_GPT4_CAPIN2_SEL_MASK 0x2000000u
496b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_GPT4_CAPIN2_SEL_SHIFT 25
497b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_ENET1_EVENT3IN_SEL_MASK 0x4000000u
498b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_ENET1_EVENT3IN_SEL_SHIFT 26
499b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_ENET2_EVENT3IN_SEL_MASK 0x8000000u
500b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_ENET2_EVENT3IN_SEL_SHIFT 27
501b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_REF_1M_CLK_GPT1_MASK 0x10000000u
502b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_REF_1M_CLK_GPT1_SHIFT 28
503b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_REF_1M_CLK_GPT2_MASK 0x20000000u
504b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_REF_1M_CLK_GPT2_SHIFT 29
505b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_REF_1M_CLK_GPT3_MASK 0x40000000u
506b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_REF_1M_CLK_GPT3_SHIFT 30
507b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_REF_1M_CLK_GPT4_MASK 0x80000000u
508b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR5_GPR_REF_1M_CLK_GPT4_SHIFT 31
509b1d902a9SAdrian Alonso /* GPR6 Bit Fields */
510b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR6_GPR_ARCACHE_PXP6_MASK    0x1u
511b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR6_GPR_ARCACHE_PXP6_SHIFT   0
512b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR6_GPR_AWCACHE_PXP6_MASK    0x2u
513b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR6_GPR_AWCACHE_PXP6_SHIFT   1
514b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR6_GPR_ARCACHE_PXP6_EN_MASK 0x4u
515b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR6_GPR_ARCACHE_PXP6_EN_SHIFT 2
516b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR6_GPR_AWCACHE_PXP6_EN_MASK 0x8u
517b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR6_GPR_AWCACHE_PXP6_EN_SHIFT 3
518b1d902a9SAdrian Alonso /* GPR7 Bit Fields */
519b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_pwd_ldo_usb_1p0_MASK 0x1u
520b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_pwd_ldo_usb_1p0_SHIFT 0
521b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_lowpwr_ldo_usb_1p0_MASK 0x2u
522b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_lowpwr_ldo_usb_1p0_SHIFT 1
523b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_en_ilimit_ldo_usb_1p0_MASK 0x4u
524b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_en_ilimit_ldo_usb_1p0_SHIFT 2
525b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_en_pwrupload_ldo_usb_1p0_MASK 0x8u
526b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_en_pwrupload_ldo_usb_1p0_SHIFT 3
527b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_chrg_det_test_MASK 0x30u
528b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_chrg_det_test_SHIFT 4
529b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd1_chrg_det_test(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR7_GPR_chd1_chrg_det_test_SHIFT))&IOMUXC_GPR_GPR7_GPR_chd1_chrg_det_test_MASK)
530b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_pwd_ldo_usb_1p0_MASK 0x40u
531b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_pwd_ldo_usb_1p0_SHIFT 6
532b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_lowpwr_ldo_usb_1p0_MASK 0x80u
533b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_lowpwr_ldo_usb_1p0_SHIFT 7
534b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_en_ilimit_ldo_usb_1p0_MASK 0x100u
535b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_en_ilimit_ldo_usb_1p0_SHIFT 8
536b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_en_pwrupload_ldo_usb_1p0_MASK 0x200u
537b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_en_pwrupload_ldo_usb_1p0_SHIFT 9
538b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_chrg_det_test_MASK 0xC00u
539b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_chrg_det_test_SHIFT 10
540b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_chd2_chrg_det_test(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR7_GPR_chd2_chrg_det_test_SHIFT))&IOMUXC_GPR_GPR7_GPR_chd2_chrg_det_test_MASK)
541b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_pcie_clk_rst_fix_lnkrst_disable_MASK 0x1000u
542b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_pcie_clk_rst_fix_lnkrst_disable_SHIFT 12
543b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_pcie_clk_rst_fix_perst_disable_MASK 0x2000u
544b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR7_GPR_pcie_clk_rst_fix_perst_disable_SHIFT 13
545b1d902a9SAdrian Alonso /* GPR8 Bit Fields */
546b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR8_ddr_phy_ctrl_wake_up_MASK 0xF8u
547b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR8_ddr_phy_ctrl_wake_up_SHIFT 3
548b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR8_ddr_phy_ctrl_wake_up(x)  (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR8_ddr_phy_ctrl_wake_up_SHIFT))&IOMUXC_GPR_GPR8_ddr_phy_ctrl_wake_up_MASK)
549b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR8_ddr_phy_dfi_init_start_MASK 0x100u
550b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR8_ddr_phy_dfi_init_start_SHIFT 8
551b1d902a9SAdrian Alonso /* GPR9 Bit Fields */
552b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR9_GPR_TZASC1_MUX_CONTROL_MASK 0x1u
553b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR9_GPR_TZASC1_MUX_CONTROL_SHIFT 0
554b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR9_ddr_phy_ctrl_pd_MASK     0x3Eu
555b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR9_ddr_phy_ctrl_pd_SHIFT    1
556b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR9_ddr_phy_ctrl_pd(x)       (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR9_ddr_phy_ctrl_pd_SHIFT))&IOMUXC_GPR_GPR9_ddr_phy_ctrl_pd_MASK)
557b1d902a9SAdrian Alonso /* GPR10 Bit Fields */
558b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR0_BF0_MASK           0x1u
559b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR0_BF0_SHIFT          0
560b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_DBG_EN_MASK         0x2u
561b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_DBG_EN_SHIFT        1
562b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_SEC_ERR_RESP_EN_MASK 0x4u
563b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_SEC_ERR_RESP_EN_SHIFT 2
564b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_OCRAM_CTRL_EPDC_OCRAM_TZ_SECURE_REGION0_MASK 0x8u
565b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_OCRAM_CTRL_EPDC_OCRAM_TZ_SECURE_REGION0_SHIFT 3
566b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_OCRAM_CTRL_EPDC_OCRAM_TZ_SECURE_REGION1_MASK 0x3F0u
567b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_OCRAM_CTRL_EPDC_OCRAM_TZ_SECURE_REGION1_SHIFT 4
568b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR10_GPR_OCRAM_CTRL_EPDC_OCRAM_TZ_SECURE_REGION1(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR10_GPR_OCRAM_CTRL_EPDC_OCRAM_TZ_SECURE_REGION1_SHIFT))&IOMUXC_GPR_GPR10_GPR_OCRAM_CTRL_EPDC_OCRAM_TZ_SECURE_REGION1_MASK)
569b1d902a9SAdrian Alonso /* GPR11 Bit Fields */
570b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_OCRAM_TZ_SECURE_REGION0_MASK 0x1u
571b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_OCRAM_TZ_SECURE_REGION0_SHIFT 0
572b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_OCRAM_TZ_SECURE_REGION1_MASK 0x3Eu
573b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_OCRAM_TZ_SECURE_REGION1_SHIFT 1
574b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_OCRAM_TZ_SECURE_REGION1(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_OCRAM_TZ_SECURE_REGION1_SHIFT))&IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_OCRAM_TZ_SECURE_REGION1_MASK)
575b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_PXP_OCRAM_TZ_SECURE_REGION0_MASK 0x40u
576b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_PXP_OCRAM_TZ_SECURE_REGION0_SHIFT 6
577b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_PXP_OCRAM_TZ_SECURE_REGION1_MASK 0x380u
578b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_PXP_OCRAM_TZ_SECURE_REGION1_SHIFT 7
579b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_PXP_OCRAM_TZ_SECURE_REGION1(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_PXP_OCRAM_TZ_SECURE_REGION1_SHIFT))&IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_PXP_OCRAM_TZ_SECURE_REGION1_MASK)
580b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_S_OCRAM_TZ_SECURE_REGION0_MASK 0x400u
581b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_S_OCRAM_TZ_SECURE_REGION0_SHIFT 10
582b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_S_OCRAM_TZ_SECURE_REGION1_MASK 0x3800u
583b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_S_OCRAM_TZ_SECURE_REGION1_SHIFT 11
584b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_S_OCRAM_TZ_SECURE_REGION1(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_S_OCRAM_TZ_SECURE_REGION1_SHIFT))&IOMUXC_GPR_GPR11_GPR_OCRAM_CTRL_S_OCRAM_TZ_SECURE_REGION1_MASK)
585b1d902a9SAdrian Alonso /* GPR12 Bit Fields */
586b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_TRSV_REG_RST_CH0_MASK 0x1u
587b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_TRSV_REG_RST_CH0_SHIFT 0
588b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_TRSV_RST_CH0_MASK 0x2u
589b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_TRSV_RST_CH0_SHIFT 1
590b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_SSC_EN_MASK 0x8u
591b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_SSC_EN_SHIFT 3
592b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_CMN_REG_RST_MASK 0x10u
593b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_CMN_REG_RST_SHIFT 4
594b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_REFCLK_SEL_MASK 0x20u
595b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_PHY_REFCLK_SEL_SHIFT 5
596b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DEVICE_TYPE_MASK 0xF000u
597b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DEVICE_TYPE_SHIFT 12
598b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DEVICE_TYPE(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DEVICE_TYPE_SHIFT))&IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DEVICE_TYPE_MASK)
599b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_STATUS_BUS_SELECT_MASK 0x1E0000u
600b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_STATUS_BUS_SELECT_SHIFT 17
601b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_STATUS_BUS_SELECT(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_STATUS_BUS_SELECT_SHIFT))&IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_STATUS_BUS_SELECT_MASK)
602b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_CTRL_BUS_MASK 0xE00000u
603b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_CTRL_BUS_SHIFT 21
604b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_CTRL_BUS(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_CTRL_BUS_SHIFT))&IOMUXC_GPR_GPR12_GPR_PCIE_CTRL_DIAG_CTRL_BUS_MASK)
605b1d902a9SAdrian Alonso /* GPR13 Bit Fields */
606b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_USDHC_MASK  0x1u
607b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_USDHC_SHIFT 0
608b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_USDHC_MASK  0x2u
609b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_USDHC_SHIFT 1
610b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_PXP_MASK    0x4u
611b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_PXP_SHIFT   2
612b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_PXP_MASK    0x8u
613b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_PXP_SHIFT   3
614b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_PCIE_MASK   0x10u
615b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_PCIE_SHIFT  4
616b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_PCIE_MASK   0x20u
617b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_PCIE_SHIFT  5
618b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_LCDIF_MASK  0x40u
619b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_LCDIF_SHIFT 6
620b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_EPDC_MASK   0x80u
621b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_EPDC_SHIFT  7
622b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_PXP_EN_MASK 0x100u
623b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_PXP_EN_SHIFT 8
624b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_PXP_EN_MASK 0x200u
625b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_PXP_EN_SHIFT 9
626b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_PCIE_EN_MASK 0x400u
627b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_PCIE_EN_SHIFT 10
628b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_PCIE_EN_MASK 0x800u
629b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_PCIE_EN_SHIFT 11
630b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_LCDIF_EN_MASK 0x1000u
631b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_LCDIF_EN_SHIFT 12
632b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_EPDC_EN_MASK 0x2000u
633b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_ARCACHE_EPDC_EN_SHIFT 13
634b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_EPDC_MASK   0x4000u
635b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_EPDC_SHIFT  14
636b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_EPDC_EN_MASK 0x8000u
637b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_AWCACHE_EPDC_EN_SHIFT 15
638b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_AFC_CODE_OUT_CH0_MASK 0xFF0000u
639b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_AFC_CODE_OUT_CH0_SHIFT 16
640b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_AFC_CODE_OUT_CH0(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR13_GPR_PCIE_PHY_AFC_CODE_OUT_CH0_SHIFT))&IOMUXC_GPR_GPR13_GPR_PCIE_PHY_AFC_CODE_OUT_CH0_MASK)
641b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_VCO_BAND_MASK 0xF000000u
642b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_VCO_BAND_SHIFT 24
643b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_VCO_BAND(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR13_GPR_PCIE_PHY_VCO_BAND_SHIFT))&IOMUXC_GPR_GPR13_GPR_PCIE_PHY_VCO_BAND_MASK)
644b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_PMA_CDR_LOCKED_CH0_MASK 0x10000000u
645b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_PMA_CDR_LOCKED_CH0_SHIFT 28
646b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_PMA_RX_PRESENT_CH0_MASK 0x20000000u
647b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_PMA_RX_PRESENT_CH0_SHIFT 29
648b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_CDR_VCO_MON_CH0_MASK 0x40000000u
649b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_CDR_VCO_MON_CH0_SHIFT 30
650b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_PCS_REFCLK_DISABLE_MASK 0x80000000u
651b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR13_GPR_PCIE_PHY_PCS_REFCLK_DISABLE_SHIFT 31
652b1d902a9SAdrian Alonso /* GPR14 Bit Fields */
653b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR14_GPR_SIM1_SIMV2_EMV_SEL_MASK 0x1u
654b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR14_GPR_SIM1_SIMV2_EMV_SEL_SHIFT 0
655b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR14_GPR_SIM2_SIMV2_EMV_SEL_MASK 0x2u
656b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR14_GPR_SIM2_SIMV2_EMV_SEL_SHIFT 1
657b1d902a9SAdrian Alonso /* GPR15 Bit Fields */
658b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_VBLK_FLAG_MASK 0x1u
659b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_VBLK_FLAG_SHIFT 0
660b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_AUTO_SEL_MASK 0x2u
661b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_AUTO_SEL_SHIFT 1
662b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_DESKEW_CNT_SET_MASK 0x3FFCu
663b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_DESKEW_CNT_SET_SHIFT 2
664b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_DESKEW_CNT_SET(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR15_GPR_LVDS_I_DESKEW_CNT_SET_SHIFT))&IOMUXC_GPR_GPR15_GPR_LVDS_I_DESKEW_CNT_SET_MASK)
665b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_LOCK_PPM_SET_MASK 0x3F0000u
666b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_LOCK_PPM_SET_SHIFT 16
667b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR15_GPR_LVDS_I_LOCK_PPM_SET(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR15_GPR_LVDS_I_LOCK_PPM_SET_SHIFT))&IOMUXC_GPR_GPR15_GPR_LVDS_I_LOCK_PPM_SET_MASK)
668b1d902a9SAdrian Alonso /* GPR16 Bit Fields */
669b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SKEW_REG_CUR_MASK 0x3u
670b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SKEW_REG_CUR_SHIFT 0
671b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SKEW_REG_CUR(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR16_GPR_LVDS_SKEW_REG_CUR_SHIFT))&IOMUXC_GPR_GPR16_GPR_LVDS_SKEW_REG_CUR_MASK)
672b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SEL_DATABF_MASK 0x4u
673b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SEL_DATABF_SHIFT 2
674b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_CNTB_TDLY_MASK 0x8u
675b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_CNTB_TDLY_SHIFT 3
676b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SKEW_EN_H_MASK 0x10u
677b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SKEW_EN_H_SHIFT 4
678b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SKEWINI_MASK   0x20u
679b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SKEWINI_SHIFT  5
680b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SK_BIAS_MASK   0x3C0u
681b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SK_BIAS_SHIFT  6
682b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SK_BIAS(x)     (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR16_GPR_LVDS_SK_BIAS_SHIFT))&IOMUXC_GPR_GPR16_GPR_LVDS_SK_BIAS_MASK)
683b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_AUTO_DSK_SEL_MASK 0x400u
684b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_AUTO_DSK_SEL_SHIFT 10
685b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_LOCK_CNT_MASK  0x800u
686b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_LOCK_CNT_SHIFT 11
687b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_OUTCON_MASK    0x1000u
688b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_OUTCON_SHIFT   12
689b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_FC_CODE_MASK   0xE000u
690b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_FC_CODE_SHIFT  13
691b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_FC_CODE(x)     (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR16_GPR_LVDS_FC_CODE_SHIFT))&IOMUXC_GPR_GPR16_GPR_LVDS_FC_CODE_MASK)
692b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SRC_TRH_MASK   0x10000u
693b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_SRC_TRH_SHIFT  16
694b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_VOD_HIGH_S_MASK 0x20000u
695b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_VOD_HIGH_S_SHIFT 17
696b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_CNNCT_CNT_MASK 0x180000u
697b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_CNNCT_CNT_SHIFT 19
698b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_CNNCT_CNT(x)   (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR16_GPR_LVDS_CNNCT_CNT_SHIFT))&IOMUXC_GPR_GPR16_GPR_LVDS_CNNCT_CNT_MASK)
699b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_CNNCT_MODE_SEL_MASK 0x200000u
700b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_CNNCT_MODE_SEL_SHIFT 21
701b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_FLT_CNT_MASK   0x400000u
702b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_FLT_CNT_SHIFT  22
703b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_VOD_ONLY_CNT_MASK 0x800000u
704b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR16_GPR_LVDS_VOD_ONLY_CNT_SHIFT 23
705b1d902a9SAdrian Alonso /* GPR17 Bit Fields */
706b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR17_GPR_LVDS_CNT_PEN_H_MASK 0xFFu
707b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR17_GPR_LVDS_CNT_PEN_H_SHIFT 0
708b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR17_GPR_LVDS_CNT_PEN_H(x)   (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR17_GPR_LVDS_CNT_PEN_H_SHIFT))&IOMUXC_GPR_GPR17_GPR_LVDS_CNT_PEN_H_MASK)
709b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR17_GPR_LVDS_CNT_VOD_H_MASK 0xFF00u
710b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR17_GPR_LVDS_CNT_VOD_H_SHIFT 8
711b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR17_GPR_LVDS_CNT_VOD_H(x)   (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR17_GPR_LVDS_CNT_VOD_H_SHIFT))&IOMUXC_GPR_GPR17_GPR_LVDS_CNT_VOD_H_MASK)
712b1d902a9SAdrian Alonso /* GPR18 Bit Fields */
713b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CH_SEL_MASK 0x7u
714b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CH_SEL_SHIFT 0
715b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CH_SEL(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CH_SEL_SHIFT))&IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CH_SEL_MASK)
716b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_DATA_INV_MASK 0x18u
717b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_DATA_INV_SHIFT 3
718b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_DATA_INV(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_DATA_INV_SHIFT))&IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_DATA_INV_MASK)
719b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CLK_INV_MASK 0x60u
720b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CLK_INV_SHIFT 5
721b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CLK_INV(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CLK_INV_SHIFT))&IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_CLK_INV_MASK)
722b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_SKEW_CTRL_MASK 0x3F00u
723b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_SKEW_CTRL_SHIFT 8
724b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_SKEW_CTRL(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_SKEW_CTRL_SHIFT))&IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_SKEW_CTRL_MASK)
725b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_FORCE_ERROR_MASK 0x4000u
726b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_FORCE_ERROR_SHIFT 14
727b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_USER_PATTERN_MASK 0x7F0000u
728b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_USER_PATTERN_SHIFT 16
729b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_USER_PATTERN(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_USER_PATTERN_SHIFT))&IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_USER_PATTERN_MASK)
730b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_PAT_SEL_MASK 0x3000000u
731b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_PAT_SEL_SHIFT 24
732b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_PAT_SEL(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_PAT_SEL_SHIFT))&IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_PAT_SEL_MASK)
733b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_EN_MASK 0x4000000u
734b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_EN_SHIFT 26
735b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_RESETB_MASK 0x8000000u
736b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_I_BIST_RESETB_SHIFT 27
737b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_DLYS_BST_MASK  0x10000000u
738b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_DLYS_BST_SHIFT 28
739b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_SKINI_BST_MASK 0x20000000u
740b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR18_GPR_LVDS_SKINI_BST_SHIFT 29
741b1d902a9SAdrian Alonso /* GPR19 Bit Fields */
742b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_STATUS_MASK 0x1u
743b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_STATUS_SHIFT 0
744b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_ERR_COUNT_MASK 0xFF00u
745b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_ERR_COUNT_SHIFT 8
746b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_ERR_COUNT(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_ERR_COUNT_SHIFT))&IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_ERR_COUNT_MASK)
747b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_SYNC_MASK 0x10000u
748b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_O_BIST_SYNC_SHIFT 16
749b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_MON_FOR_CNNCT_MASK 0x20000u
750b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR19_GPR_LVDS_MON_FOR_CNNCT_SHIFT 17
751b1d902a9SAdrian Alonso /* GPR20 Bit Fields */
752b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_P_MASK         0x3Fu
753b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_P_SHIFT        0
754b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_P(x)           (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR20_GPR_LVDS_P_SHIFT))&IOMUXC_GPR_GPR20_GPR_LVDS_P_MASK)
755b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_M_MASK         0x3F00u
756b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_M_SHIFT        8
757b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_M(x)           (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR20_GPR_LVDS_M_SHIFT))&IOMUXC_GPR_GPR20_GPR_LVDS_M_MASK)
758b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_S_MASK         0x30000u
759b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_S_SHIFT        16
760b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_S(x)           (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR20_GPR_LVDS_S_SHIFT))&IOMUXC_GPR_GPR20_GPR_LVDS_S_MASK)
761b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_VSEL_MASK      0x1000000u
762b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_VSEL_SHIFT     24
763b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_CK_POL_SEL_MASK 0x2000000u
764b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_CK_POL_SEL_SHIFT 25
765b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_I_TX2801X_DUMMY_MASK 0x38000000u
766b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_I_TX2801X_DUMMY_SHIFT 27
767b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR20_GPR_LVDS_I_TX2801X_DUMMY(x) (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR20_GPR_LVDS_I_TX2801X_DUMMY_SHIFT))&IOMUXC_GPR_GPR20_GPR_LVDS_I_TX2801X_DUMMY_MASK)
768b1d902a9SAdrian Alonso /* GPR21 Bit Fields */
769b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC0_MASK      0x7u
770b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC0_SHIFT     0
771b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC0(x)        (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR21_GPR_LVDS_SKC0_SHIFT))&IOMUXC_GPR_GPR21_GPR_LVDS_SKC0_MASK)
772b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC1_MASK      0x38u
773b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC1_SHIFT     3
774b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC1(x)        (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR21_GPR_LVDS_SKC1_SHIFT))&IOMUXC_GPR_GPR21_GPR_LVDS_SKC1_MASK)
775b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC2_MASK      0x1C0u
776b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC2_SHIFT     6
777b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC2(x)        (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR21_GPR_LVDS_SKC2_SHIFT))&IOMUXC_GPR_GPR21_GPR_LVDS_SKC2_MASK)
778b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKCCK_MASK     0xE00u
779b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKCCK_SHIFT    9
780b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKCCK(x)       (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR21_GPR_LVDS_SKCCK_SHIFT))&IOMUXC_GPR_GPR21_GPR_LVDS_SKCCK_MASK)
781b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC3_MASK      0x7000u
782b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC3_SHIFT     12
783b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC3(x)        (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR21_GPR_LVDS_SKC3_SHIFT))&IOMUXC_GPR_GPR21_GPR_LVDS_SKC3_MASK)
784b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC4_MASK      0x38000u
785b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC4_SHIFT     15
786b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_GPR_LVDS_SKC4(x)        (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR21_GPR_LVDS_SKC4_SHIFT))&IOMUXC_GPR_GPR21_GPR_LVDS_SKC4_MASK)
787b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_SJC_BYPASS_CJTAGC_MASK  0x40000u
788b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_SJC_BYPASS_CJTAGC_SHIFT 18
789b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_DAP_BYPASS_CJTAGC_MASK  0x80000u
790b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR21_DAP_BYPASS_CJTAGC_SHIFT 19
791b1d902a9SAdrian Alonso /* GPR22 Bit Fields */
792b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_ddrc_mrr_data_out_MASK  0xFF0000u
793b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_ddrc_mrr_data_out_SHIFT 16
794b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_ddrc_mrr_data_out(x)    (((uint32_t)(((uint32_t)(x))<<IOMUXC_GPR_GPR22_ddrc_mrr_data_out_SHIFT))&IOMUXC_GPR_GPR22_ddrc_mrr_data_out_MASK)
795b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_ddrc_mrr_valid_out_MASK 0x1000000u
796b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_ddrc_mrr_valid_out_SHIFT 24
797b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_ddr_phy_dfi_init_complete_MASK 0x2000000u
798b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_ddr_phy_dfi_init_complete_SHIFT 25
799b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_GPR_chd2_dvdd_usb_stable_MASK 0x4000000u
800b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_GPR_chd2_dvdd_usb_stable_SHIFT 26
801b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_aux_chrg_det_2_usb_iso_enable_1_MASK 0x8000000u
802b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_aux_chrg_det_2_usb_iso_enable_1_SHIFT 27
803b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_GPR_chd1_dvdd_usb_stable_MASK 0x10000000u
804b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_GPR_chd1_dvdd_usb_stable_SHIFT 28
805b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_aux_chrg_det_1_usb_iso_enable_1_MASK 0x20000000u
806b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_aux_chrg_det_1_usb_iso_enable_1_SHIFT 29
807b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_GPR_PCIE_PHY_PLL_LOCKED_MASK 0x80000000u
808b1d902a9SAdrian Alonso #define IOMUXC_GPR_GPR22_GPR_PCIE_PHY_PLL_LOCKED_SHIFT 31
809b1d902a9SAdrian Alonso 
810b1d902a9SAdrian Alonso #define IMX7D_GPR5_CSI1_MUX_CTRL_MASK			(0x1 << 4)
811b1d902a9SAdrian Alonso #define IMX7D_GPR5_CSI1_MUX_CTRL_PARALLEL_CSI		(0x0 << 4)
812b1d902a9SAdrian Alonso #define IMX7D_GPR5_CSI1_MUX_CTRL_MIPI_CSI		(0x1 << 4)
813b1d902a9SAdrian Alonso 
814b1d902a9SAdrian Alonso struct iomuxc {
815b1d902a9SAdrian Alonso 	u32 gpr[23];
816b1d902a9SAdrian Alonso 	/* mux and pad registers */
817b1d902a9SAdrian Alonso };
818b1d902a9SAdrian Alonso 
819b1d902a9SAdrian Alonso struct iomuxc_gpr_base_regs {
820b1d902a9SAdrian Alonso 	u32 gpr[23];        /* 0x000 */
821b1d902a9SAdrian Alonso };
822b1d902a9SAdrian Alonso 
823b1d902a9SAdrian Alonso /* ECSPI registers */
824b1d902a9SAdrian Alonso struct cspi_regs {
825b1d902a9SAdrian Alonso 	u32 rxdata;
826b1d902a9SAdrian Alonso 	u32 txdata;
827b1d902a9SAdrian Alonso 	u32 ctrl;
828b1d902a9SAdrian Alonso 	u32 cfg;
829b1d902a9SAdrian Alonso 	u32 intr;
830b1d902a9SAdrian Alonso 	u32 dma;
831b1d902a9SAdrian Alonso 	u32 stat;
832b1d902a9SAdrian Alonso 	u32 period;
833b1d902a9SAdrian Alonso };
834b1d902a9SAdrian Alonso 
835b1d902a9SAdrian Alonso /*
836b1d902a9SAdrian Alonso  * CSPI register definitions
837b1d902a9SAdrian Alonso  */
838b1d902a9SAdrian Alonso #define MXC_ECSPI
839b1d902a9SAdrian Alonso #define MXC_CSPICTRL_EN		(1 << 0)
840b1d902a9SAdrian Alonso #define MXC_CSPICTRL_MODE	(1 << 1)
841b1d902a9SAdrian Alonso #define MXC_CSPICTRL_XCH	(1 << 2)
842b1d902a9SAdrian Alonso #define MXC_CSPICTRL_MODE_MASK (0xf << 4)
843b1d902a9SAdrian Alonso #define MXC_CSPICTRL_CHIPSELECT(x)	(((x) & 0x3) << 12)
844b1d902a9SAdrian Alonso #define MXC_CSPICTRL_BITCOUNT(x)	(((x) & 0xfff) << 20)
845b1d902a9SAdrian Alonso #define MXC_CSPICTRL_PREDIV(x)	(((x) & 0xF) << 12)
846b1d902a9SAdrian Alonso #define MXC_CSPICTRL_POSTDIV(x)	(((x) & 0xF) << 8)
847b1d902a9SAdrian Alonso #define MXC_CSPICTRL_SELCHAN(x)	(((x) & 0x3) << 18)
848b1d902a9SAdrian Alonso #define MXC_CSPICTRL_MAXBITS	0xfff
849b1d902a9SAdrian Alonso #define MXC_CSPICTRL_TC		(1 << 7)
850b1d902a9SAdrian Alonso #define MXC_CSPICTRL_RXOVF	(1 << 6)
851b1d902a9SAdrian Alonso #define MXC_CSPIPERIOD_32KHZ	(1 << 15)
852b1d902a9SAdrian Alonso #define MAX_SPI_BYTES	32
853b1d902a9SAdrian Alonso 
854b1d902a9SAdrian Alonso /* Bit position inside CTRL register to be associated with SS */
855b1d902a9SAdrian Alonso #define MXC_CSPICTRL_CHAN	18
856b1d902a9SAdrian Alonso 
857b1d902a9SAdrian Alonso /* Bit position inside CON register to be associated with SS */
858b1d902a9SAdrian Alonso #define MXC_CSPICON_PHA		0  /* SCLK phase control */
859b1d902a9SAdrian Alonso #define MXC_CSPICON_POL		4  /* SCLK polarity */
860b1d902a9SAdrian Alonso #define MXC_CSPICON_SSPOL	12 /* SS polarity */
861b1d902a9SAdrian Alonso #define MXC_CSPICON_CTL		20 /* inactive state of SCLK */
862b1d902a9SAdrian Alonso 
863b1d902a9SAdrian Alonso #define MXC_SPI_BASE_ADDRESSES \
864b1d902a9SAdrian Alonso 	ECSPI1_BASE_ADDR, \
865b1d902a9SAdrian Alonso 	ECSPI2_BASE_ADDR, \
866b1d902a9SAdrian Alonso 	ECSPI3_BASE_ADDR, \
867b1d902a9SAdrian Alonso 	ECSPI4_BASE_ADDR
868b1d902a9SAdrian Alonso 
869*7de47036SPeng Fan #define CSU_INIT_SEC_LEVEL0	0x00FF00FF
870*7de47036SPeng Fan #define CSU_NUM_REGS		64
871*7de47036SPeng Fan 
872b1d902a9SAdrian Alonso struct ocotp_regs {
873b1d902a9SAdrian Alonso 	u32 ctrl;
874b1d902a9SAdrian Alonso 	u32 ctrl_set;
875b1d902a9SAdrian Alonso 	u32 ctrl_clr;
876b1d902a9SAdrian Alonso 	u32 ctrl_tog;
877b1d902a9SAdrian Alonso 	u32 timing;
878b1d902a9SAdrian Alonso 	u32 rsvd0[3];
879b1d902a9SAdrian Alonso 	u32 data0;
880b1d902a9SAdrian Alonso 	u32 rsvd1[3];
881b1d902a9SAdrian Alonso 	u32 data1;
882b1d902a9SAdrian Alonso 	u32 rsvd2[3];
883b1d902a9SAdrian Alonso 	u32 data2;
884b1d902a9SAdrian Alonso 	u32 rsvd3[3];
885b1d902a9SAdrian Alonso 	u32 data3;
886b1d902a9SAdrian Alonso 	u32 rsvd4[3];
887b1d902a9SAdrian Alonso 	u32 read_ctrl;
888b1d902a9SAdrian Alonso 	u32 rsvd5[3];
889b1d902a9SAdrian Alonso 	u32 read_fuse_data0;
890b1d902a9SAdrian Alonso 	u32 rsvd6[3];
891b1d902a9SAdrian Alonso 	u32 read_fuse_data1;
892b1d902a9SAdrian Alonso 	u32 rsvd7[3];
893b1d902a9SAdrian Alonso 	u32 read_fuse_data2;
894b1d902a9SAdrian Alonso 	u32 rsvd8[3];
895b1d902a9SAdrian Alonso 	u32 read_fuse_data3;
896b1d902a9SAdrian Alonso 	u32 rsvd9[3];
897b1d902a9SAdrian Alonso 	u32 sw_sticky;
898b1d902a9SAdrian Alonso 	u32 rsvd10[3];
899b1d902a9SAdrian Alonso 	u32 scs;
900b1d902a9SAdrian Alonso 	u32 scs_set;
901b1d902a9SAdrian Alonso 	u32 scs_clr;
902b1d902a9SAdrian Alonso 	u32 scs_tog;
903b1d902a9SAdrian Alonso 	u32 crc_addr;
904b1d902a9SAdrian Alonso 	u32 rsvd11[3];
905b1d902a9SAdrian Alonso 	u32 crc_value;
906b1d902a9SAdrian Alonso 	u32 rsvd12[3];
907b1d902a9SAdrian Alonso 	u32 version;
908b1d902a9SAdrian Alonso 	u32 rsvd13[0xc3];
909b1d902a9SAdrian Alonso 
910b1d902a9SAdrian Alonso 	struct fuse_bank {	/* offset 0x400 */
911b1d902a9SAdrian Alonso 		u32 fuse_regs[0x10];
912b1d902a9SAdrian Alonso 	} bank[16];
913b1d902a9SAdrian Alonso };
914b1d902a9SAdrian Alonso 
915b1d902a9SAdrian Alonso struct fuse_bank0_regs {
916b1d902a9SAdrian Alonso 	u32 lock;
917b1d902a9SAdrian Alonso 	u32 rsvd0[3];
918b1d902a9SAdrian Alonso 	u32 tester0;
919b1d902a9SAdrian Alonso 	u32 rsvd1[3];
920b1d902a9SAdrian Alonso 	u32 tester1;
921b1d902a9SAdrian Alonso 	u32 rsvd2[3];
922b1d902a9SAdrian Alonso 	u32 tester2;
923b1d902a9SAdrian Alonso 	u32 rsvd3[3];
924b1d902a9SAdrian Alonso };
925b1d902a9SAdrian Alonso 
926b1d902a9SAdrian Alonso struct fuse_bank1_regs {
927b1d902a9SAdrian Alonso 	u32 tester3;
928b1d902a9SAdrian Alonso 	u32 rsvd0[3];
929b1d902a9SAdrian Alonso 	u32 tester4;
930b1d902a9SAdrian Alonso 	u32 rsvd1[3];
931b1d902a9SAdrian Alonso 	u32 tester5;
932b1d902a9SAdrian Alonso 	u32 rsvd2[3];
933b1d902a9SAdrian Alonso 	u32 cfg0;
934b1d902a9SAdrian Alonso 	u32 rsvd3[3];
935b1d902a9SAdrian Alonso };
936b1d902a9SAdrian Alonso 
937b1d902a9SAdrian Alonso struct fuse_bank2_regs {
938b1d902a9SAdrian Alonso 	u32 cfg1;
939b1d902a9SAdrian Alonso 	u32 rsvd0[3];
940b1d902a9SAdrian Alonso 	u32 cfg2;
941b1d902a9SAdrian Alonso 	u32 rsvd1[3];
942b1d902a9SAdrian Alonso 	u32 cfg3;
943b1d902a9SAdrian Alonso 	u32 rsvd2[3];
944b1d902a9SAdrian Alonso 	u32 cfg4;
945b1d902a9SAdrian Alonso 	u32 rsvd3[3];
946b1d902a9SAdrian Alonso };
947b1d902a9SAdrian Alonso 
948b1d902a9SAdrian Alonso struct fuse_bank3_regs {
949b1d902a9SAdrian Alonso 	u32 mem_trim0;
950b1d902a9SAdrian Alonso 	u32 rsvd0[3];
951b1d902a9SAdrian Alonso 	u32 mem_trim1;
952b1d902a9SAdrian Alonso 	u32 rsvd1[3];
953b1d902a9SAdrian Alonso 	u32 ana0;
954b1d902a9SAdrian Alonso 	u32 rsvd2[3];
955b1d902a9SAdrian Alonso 	u32 ana1;
956b1d902a9SAdrian Alonso 	u32 rsvd3[3];
957b1d902a9SAdrian Alonso };
958b1d902a9SAdrian Alonso 
959b1d902a9SAdrian Alonso struct fuse_bank8_regs {
960b1d902a9SAdrian Alonso 	u32 sjc_resp_low;
961b1d902a9SAdrian Alonso 	u32 rsvd0[3];
962b1d902a9SAdrian Alonso 	u32 sjc_resp_high;
963b1d902a9SAdrian Alonso 	u32 rsvd1[3];
964b1d902a9SAdrian Alonso 	u32 usb_id;
965b1d902a9SAdrian Alonso 	u32 rsvd2[3];
966b1d902a9SAdrian Alonso 	u32 field_return;
967b1d902a9SAdrian Alonso 	u32 rsvd3[3];
968b1d902a9SAdrian Alonso };
969b1d902a9SAdrian Alonso 
970b1d902a9SAdrian Alonso struct fuse_bank9_regs {
971b1d902a9SAdrian Alonso 	u32 mac_addr0;
972b1d902a9SAdrian Alonso 	u32 rsvd0[3];
973b1d902a9SAdrian Alonso 	u32 mac_addr1;
974b1d902a9SAdrian Alonso 	u32 rsvd1[3];
975b1d902a9SAdrian Alonso 	u32 mac_addr2;
976b1d902a9SAdrian Alonso 	u32 rsvd2[7];
977b1d902a9SAdrian Alonso };
978b1d902a9SAdrian Alonso 
979b1d902a9SAdrian Alonso struct aipstz_regs {
980b1d902a9SAdrian Alonso 	u32	mprot0;
981b1d902a9SAdrian Alonso 	u32	mprot1;
982b1d902a9SAdrian Alonso 	u32	rsvd[0xe];
983b1d902a9SAdrian Alonso 	u32	opacr0;
984b1d902a9SAdrian Alonso 	u32	opacr1;
985b1d902a9SAdrian Alonso 	u32	opacr2;
986b1d902a9SAdrian Alonso 	u32	opacr3;
987b1d902a9SAdrian Alonso 	u32	opacr4;
988b1d902a9SAdrian Alonso };
989b1d902a9SAdrian Alonso 
990b1d902a9SAdrian Alonso struct wdog_regs {
991b1d902a9SAdrian Alonso 	u16	wcr;	/* Control */
992b1d902a9SAdrian Alonso 	u16	wsr;	/* Service */
993b1d902a9SAdrian Alonso 	u16	wrsr;	/* Reset Status */
994b1d902a9SAdrian Alonso 	u16	wicr;	/* Interrupt Control */
995b1d902a9SAdrian Alonso 	u16	wmcr;	/* Miscellaneous Control */
996b1d902a9SAdrian Alonso };
997b1d902a9SAdrian Alonso 
998b1d902a9SAdrian Alonso struct dbg_monitor_regs {
999b1d902a9SAdrian Alonso 	u32	ctrl[4];		/* Control */
1000b1d902a9SAdrian Alonso 	u32	master_en[4];		/* Master enable */
1001b1d902a9SAdrian Alonso 	u32	irq[4];			/* IRQ */
1002b1d902a9SAdrian Alonso 	u32	trap_addr_low[4];	/* Trap address low */
1003b1d902a9SAdrian Alonso 	u32	trap_addr_high[4];	/* Trap address high */
1004b1d902a9SAdrian Alonso 	u32	trap_id[4];		/* Trap ID */
1005b1d902a9SAdrian Alonso 	u32	snvs_addr[4];		/* SNVS address */
1006b1d902a9SAdrian Alonso 	u32	snvs_data[4];		/* SNVS data */
1007b1d902a9SAdrian Alonso 	u32	snvs_info[4];		/* SNVS info */
1008b1d902a9SAdrian Alonso 	u32	version[4];		/* Version */
1009b1d902a9SAdrian Alonso };
1010b1d902a9SAdrian Alonso 
1011b1d902a9SAdrian Alonso struct rdc_regs {
1012b1d902a9SAdrian Alonso 	u32	vir;		/* Version information */
1013b1d902a9SAdrian Alonso 	u32	reserved1[8];
1014b1d902a9SAdrian Alonso 	u32	stat;		/* Status */
1015b1d902a9SAdrian Alonso 	u32	intctrl;	/* Interrupt and Control */
1016b1d902a9SAdrian Alonso 	u32	intstat;	/* Interrupt Status */
1017b1d902a9SAdrian Alonso 	u32	reserved2[116];
1018b1d902a9SAdrian Alonso 	u32	mda[27];		/* Master Domain Assignment */
1019b1d902a9SAdrian Alonso 	u32	reserved3[101];
1020b1d902a9SAdrian Alonso 	u32	pdap[118];		/* Peripheral Domain Access Permissions */
1021b1d902a9SAdrian Alonso 	u32	reserved4[138];
1022b1d902a9SAdrian Alonso 	struct {
1023b1d902a9SAdrian Alonso 		u32 mrsa;		/* Memory Region Start Address */
1024b1d902a9SAdrian Alonso 		u32 mrea;		/* Memory Region End Address */
1025b1d902a9SAdrian Alonso 		u32 mrc;		/* Memory Region Control */
1026b1d902a9SAdrian Alonso 		u32 mrvs;		/* Memory Region Violation Status */
1027b1d902a9SAdrian Alonso 	} mem_region[52];
1028b1d902a9SAdrian Alonso };
1029b1d902a9SAdrian Alonso 
1030b1d902a9SAdrian Alonso struct rdc_sema_regs {
1031b1d902a9SAdrian Alonso 	u8	gate[64];	/* Gate */
1032b1d902a9SAdrian Alonso 	u16	rstgt;		/* Reset Gate */
1033b1d902a9SAdrian Alonso };
1034b1d902a9SAdrian Alonso 
1035b1d902a9SAdrian Alonso /* eLCDIF controller registers */
1036b1d902a9SAdrian Alonso struct mxs_lcdif_regs {
1037b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl;			/* 0x00 */
1038b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl_set;
1039b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl_clr;
1040b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl_tog;
1041b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl1;			/* 0x10 */
1042b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl1_set;
1043b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl1_clr;
1044b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl1_tog;
1045b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl2;			/* 0x20 */
1046b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl2_set;
1047b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl2_clr;
1048b1d902a9SAdrian Alonso 	u32	hw_lcdif_ctrl2_tog;
1049b1d902a9SAdrian Alonso 	u32	hw_lcdif_transfer_count;	/* 0x30 */
1050b1d902a9SAdrian Alonso 	u32	reserved1[3];
1051b1d902a9SAdrian Alonso 	u32	hw_lcdif_cur_buf;		/* 0x40 */
1052b1d902a9SAdrian Alonso 	u32	reserved2[3];
1053b1d902a9SAdrian Alonso 	u32	hw_lcdif_next_buf;		/* 0x50 */
1054b1d902a9SAdrian Alonso 	u32	reserved3[3];
1055b1d902a9SAdrian Alonso 	u32	hw_lcdif_timing;		/* 0x60 */
1056b1d902a9SAdrian Alonso 	u32	reserved4[3];
1057b1d902a9SAdrian Alonso 	u32	hw_lcdif_vdctrl0;		/* 0x70 */
1058b1d902a9SAdrian Alonso 	u32	hw_lcdif_vdctrl0_set;
1059b1d902a9SAdrian Alonso 	u32	hw_lcdif_vdctrl0_clr;
1060b1d902a9SAdrian Alonso 	u32	hw_lcdif_vdctrl0_tog;
1061b1d902a9SAdrian Alonso 	u32	hw_lcdif_vdctrl1;		/* 0x80 */
1062b1d902a9SAdrian Alonso 	u32	reserved5[3];
1063b1d902a9SAdrian Alonso 	u32	hw_lcdif_vdctrl2;		/* 0x90 */
1064b1d902a9SAdrian Alonso 	u32	reserved6[3];
1065b1d902a9SAdrian Alonso 	u32	hw_lcdif_vdctrl3;		/* 0xa0 */
1066b1d902a9SAdrian Alonso 	u32	reserved7[3];
1067b1d902a9SAdrian Alonso 	u32	hw_lcdif_vdctrl4;		/* 0xb0 */
1068b1d902a9SAdrian Alonso 	u32	reserved8[3];
1069b1d902a9SAdrian Alonso 	u32	hw_lcdif_dvictrl0;		/* 0xc0 */
1070b1d902a9SAdrian Alonso 	u32	reserved9[3];
1071b1d902a9SAdrian Alonso 	u32	hw_lcdif_dvictrl1;		/* 0xd0 */
1072b1d902a9SAdrian Alonso 	u32	reserved10[3];
1073b1d902a9SAdrian Alonso 	u32	hw_lcdif_dvictrl2;		/* 0xe0 */
1074b1d902a9SAdrian Alonso 	u32	reserved11[3];
1075b1d902a9SAdrian Alonso 	u32	hw_lcdif_dvictrl3;		/* 0xf0 */
1076b1d902a9SAdrian Alonso 	u32	reserved12[3];
1077b1d902a9SAdrian Alonso 	u32	hw_lcdif_dvictrl4;		/* 0x100 */
1078b1d902a9SAdrian Alonso 	u32	reserved13[3];
1079b1d902a9SAdrian Alonso 	u32	hw_lcdif_csc_coeffctrl0;	/* 0x110 */
1080b1d902a9SAdrian Alonso 	u32	reserved14[3];
1081b1d902a9SAdrian Alonso 	u32	hw_lcdif_csc_coeffctrl1;	/* 0x120 */
1082b1d902a9SAdrian Alonso 	u32	reserved15[3];
1083b1d902a9SAdrian Alonso 	u32	hw_lcdif_csc_coeffctrl2;	/* 0x130 */
1084b1d902a9SAdrian Alonso 	u32	reserved16[3];
1085b1d902a9SAdrian Alonso 	u32	hw_lcdif_csc_coeffctrl3;	/* 0x140 */
1086b1d902a9SAdrian Alonso 	u32	reserved17[3];
1087b1d902a9SAdrian Alonso 	u32	hw_lcdif_csc_coeffctrl4;	/* 0x150 */
1088b1d902a9SAdrian Alonso 	u32	reserved18[3];
1089b1d902a9SAdrian Alonso 	u32	hw_lcdif_csc_offset;	/* 0x160 */
1090b1d902a9SAdrian Alonso 	u32	reserved19[3];
1091b1d902a9SAdrian Alonso 	u32	hw_lcdif_csc_limit;		/* 0x170 */
1092b1d902a9SAdrian Alonso 	u32	reserved20[3];
1093b1d902a9SAdrian Alonso 	u32	hw_lcdif_data;			/* 0x180 */
1094b1d902a9SAdrian Alonso 	u32	reserved21[3];
1095b1d902a9SAdrian Alonso 	u32	hw_lcdif_bm_error_stat;	/* 0x190 */
1096b1d902a9SAdrian Alonso 	u32	reserved22[3];
1097b1d902a9SAdrian Alonso 	u32	hw_lcdif_crc_stat;		/* 0x1a0 */
1098b1d902a9SAdrian Alonso 	u32	reserved23[3];
1099b1d902a9SAdrian Alonso 	u32	hw_lcdif_lcdif_stat;	/* 0x1b0 */
1100b1d902a9SAdrian Alonso 	u32	reserved24[3];
1101b1d902a9SAdrian Alonso 	u32	hw_lcdif_version;		/* 0x1c0 */
1102b1d902a9SAdrian Alonso 	u32	reserved25[3];
1103b1d902a9SAdrian Alonso 	u32	hw_lcdif_debug0;		/* 0x1d0 */
1104b1d902a9SAdrian Alonso 	u32	reserved26[3];
1105b1d902a9SAdrian Alonso 	u32	hw_lcdif_debug1;		/* 0x1e0 */
1106b1d902a9SAdrian Alonso 	u32	reserved27[3];
1107b1d902a9SAdrian Alonso 	u32	hw_lcdif_debug2;		/* 0x1f0 */
1108b1d902a9SAdrian Alonso 	u32	reserved28[3];
1109b1d902a9SAdrian Alonso 	u32	hw_lcdif_thres;			/* 0x200 */
1110b1d902a9SAdrian Alonso 	u32	reserved29[3];
1111b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_ctrl;		/* 0x210 */
1112b1d902a9SAdrian Alonso 	u32	reserved30[3];
1113b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_buf;		/* 0x220 */
1114b1d902a9SAdrian Alonso 	u32	reserved31[3];
1115b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_next_buf;	/* 0x230 */
1116b1d902a9SAdrian Alonso 	u32	reserved32[3];
1117b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_clrkeylow;	/* 0x240 */
1118b1d902a9SAdrian Alonso 	u32	reserved33[3];
1119b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_clrkeyhigh;	/* 0x250 */
1120b1d902a9SAdrian Alonso 	u32	reserved34[3];
1121b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_sync_delay;	/* 0x260 */
1122b1d902a9SAdrian Alonso 	u32	reserved35[3];
1123b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_debug3;		/* 0x270 */
1124b1d902a9SAdrian Alonso 	u32	reserved36[3];
1125b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_debug4;		/* 0x280 */
1126b1d902a9SAdrian Alonso 	u32	reserved37[3];
1127b1d902a9SAdrian Alonso 	u32	hw_lcdif_as_debug5;		/* 0x290 */
1128b1d902a9SAdrian Alonso };
1129b1d902a9SAdrian Alonso 
1130b1d902a9SAdrian Alonso #define MXS_LCDIF_BASE ELCDIF1_IPS_BASE_ADDR
1131b1d902a9SAdrian Alonso 
1132b1d902a9SAdrian Alonso #define	LCDIF_CTRL_SFTRST					(1 << 31)
1133b1d902a9SAdrian Alonso #define	LCDIF_CTRL_CLKGATE					(1 << 30)
1134b1d902a9SAdrian Alonso #define	LCDIF_CTRL_YCBCR422_INPUT				(1 << 29)
1135b1d902a9SAdrian Alonso #define	LCDIF_CTRL_READ_WRITEB					(1 << 28)
1136b1d902a9SAdrian Alonso #define	LCDIF_CTRL_WAIT_FOR_VSYNC_EDGE				(1 << 27)
1137b1d902a9SAdrian Alonso #define	LCDIF_CTRL_DATA_SHIFT_DIR				(1 << 26)
1138b1d902a9SAdrian Alonso #define	LCDIF_CTRL_SHIFT_NUM_BITS_MASK				(0x1f << 21)
1139b1d902a9SAdrian Alonso #define	LCDIF_CTRL_SHIFT_NUM_BITS_OFFSET			21
1140b1d902a9SAdrian Alonso #define	LCDIF_CTRL_DVI_MODE					(1 << 20)
1141b1d902a9SAdrian Alonso #define	LCDIF_CTRL_BYPASS_COUNT					(1 << 19)
1142b1d902a9SAdrian Alonso #define	LCDIF_CTRL_VSYNC_MODE					(1 << 18)
1143b1d902a9SAdrian Alonso #define	LCDIF_CTRL_DOTCLK_MODE					(1 << 17)
1144b1d902a9SAdrian Alonso #define	LCDIF_CTRL_DATA_SELECT					(1 << 16)
1145b1d902a9SAdrian Alonso #define	LCDIF_CTRL_INPUT_DATA_SWIZZLE_MASK			(0x3 << 14)
1146b1d902a9SAdrian Alonso #define	LCDIF_CTRL_INPUT_DATA_SWIZZLE_OFFSET			14
1147b1d902a9SAdrian Alonso #define	LCDIF_CTRL_CSC_DATA_SWIZZLE_MASK			(0x3 << 12)
1148b1d902a9SAdrian Alonso #define	LCDIF_CTRL_CSC_DATA_SWIZZLE_OFFSET			12
1149b1d902a9SAdrian Alonso #define	LCDIF_CTRL_LCD_DATABUS_WIDTH_MASK			(0x3 << 10)
1150b1d902a9SAdrian Alonso #define	LCDIF_CTRL_LCD_DATABUS_WIDTH_OFFSET			10
1151b1d902a9SAdrian Alonso #define	LCDIF_CTRL_LCD_DATABUS_WIDTH_16BIT			(0 << 10)
1152b1d902a9SAdrian Alonso #define	LCDIF_CTRL_LCD_DATABUS_WIDTH_8BIT			(1 << 10)
1153b1d902a9SAdrian Alonso #define	LCDIF_CTRL_LCD_DATABUS_WIDTH_18BIT			(2 << 10)
1154b1d902a9SAdrian Alonso #define	LCDIF_CTRL_LCD_DATABUS_WIDTH_24BIT			(3 << 10)
1155b1d902a9SAdrian Alonso #define	LCDIF_CTRL_WORD_LENGTH_MASK				(0x3 << 8)
1156b1d902a9SAdrian Alonso #define	LCDIF_CTRL_WORD_LENGTH_OFFSET				8
1157b1d902a9SAdrian Alonso #define	LCDIF_CTRL_WORD_LENGTH_16BIT				(0 << 8)
1158b1d902a9SAdrian Alonso #define	LCDIF_CTRL_WORD_LENGTH_8BIT				(1 << 8)
1159b1d902a9SAdrian Alonso #define	LCDIF_CTRL_WORD_LENGTH_18BIT				(2 << 8)
1160b1d902a9SAdrian Alonso #define	LCDIF_CTRL_WORD_LENGTH_24BIT				(3 << 8)
1161b1d902a9SAdrian Alonso #define	LCDIF_CTRL_RGB_TO_YCBCR422_CSC				(1 << 7)
1162b1d902a9SAdrian Alonso #define	LCDIF_CTRL_LCDIF_MASTER					(1 << 5)
1163b1d902a9SAdrian Alonso #define	LCDIF_CTRL_DATA_FORMAT_16_BIT				(1 << 3)
1164b1d902a9SAdrian Alonso #define	LCDIF_CTRL_DATA_FORMAT_18_BIT				(1 << 2)
1165b1d902a9SAdrian Alonso #define	LCDIF_CTRL_DATA_FORMAT_24_BIT				(1 << 1)
1166b1d902a9SAdrian Alonso #define	LCDIF_CTRL_RUN						(1 << 0)
1167b1d902a9SAdrian Alonso 
1168b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_COMBINE_MPU_WR_STRB				(1 << 27)
1169b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_BM_ERROR_IRQ_EN				(1 << 26)
1170b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_BM_ERROR_IRQ				(1 << 25)
1171b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_RECOVER_ON_UNDERFLOW			(1 << 24)
1172b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_INTERLACE_FIELDS				(1 << 23)
1173b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_START_INTERLACE_FROM_SECOND_FIELD		(1 << 22)
1174b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_FIFO_CLEAR					(1 << 21)
1175b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_IRQ_ON_ALTERNATE_FIELDS			(1 << 20)
1176b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_BYTE_PACKING_FORMAT_MASK			(0xf << 16)
1177b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_BYTE_PACKING_FORMAT_OFFSET			16
1178b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_OVERFLOW_IRQ_EN				(1 << 15)
1179b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_UNDERFLOW_IRQ_EN				(1 << 14)
1180b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_CUR_FRAME_DONE_IRQ_EN			(1 << 13)
1181b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_VSYNC_EDGE_IRQ_EN				(1 << 12)
1182b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_OVERFLOW_IRQ				(1 << 11)
1183b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_UNDERFLOW_IRQ				(1 << 10)
1184b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_CUR_FRAME_DONE_IRQ				(1 << 9)
1185b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_VSYNC_EDGE_IRQ				(1 << 8)
1186b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_BUSY_ENABLE					(1 << 2)
1187b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_MODE86					(1 << 1)
1188b1d902a9SAdrian Alonso #define	LCDIF_CTRL1_RESET					(1 << 0)
1189b1d902a9SAdrian Alonso 
1190b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_OUTSTANDING_REQS_MASK			(0x7 << 21)
1191b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_OUTSTANDING_REQS_OFFSET			21
1192b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_OUTSTANDING_REQS_REQ_1			(0x0 << 21)
1193b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_OUTSTANDING_REQS_REQ_2			(0x1 << 21)
1194b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_OUTSTANDING_REQS_REQ_4			(0x2 << 21)
1195b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_OUTSTANDING_REQS_REQ_8			(0x3 << 21)
1196b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_OUTSTANDING_REQS_REQ_16			(0x4 << 21)
1197b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_BURST_LEN_8					(1 << 20)
1198b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_ODD_LINE_PATTERN_MASK			(0x7 << 16)
1199b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_ODD_LINE_PATTERN_OFFSET			16
1200b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_ODD_LINE_PATTERN_RGB			(0x0 << 16)
1201b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_ODD_LINE_PATTERN_RBG			(0x1 << 16)
1202b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_ODD_LINE_PATTERN_GBR			(0x2 << 16)
1203b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_ODD_LINE_PATTERN_GRB			(0x3 << 16)
1204b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_ODD_LINE_PATTERN_BRG			(0x4 << 16)
1205b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_ODD_LINE_PATTERN_BGR			(0x5 << 16)
1206b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_EVEN_LINE_PATTERN_MASK			(0x7 << 12)
1207b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_EVEN_LINE_PATTERN_OFFSET			12
1208b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_EVEN_LINE_PATTERN_RGB			(0x0 << 12)
1209b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_EVEN_LINE_PATTERN_RBG			(0x1 << 12)
1210b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_EVEN_LINE_PATTERN_GBR			(0x2 << 12)
1211b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_EVEN_LINE_PATTERN_GRB			(0x3 << 12)
1212b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_EVEN_LINE_PATTERN_BRG			(0x4 << 12)
1213b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_EVEN_LINE_PATTERN_BGR			(0x5 << 12)
1214b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_READ_PACK_DIR				(1 << 10)
1215b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_READ_MODE_OUTPUT_IN_RGB_FORMAT		(1 << 9)
1216b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_READ_MODE_6_BIT_INPUT			(1 << 8)
1217b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_READ_MODE_NUM_PACKED_SUBWORDS_MASK		(0x7 << 4)
1218b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_READ_MODE_NUM_PACKED_SUBWORDS_OFFSET	4
1219b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_INITIAL_DUMMY_READ_MASK			(0x7 << 1)
1220b1d902a9SAdrian Alonso #define	LCDIF_CTRL2_INITIAL_DUMMY_READ_OFFSET			1
1221b1d902a9SAdrian Alonso 
1222b1d902a9SAdrian Alonso #define	LCDIF_TRANSFER_COUNT_V_COUNT_MASK			(0xffff << 16)
1223b1d902a9SAdrian Alonso #define	LCDIF_TRANSFER_COUNT_V_COUNT_OFFSET			16
1224b1d902a9SAdrian Alonso #define	LCDIF_TRANSFER_COUNT_H_COUNT_MASK			(0xffff << 0)
1225b1d902a9SAdrian Alonso #define	LCDIF_TRANSFER_COUNT_H_COUNT_OFFSET			0
1226b1d902a9SAdrian Alonso 
1227b1d902a9SAdrian Alonso #define	LCDIF_CUR_BUF_ADDR_MASK					0xffffffff
1228b1d902a9SAdrian Alonso #define	LCDIF_CUR_BUF_ADDR_OFFSET				0
1229b1d902a9SAdrian Alonso 
1230b1d902a9SAdrian Alonso #define	LCDIF_NEXT_BUF_ADDR_MASK				0xffffffff
1231b1d902a9SAdrian Alonso #define	LCDIF_NEXT_BUF_ADDR_OFFSET				0
1232b1d902a9SAdrian Alonso 
1233b1d902a9SAdrian Alonso #define	LCDIF_TIMING_CMD_HOLD_MASK				(0xff << 24)
1234b1d902a9SAdrian Alonso #define	LCDIF_TIMING_CMD_HOLD_OFFSET				24
1235b1d902a9SAdrian Alonso #define	LCDIF_TIMING_CMD_SETUP_MASK				(0xff << 16)
1236b1d902a9SAdrian Alonso #define	LCDIF_TIMING_CMD_SETUP_OFFSET				16
1237b1d902a9SAdrian Alonso #define	LCDIF_TIMING_DATA_HOLD_MASK				(0xff << 8)
1238b1d902a9SAdrian Alonso #define	LCDIF_TIMING_DATA_HOLD_OFFSET				8
1239b1d902a9SAdrian Alonso #define	LCDIF_TIMING_DATA_SETUP_MASK				(0xff << 0)
1240b1d902a9SAdrian Alonso #define	LCDIF_TIMING_DATA_SETUP_OFFSET				0
1241b1d902a9SAdrian Alonso 
1242b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_VSYNC_OEB					(1 << 29)
1243b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_ENABLE_PRESENT				(1 << 28)
1244b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_VSYNC_POL					(1 << 27)
1245b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_HSYNC_POL					(1 << 26)
1246b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_DOTCLK_POL				(1 << 25)
1247b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_ENABLE_POL				(1 << 24)
1248b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_VSYNC_PERIOD_UNIT				(1 << 21)
1249b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_VSYNC_PULSE_WIDTH_UNIT			(1 << 20)
1250b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_HALF_LINE					(1 << 19)
1251b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_HALF_LINE_MODE				(1 << 18)
1252b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_VSYNC_PULSE_WIDTH_MASK			0x3ffff
1253b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL0_VSYNC_PULSE_WIDTH_OFFSET			0
1254b1d902a9SAdrian Alonso 
1255b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL1_VSYNC_PERIOD_MASK				0xffffffff
1256b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL1_VSYNC_PERIOD_OFFSET			0
1257b1d902a9SAdrian Alonso 
1258b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL2_HSYNC_PULSE_WIDTH_MASK			(0x3fff << 18)
1259b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL2_HSYNC_PULSE_WIDTH_OFFSET			18
1260b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL2_HSYNC_PERIOD_MASK				0x3ffff
1261b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL2_HSYNC_PERIOD_OFFSET			0
1262b1d902a9SAdrian Alonso 
1263b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL3_MUX_SYNC_SIGNALS				(1 << 29)
1264b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL3_VSYNC_ONLY				(1 << 28)
1265b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL3_HORIZONTAL_WAIT_CNT_MASK			(0xfff << 16)
1266b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL3_HORIZONTAL_WAIT_CNT_OFFSET		16
1267b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL3_VERTICAL_WAIT_CNT_MASK			(0xffff << 0)
1268b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL3_VERTICAL_WAIT_CNT_OFFSET			0
1269b1d902a9SAdrian Alonso 
1270b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL4_DOTCLK_DLY_SEL_MASK			(0x7 << 29)
1271b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL4_DOTCLK_DLY_SEL_OFFSET			29
1272b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL4_SYNC_SIGNALS_ON				(1 << 18)
1273b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL4_DOTCLK_H_VALID_DATA_CNT_MASK		0x3ffff
1274b1d902a9SAdrian Alonso #define	LCDIF_VDCTRL4_DOTCLK_H_VALID_DATA_CNT_OFFSET		0
1275b1d902a9SAdrian Alonso 
1276b1d902a9SAdrian Alonso 
1277b1d902a9SAdrian Alonso extern void check_cpu_temperature(void);
1278b1d902a9SAdrian Alonso 
1279b1d902a9SAdrian Alonso extern void pcie_power_up(void);
1280b1d902a9SAdrian Alonso extern void pcie_power_off(void);
1281b1d902a9SAdrian Alonso 
1282b1d902a9SAdrian Alonso /* If ROM fail back to USB recover mode, USBPH0_PWD will be clear to use USB
1283b1d902a9SAdrian Alonso  * If boot from the other mode, USB0_PWD will keep reset value
1284b1d902a9SAdrian Alonso  */
1285b1d902a9SAdrian Alonso #define	is_boot_from_usb(void) (readl(USBOTG1_IPS_BASE_ADDR + 0x158) || \
1286b1d902a9SAdrian Alonso 	readl(USBOTG2_IPS_BASE_ADDR + 0x158))
1287b1d902a9SAdrian Alonso #define	disconnect_from_pc(void) writel(0x0, USBOTG1_IPS_BASE_ADDR + 0x140)
1288b1d902a9SAdrian Alonso 
1289b1d902a9SAdrian Alonso /* Boot device type */
1290b1d902a9SAdrian Alonso #define BOOT_TYPE_SD		0x1
1291b1d902a9SAdrian Alonso #define BOOT_TYPE_MMC		0x2
1292b1d902a9SAdrian Alonso #define BOOT_TYPE_NAND		0x3
1293b1d902a9SAdrian Alonso #define BOOT_TYPE_QSPI		0x4
1294b1d902a9SAdrian Alonso #define BOOT_TYPE_WEIM		0x5
1295b1d902a9SAdrian Alonso #define BOOT_TYPE_SPINOR	0x6
1296b1d902a9SAdrian Alonso 
1297b1d902a9SAdrian Alonso struct bootrom_sw_info {
1298b1d902a9SAdrian Alonso 	u8 reserved_1;
1299b1d902a9SAdrian Alonso 	u8 boot_dev_instance;
1300b1d902a9SAdrian Alonso 	u8 boot_dev_type;
1301b1d902a9SAdrian Alonso 	u8 reserved_2;
1302b1d902a9SAdrian Alonso 	u32 arm_core_freq;
1303b1d902a9SAdrian Alonso 	u32 axi_freq;
1304b1d902a9SAdrian Alonso 	u32 ddr_freq;
1305b1d902a9SAdrian Alonso 	u32 gpt1_freq;
1306b1d902a9SAdrian Alonso 	u32 reserved_3[3];
1307b1d902a9SAdrian Alonso };
1308b1d902a9SAdrian Alonso 
1309b1d902a9SAdrian Alonso #endif /* __ASSEMBLER__*/
1310b1d902a9SAdrian Alonso #endif /* __ASM_ARCH_MX7_IMX_REGS_H__ */
1311