Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * Copyright (C) 2012 Freescale Semiconductor, Inc.
0004  */
0005 
0006 #ifndef __LINUX_IMX6Q_IOMUXC_GPR_H
0007 #define __LINUX_IMX6Q_IOMUXC_GPR_H
0008 
0009 #include <linux/bitops.h>
0010 
0011 #define IOMUXC_GPR0 0x00
0012 #define IOMUXC_GPR1 0x04
0013 #define IOMUXC_GPR2 0x08
0014 #define IOMUXC_GPR3 0x0c
0015 #define IOMUXC_GPR4 0x10
0016 #define IOMUXC_GPR5 0x14
0017 #define IOMUXC_GPR6 0x18
0018 #define IOMUXC_GPR7 0x1c
0019 #define IOMUXC_GPR8 0x20
0020 #define IOMUXC_GPR9 0x24
0021 #define IOMUXC_GPR10    0x28
0022 #define IOMUXC_GPR11    0x2c
0023 #define IOMUXC_GPR12    0x30
0024 #define IOMUXC_GPR13    0x34
0025 
0026 #define IMX6Q_GPR0_CLOCK_8_MUX_SEL_MASK     (0x3 << 30)
0027 #define IMX6Q_GPR0_CLOCK_8_MUX_SEL_AUDMUX_RXCLK_P7_MUXED    (0x0 << 30)
0028 #define IMX6Q_GPR0_CLOCK_8_MUX_SEL_AUDMUX_RXCLK_P7  (0x1 << 30)
0029 #define IMX6Q_GPR0_CLOCK_8_MUX_SEL_SSI3_SSI_SRCK    (0x2 << 30)
0030 #define IMX6Q_GPR0_CLOCK_8_MUX_SEL_SSI3_RX_BIT_CLK  (0x3 << 30)
0031 #define IMX6Q_GPR0_CLOCK_0_MUX_SEL_MASK     (0x3 << 28)
0032 #define IMX6Q_GPR0_CLOCK_0_MUX_SEL_ESAI1_IPP_IND_SCKR_MUXED (0x0 << 28)
0033 #define IMX6Q_GPR0_CLOCK_0_MUX_SEL_ESAI1_IPP_IND_SCKR   (0x1 << 28)
0034 #define IMX6Q_GPR0_CLOCK_0_MUX_SEL_ESAI1_IPP_DO_SCKR    (0x2 << 28)
0035 #define IMX6Q_GPR0_CLOCK_B_MUX_SEL_MASK     (0x3 << 26)
0036 #define IMX6Q_GPR0_CLOCK_B_MUX_SEL_AUDMUX_TXCLK_P7_MUXED    (0x0 << 26)
0037 #define IMX6Q_GPR0_CLOCK_B_MUX_SEL_AUDMUX_TXCLK_P7  (0x1 << 26)
0038 #define IMX6Q_GPR0_CLOCK_B_MUX_SEL_SSI3_SSI_STCK    (0x2 << 26)
0039 #define IMX6Q_GPR0_CLOCK_B_MUX_SEL_SSI3_TX_BIT_CLK  (0x3 << 26)
0040 #define IMX6Q_GPR0_CLOCK_3_MUX_SEL_MASK     (0x3 << 24)
0041 #define IMX6Q_GPR0_CLOCK_3_MUX_SEL_AUDMUX_RXCLK_P7_MUXED    (0x3 << 24)
0042 #define IMX6Q_GPR0_CLOCK_3_MUX_SEL_AUDMUX_RXCLK_P7  (0x3 << 24)
0043 #define IMX6Q_GPR0_CLOCK_3_MUX_SEL_SSI3_SSI_SRCK    (0x3 << 24)
0044 #define IMX6Q_GPR0_CLOCK_3_MUX_SEL_SSI3_RX_BIT_CLK  (0x3 << 24)
0045 #define IMX6Q_GPR0_CLOCK_A_MUX_SEL_MASK     (0x3 << 22)
0046 #define IMX6Q_GPR0_CLOCK_A_MUX_SEL_AUDMUX_TXCLK_P2_MUXED    (0x0 << 22)
0047 #define IMX6Q_GPR0_CLOCK_A_MUX_SEL_AUDMUX_TXCLK_P2  (0x1 << 22)
0048 #define IMX6Q_GPR0_CLOCK_A_MUX_SEL_SSI2_SSI_STCK    (0x2 << 22)
0049 #define IMX6Q_GPR0_CLOCK_A_MUX_SEL_SSI2_TX_BIT_CLK  (0x3 << 22)
0050 #define IMX6Q_GPR0_CLOCK_2_MUX_SEL_MASK     (0x3 << 20)
0051 #define IMX6Q_GPR0_CLOCK_2_MUX_SEL_AUDMUX_RXCLK_P2_MUXED    (0x0 << 20)
0052 #define IMX6Q_GPR0_CLOCK_2_MUX_SEL_AUDMUX_RXCLK_P2  (0x1 << 20)
0053 #define IMX6Q_GPR0_CLOCK_2_MUX_SEL_SSI2_SSI_SRCK    (0x2 << 20)
0054 #define IMX6Q_GPR0_CLOCK_2_MUX_SEL_SSI2_RX_BIT_CLK  (0x3 << 20)
0055 #define IMX6Q_GPR0_CLOCK_9_MUX_SEL_MASK     (0x3 << 18)
0056 #define IMX6Q_GPR0_CLOCK_9_MUX_SEL_AUDMUX_TXCLK_P1_MUXED    (0x0 << 18)
0057 #define IMX6Q_GPR0_CLOCK_9_MUX_SEL_AUDMUX_TXCLK_P1  (0x1 << 18)
0058 #define IMX6Q_GPR0_CLOCK_9_MUX_SEL_SSI1_SSI_STCK    (0x2 << 18)
0059 #define IMX6Q_GPR0_CLOCK_9_MUX_SEL_SSI1_SSI_TX_BIT_CLK  (0x3 << 18)
0060 #define IMX6Q_GPR0_CLOCK_1_MUX_SEL_MASK     (0x3 << 16)
0061 #define IMX6Q_GPR0_CLOCK_1_MUX_SEL_AUDMUX_RXCLK_P1_MUXED    (0x0 << 16)
0062 #define IMX6Q_GPR0_CLOCK_1_MUX_SEL_AUDMUX_RXCLK_P1  (0x1 << 16)
0063 #define IMX6Q_GPR0_CLOCK_1_MUX_SEL_SSI1_SSI_SRCK    (0x2 << 16)
0064 #define IMX6Q_GPR0_CLOCK_1_MUX_SEL_SSI1_SSI_RX_BIT_CLK  (0x3 << 16)
0065 #define IMX6Q_GPR0_TX_CLK2_MUX_SEL_MASK     (0x3 << 14)
0066 #define IMX6Q_GPR0_TX_CLK2_MUX_SEL_ASRCK_CLK1   (0x0 << 14)
0067 #define IMX6Q_GPR0_TX_CLK2_MUX_SEL_ASRCK_CLK2   (0x1 << 14)
0068 #define IMX6Q_GPR0_TX_CLK2_MUX_SEL_ASRCK_CLK3   (0x2 << 14)
0069 #define IMX6Q_GPR0_DMAREQ_MUX_SEL7_MASK     BIT(7)
0070 #define IMX6Q_GPR0_DMAREQ_MUX_SEL7_SPDIF    0x0
0071 #define IMX6Q_GPR0_DMAREQ_MUX_SEL7_IOMUX    BIT(7)
0072 #define IMX6Q_GPR0_DMAREQ_MUX_SEL6_MASK     BIT(6)
0073 #define IMX6Q_GPR0_DMAREQ_MUX_SEL6_ESAI     0x0
0074 #define IMX6Q_GPR0_DMAREQ_MUX_SEL6_I2C3     BIT(6)
0075 #define IMX6Q_GPR0_DMAREQ_MUX_SEL5_MASK     BIT(5)
0076 #define IMX6Q_GPR0_DMAREQ_MUX_SEL5_ECSPI4   0x0
0077 #define IMX6Q_GPR0_DMAREQ_MUX_SEL5_EPIT2    BIT(5)
0078 #define IMX6Q_GPR0_DMAREQ_MUX_SEL4_MASK     BIT(4)
0079 #define IMX6Q_GPR0_DMAREQ_MUX_SEL4_ECSPI4   0x0
0080 #define IMX6Q_GPR0_DMAREQ_MUX_SEL4_I2C1     BIT(4)
0081 #define IMX6Q_GPR0_DMAREQ_MUX_SEL3_MASK     BIT(3)
0082 #define IMX6Q_GPR0_DMAREQ_MUX_SEL3_ECSPI2   0x0
0083 #define IMX6Q_GPR0_DMAREQ_MUX_SEL3_I2C1     BIT(3)
0084 #define IMX6Q_GPR0_DMAREQ_MUX_SEL2_MASK     BIT(2)
0085 #define IMX6Q_GPR0_DMAREQ_MUX_SEL2_ECSPI1   0x0
0086 #define IMX6Q_GPR0_DMAREQ_MUX_SEL2_I2C2     BIT(2)
0087 #define IMX6Q_GPR0_DMAREQ_MUX_SEL1_MASK     BIT(1)
0088 #define IMX6Q_GPR0_DMAREQ_MUX_SEL1_ECSPI1   0x0
0089 #define IMX6Q_GPR0_DMAREQ_MUX_SEL1_I2C3     BIT(1)
0090 #define IMX6Q_GPR0_DMAREQ_MUX_SEL0_MASK     BIT(0)
0091 #define IMX6Q_GPR0_DMAREQ_MUX_SEL0_IPU1     0x0
0092 #define IMX6Q_GPR0_DMAREQ_MUX_SEL0_IOMUX    BIT(0)
0093 
0094 #define IMX6Q_GPR1_PCIE_REQ_MASK        (0x3 << 30)
0095 #define IMX6Q_GPR1_PCIE_SW_RST          BIT(29)
0096 #define IMX6Q_GPR1_PCIE_EXIT_L1         BIT(28)
0097 #define IMX6Q_GPR1_PCIE_RDY_L23         BIT(27)
0098 #define IMX6Q_GPR1_PCIE_ENTER_L1        BIT(26)
0099 #define IMX6Q_GPR1_MIPI_COLOR_SW        BIT(25)
0100 #define IMX6Q_GPR1_DPI_OFF          BIT(24)
0101 #define IMX6Q_GPR1_EXC_MON_MASK         BIT(22)
0102 #define IMX6Q_GPR1_EXC_MON_OKAY         0x0
0103 #define IMX6Q_GPR1_EXC_MON_SLVE         BIT(22)
0104 #define IMX6Q_GPR1_ENET_CLK_SEL_MASK        BIT(21)
0105 #define IMX6Q_GPR1_ENET_CLK_SEL_PAD     0
0106 #define IMX6Q_GPR1_ENET_CLK_SEL_ANATOP      BIT(21)
0107 #define IMX6Q_GPR1_MIPI_IPU2_MUX_MASK       BIT(20)
0108 #define IMX6Q_GPR1_MIPI_IPU2_MUX_GASKET     0x0
0109 #define IMX6Q_GPR1_MIPI_IPU2_MUX_IOMUX      BIT(20)
0110 #define IMX6Q_GPR1_MIPI_IPU1_MUX_MASK       BIT(19)
0111 #define IMX6Q_GPR1_MIPI_IPU1_MUX_GASKET     0x0
0112 #define IMX6Q_GPR1_MIPI_IPU1_MUX_IOMUX      BIT(19)
0113 #define IMX6Q_GPR1_PCIE_TEST_PD         BIT(18)
0114 #define IMX6Q_GPR1_IPU_VPU_MUX_MASK     BIT(17)
0115 #define IMX6Q_GPR1_IPU_VPU_MUX_IPU1     0x0
0116 #define IMX6Q_GPR1_IPU_VPU_MUX_IPU2     BIT(17)
0117 #define IMX6Q_GPR1_PCIE_REF_CLK_EN      BIT(16)
0118 #define IMX6Q_GPR1_USB_EXP_MODE         BIT(15)
0119 #define IMX6Q_GPR1_PCIE_INT         BIT(14)
0120 #define IMX6Q_GPR1_USB_OTG_ID_SEL_MASK      BIT(13)
0121 #define IMX6Q_GPR1_USB_OTG_ID_SEL_ENET_RX_ER    0x0
0122 #define IMX6Q_GPR1_USB_OTG_ID_SEL_GPIO_1    BIT(13)
0123 #define IMX6Q_GPR1_GINT             BIT(12)
0124 #define IMX6Q_GPR1_ADDRS3_MASK          (0x3 << 10)
0125 #define IMX6Q_GPR1_ADDRS3_32MB          (0x0 << 10)
0126 #define IMX6Q_GPR1_ADDRS3_64MB          (0x1 << 10)
0127 #define IMX6Q_GPR1_ADDRS3_128MB         (0x2 << 10)
0128 #define IMX6Q_GPR1_ACT_CS3          BIT(9)
0129 #define IMX6Q_GPR1_ADDRS2_MASK          (0x3 << 7)
0130 #define IMX6Q_GPR1_ACT_CS2          BIT(6)
0131 #define IMX6Q_GPR1_ADDRS1_MASK          (0x3 << 4)
0132 #define IMX6Q_GPR1_ACT_CS1          BIT(3)
0133 #define IMX6Q_GPR1_ADDRS0_MASK          (0x3 << 1)
0134 #define IMX6Q_GPR1_ACT_CS0          BIT(0)
0135 
0136 #define IMX6Q_GPR2_COUNTER_RESET_VAL_MASK   (0x3 << 20)
0137 #define IMX6Q_GPR2_COUNTER_RESET_VAL_5      (0x0 << 20)
0138 #define IMX6Q_GPR2_COUNTER_RESET_VAL_3      (0x1 << 20)
0139 #define IMX6Q_GPR2_COUNTER_RESET_VAL_4      (0x2 << 20)
0140 #define IMX6Q_GPR2_COUNTER_RESET_VAL_6      (0x3 << 20)
0141 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_MASK      (0x7 << 16)
0142 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_0     (0x0 << 16)
0143 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_1     (0x1 << 16)
0144 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_2     (0x2 << 16)
0145 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_3     (0x3 << 16)
0146 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_4     (0x4 << 16)
0147 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_5     (0x5 << 16)
0148 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_6     (0x6 << 16)
0149 #define IMX6Q_GPR2_LVDS_CLK_SHIFT_7     (0x7 << 16)
0150 #define IMX6Q_GPR2_BGREF_RRMODE_MASK        BIT(15)
0151 #define IMX6Q_GPR2_BGREF_RRMODE_EXT_RESISTOR    0x0
0152 #define IMX6Q_GPR2_BGREF_RRMODE_INT_RESISTOR    BIT(15)
0153 #define IMX6Q_GPR2_DI1_VS_POLARITY_MASK     BIT(10)
0154 #define IMX6Q_GPR2_DI1_VS_POLARITY_ACTIVE_H 0x0
0155 #define IMX6Q_GPR2_DI1_VS_POLARITY_ACTIVE_L BIT(10)
0156 #define IMX6Q_GPR2_DI0_VS_POLARITY_MASK     BIT(9)
0157 #define IMX6Q_GPR2_DI0_VS_POLARITY_ACTIVE_H 0x0
0158 #define IMX6Q_GPR2_DI0_VS_POLARITY_ACTIVE_L BIT(9)
0159 #define IMX6Q_GPR2_BIT_MAPPING_CH1_MASK     BIT(8)
0160 #define IMX6Q_GPR2_BIT_MAPPING_CH1_SPWG     0x0
0161 #define IMX6Q_GPR2_BIT_MAPPING_CH1_JEIDA    BIT(8)
0162 #define IMX6Q_GPR2_DATA_WIDTH_CH1_MASK      BIT(7)
0163 #define IMX6Q_GPR2_DATA_WIDTH_CH1_18BIT     0x0
0164 #define IMX6Q_GPR2_DATA_WIDTH_CH1_24BIT     BIT(7)
0165 #define IMX6Q_GPR2_BIT_MAPPING_CH0_MASK     BIT(6)
0166 #define IMX6Q_GPR2_BIT_MAPPING_CH0_SPWG     0x0
0167 #define IMX6Q_GPR2_BIT_MAPPING_CH0_JEIDA    BIT(6)
0168 #define IMX6Q_GPR2_DATA_WIDTH_CH0_MASK      BIT(5)
0169 #define IMX6Q_GPR2_DATA_WIDTH_CH0_18BIT     0x0
0170 #define IMX6Q_GPR2_DATA_WIDTH_CH0_24BIT     BIT(5)
0171 #define IMX6Q_GPR2_SPLIT_MODE_EN        BIT(4)
0172 #define IMX6Q_GPR2_CH1_MODE_MASK        (0x3 << 2)
0173 #define IMX6Q_GPR2_CH1_MODE_DISABLE     (0x0 << 2)
0174 #define IMX6Q_GPR2_CH1_MODE_EN_ROUTE_DI0    (0x1 << 2)
0175 #define IMX6Q_GPR2_CH1_MODE_EN_ROUTE_DI1    (0x3 << 2)
0176 #define IMX6Q_GPR2_CH0_MODE_MASK        (0x3 << 0)
0177 #define IMX6Q_GPR2_CH0_MODE_DISABLE     (0x0 << 0)
0178 #define IMX6Q_GPR2_CH0_MODE_EN_ROUTE_DI0    (0x1 << 0)
0179 #define IMX6Q_GPR2_CH0_MODE_EN_ROUTE_DI1    (0x3 << 0)
0180 
0181 #define IMX6Q_GPR3_GPU_DBG_MASK         (0x3 << 29)
0182 #define IMX6Q_GPR3_GPU_DBG_GPU3D        (0x0 << 29)
0183 #define IMX6Q_GPR3_GPU_DBG_GPU2D        (0x1 << 29)
0184 #define IMX6Q_GPR3_GPU_DBG_OPENVG       (0x2 << 29)
0185 #define IMX6Q_GPR3_BCH_WR_CACHE_CTL     BIT(28)
0186 #define IMX6Q_GPR3_BCH_RD_CACHE_CTL     BIT(27)
0187 #define IMX6Q_GPR3_USDHCX_WR_CACHE_CTL      BIT(26)
0188 #define IMX6Q_GPR3_USDHCX_RD_CACHE_CTL      BIT(25)
0189 #define IMX6Q_GPR3_OCRAM_CTL_MASK       (0xf << 21)
0190 #define IMX6Q_GPR3_OCRAM_STATUS_MASK        (0xf << 17)
0191 #define IMX6Q_GPR3_CORE3_DBG_ACK_EN     BIT(16)
0192 #define IMX6Q_GPR3_CORE2_DBG_ACK_EN     BIT(15)
0193 #define IMX6Q_GPR3_CORE1_DBG_ACK_EN     BIT(14)
0194 #define IMX6Q_GPR3_CORE0_DBG_ACK_EN     BIT(13)
0195 #define IMX6Q_GPR3_TZASC2_BOOT_LOCK     BIT(12)
0196 #define IMX6Q_GPR3_TZASC1_BOOT_LOCK     BIT(11)
0197 #define IMX6Q_GPR3_IPU_DIAG_MASK        BIT(10)
0198 #define IMX6Q_GPR3_LVDS1_MUX_CTL_MASK       (0x3 << 8)
0199 #define IMX6Q_GPR3_LVDS1_MUX_CTL_IPU1_DI0   (0x0 << 8)
0200 #define IMX6Q_GPR3_LVDS1_MUX_CTL_IPU1_DI1   (0x1 << 8)
0201 #define IMX6Q_GPR3_LVDS1_MUX_CTL_IPU2_DI0   (0x2 << 8)
0202 #define IMX6Q_GPR3_LVDS1_MUX_CTL_IPU2_DI1   (0x3 << 8)
0203 #define IMX6Q_GPR3_LVDS0_MUX_CTL_MASK       (0x3 << 6)
0204 #define IMX6Q_GPR3_LVDS0_MUX_CTL_IPU1_DI0   (0x0 << 6)
0205 #define IMX6Q_GPR3_LVDS0_MUX_CTL_IPU1_DI1   (0x1 << 6)
0206 #define IMX6Q_GPR3_LVDS0_MUX_CTL_IPU2_DI0   (0x2 << 6)
0207 #define IMX6Q_GPR3_LVDS0_MUX_CTL_IPU2_DI1   (0x3 << 6)
0208 #define IMX6Q_GPR3_MIPI_MUX_CTL_SHIFT       4
0209 #define IMX6Q_GPR3_MIPI_MUX_CTL_MASK        (0x3 << 4)
0210 #define IMX6Q_GPR3_MIPI_MUX_CTL_IPU1_DI0    (0x0 << 4)
0211 #define IMX6Q_GPR3_MIPI_MUX_CTL_IPU1_DI1    (0x1 << 4)
0212 #define IMX6Q_GPR3_MIPI_MUX_CTL_IPU2_DI0    (0x2 << 4)
0213 #define IMX6Q_GPR3_MIPI_MUX_CTL_IPU2_DI1    (0x3 << 4)
0214 #define IMX6Q_GPR3_HDMI_MUX_CTL_SHIFT       2
0215 #define IMX6Q_GPR3_HDMI_MUX_CTL_MASK        (0x3 << 2)
0216 #define IMX6Q_GPR3_HDMI_MUX_CTL_IPU1_DI0    (0x0 << 2)
0217 #define IMX6Q_GPR3_HDMI_MUX_CTL_IPU1_DI1    (0x1 << 2)
0218 #define IMX6Q_GPR3_HDMI_MUX_CTL_IPU2_DI0    (0x2 << 2)
0219 #define IMX6Q_GPR3_HDMI_MUX_CTL_IPU2_DI1    (0x3 << 2)
0220 
0221 #define IMX6Q_GPR4_VDOA_WR_CACHE_SEL        BIT(31)
0222 #define IMX6Q_GPR4_VDOA_RD_CACHE_SEL        BIT(30)
0223 #define IMX6Q_GPR4_VDOA_WR_CACHE_VAL        BIT(29)
0224 #define IMX6Q_GPR4_VDOA_RD_CACHE_VAL        BIT(28)
0225 #define IMX6Q_GPR4_PCIE_WR_CACHE_SEL        BIT(27)
0226 #define IMX6Q_GPR4_PCIE_RD_CACHE_SEL        BIT(26)
0227 #define IMX6Q_GPR4_PCIE_WR_CACHE_VAL        BIT(25)
0228 #define IMX6Q_GPR4_PCIE_RD_CACHE_VAL        BIT(24)
0229 #define IMX6Q_GPR4_SDMA_STOP_ACK        BIT(19)
0230 #define IMX6Q_GPR4_CAN2_STOP_ACK        BIT(18)
0231 #define IMX6Q_GPR4_CAN1_STOP_ACK        BIT(17)
0232 #define IMX6Q_GPR4_ENET_STOP_ACK        BIT(16)
0233 #define IMX6Q_GPR4_SOC_VERSION_MASK     (0xff << 8)
0234 #define IMX6Q_GPR4_SOC_VERSION_OFF      0x8
0235 #define IMX6Q_GPR4_VPU_WR_CACHE_SEL     BIT(7)
0236 #define IMX6Q_GPR4_VPU_RD_CACHE_SEL     BIT(6)
0237 #define IMX6Q_GPR4_VPU_P_WR_CACHE_VAL       BIT(3)
0238 #define IMX6Q_GPR4_VPU_P_RD_CACHE_VAL_MASK  BIT(2)
0239 #define IMX6Q_GPR4_IPU_WR_CACHE_CTL     BIT(1)
0240 #define IMX6Q_GPR4_IPU_RD_CACHE_CTL     BIT(0)
0241 
0242 #define IMX6Q_GPR5_L2_CLK_STOP          BIT(8)
0243 #define IMX6Q_GPR5_SATA_SW_PD           BIT(10)
0244 #define IMX6Q_GPR5_SATA_SW_RST          BIT(11)
0245 
0246 #define IMX6Q_GPR6_IPU1_ID00_WR_QOS_MASK    (0xf << 0)
0247 #define IMX6Q_GPR6_IPU1_ID01_WR_QOS_MASK    (0xf << 4)
0248 #define IMX6Q_GPR6_IPU1_ID10_WR_QOS_MASK    (0xf << 8)
0249 #define IMX6Q_GPR6_IPU1_ID11_WR_QOS_MASK    (0xf << 12)
0250 #define IMX6Q_GPR6_IPU1_ID00_RD_QOS_MASK    (0xf << 16)
0251 #define IMX6Q_GPR6_IPU1_ID01_RD_QOS_MASK    (0xf << 20)
0252 #define IMX6Q_GPR6_IPU1_ID10_RD_QOS_MASK    (0xf << 24)
0253 #define IMX6Q_GPR6_IPU1_ID11_RD_QOS_MASK    (0xf << 28)
0254 
0255 #define IMX6Q_GPR7_IPU2_ID00_WR_QOS_MASK    (0xf << 0)
0256 #define IMX6Q_GPR7_IPU2_ID01_WR_QOS_MASK    (0xf << 4)
0257 #define IMX6Q_GPR7_IPU2_ID10_WR_QOS_MASK    (0xf << 8)
0258 #define IMX6Q_GPR7_IPU2_ID11_WR_QOS_MASK    (0xf << 12)
0259 #define IMX6Q_GPR7_IPU2_ID00_RD_QOS_MASK    (0xf << 16)
0260 #define IMX6Q_GPR7_IPU2_ID01_RD_QOS_MASK    (0xf << 20)
0261 #define IMX6Q_GPR7_IPU2_ID10_RD_QOS_MASK    (0xf << 24)
0262 #define IMX6Q_GPR7_IPU2_ID11_RD_QOS_MASK    (0xf << 28)
0263 
0264 #define IMX6Q_GPR8_TX_SWING_LOW         (0x7f << 25)
0265 #define IMX6Q_GPR8_TX_SWING_FULL        (0x7f << 18)
0266 #define IMX6Q_GPR8_TX_DEEMPH_GEN2_6DB       (0x3f << 12)
0267 #define IMX6Q_GPR8_TX_DEEMPH_GEN2_3P5DB     (0x3f << 6)
0268 #define IMX6Q_GPR8_TX_DEEMPH_GEN1       (0x3f << 0)
0269 
0270 #define IMX6Q_GPR9_TZASC2_BYP           BIT(1)
0271 #define IMX6Q_GPR9_TZASC1_BYP           BIT(0)
0272 
0273 #define IMX6Q_GPR10_LOCK_DBG_EN         BIT(29)
0274 #define IMX6Q_GPR10_LOCK_DBG_CLK_EN     BIT(28)
0275 #define IMX6Q_GPR10_LOCK_SEC_ERR_RESP       BIT(27)
0276 #define IMX6Q_GPR10_LOCK_OCRAM_TZ_ADDR      (0x3f << 21)
0277 #define IMX6Q_GPR10_LOCK_OCRAM_TZ_EN        BIT(20)
0278 #define IMX6Q_GPR10_LOCK_DCIC2_MUX_MASK     (0x3 << 18)
0279 #define IMX6Q_GPR10_LOCK_DCIC1_MUX_MASK     (0x3 << 16)
0280 #define IMX6Q_GPR10_DBG_EN          BIT(13)
0281 #define IMX6Q_GPR10_DBG_CLK_EN          BIT(12)
0282 #define IMX6Q_GPR10_SEC_ERR_RESP_MASK       BIT(11)
0283 #define IMX6Q_GPR10_SEC_ERR_RESP_OKEY       0x0
0284 #define IMX6Q_GPR10_SEC_ERR_RESP_SLVE       BIT(11)
0285 #define IMX6Q_GPR10_OCRAM_TZ_ADDR_MASK      (0x3f << 5)
0286 #define IMX6Q_GPR10_OCRAM_TZ_EN_MASK        BIT(4)
0287 #define IMX6Q_GPR10_DCIC2_MUX_CTL_MASK      (0x3 << 2)
0288 #define IMX6Q_GPR10_DCIC2_MUX_CTL_IPU1_DI0  (0x0 << 2)
0289 #define IMX6Q_GPR10_DCIC2_MUX_CTL_IPU1_DI1  (0x1 << 2)
0290 #define IMX6Q_GPR10_DCIC2_MUX_CTL_IPU2_DI0  (0x2 << 2)
0291 #define IMX6Q_GPR10_DCIC2_MUX_CTL_IPU2_DI1  (0x3 << 2)
0292 #define IMX6Q_GPR10_DCIC1_MUX_CTL_MASK      (0x3 << 0)
0293 #define IMX6Q_GPR10_DCIC1_MUX_CTL_IPU1_DI0  (0x0 << 0)
0294 #define IMX6Q_GPR10_DCIC1_MUX_CTL_IPU1_DI1  (0x1 << 0)
0295 #define IMX6Q_GPR10_DCIC1_MUX_CTL_IPU2_DI0  (0x2 << 0)
0296 #define IMX6Q_GPR10_DCIC1_MUX_CTL_IPU2_DI1  (0x3 << 0)
0297 
0298 #define IMX6Q_GPR12_ARMP_IPG_CLK_EN     BIT(27)
0299 #define IMX6Q_GPR12_ARMP_AHB_CLK_EN     BIT(26)
0300 #define IMX6Q_GPR12_ARMP_ATB_CLK_EN     BIT(25)
0301 #define IMX6Q_GPR12_ARMP_APB_CLK_EN     BIT(24)
0302 #define IMX6Q_GPR12_DEVICE_TYPE         (0xf << 12)
0303 #define IMX6Q_GPR12_PCIE_CTL_2          BIT(10)
0304 #define IMX6Q_GPR12_LOS_LEVEL           (0x1f << 4)
0305 
0306 #define IMX6Q_GPR13_SDMA_STOP_REQ       BIT(30)
0307 #define IMX6Q_GPR13_CAN2_STOP_REQ       BIT(29)
0308 #define IMX6Q_GPR13_CAN1_STOP_REQ       BIT(28)
0309 #define IMX6Q_GPR13_ENET_STOP_REQ       BIT(27)
0310 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_MASK     (0x7 << 24)
0311 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_0_5_DB   (0x0 << 24)
0312 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_1_0_DB   (0x1 << 24)
0313 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_1_5_DB   (0x2 << 24)
0314 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_2_0_DB   (0x3 << 24)
0315 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_2_5_DB   (0x4 << 24)
0316 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_3_0_DB   (0x5 << 24)
0317 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_3_5_DB   (0x6 << 24)
0318 #define IMX6Q_GPR13_SATA_RX_EQ_VAL_4_0_DB   (0x7 << 24)
0319 #define IMX6Q_GPR13_SATA_RX_LOS_LVL_MASK    (0x1f << 19)
0320 #define IMX6Q_GPR13_SATA_RX_LOS_LVL_SATA1I  (0x10 << 19)
0321 #define IMX6Q_GPR13_SATA_RX_LOS_LVL_SATA1M  (0x10 << 19)
0322 #define IMX6Q_GPR13_SATA_RX_LOS_LVL_SATA1X  (0x1a << 19)
0323 #define IMX6Q_GPR13_SATA_RX_LOS_LVL_SATA2I  (0x12 << 19)
0324 #define IMX6Q_GPR13_SATA_RX_LOS_LVL_SATA2M  (0x12 << 19)
0325 #define IMX6Q_GPR13_SATA_RX_LOS_LVL_SATA2X  (0x1a << 19)
0326 #define IMX6Q_GPR13_SATA_RX_DPLL_MODE_MASK  (0x7 << 16)
0327 #define IMX6Q_GPR13_SATA_RX_DPLL_MODE_1P_1F (0x0 << 16)
0328 #define IMX6Q_GPR13_SATA_RX_DPLL_MODE_2P_2F (0x1 << 16)
0329 #define IMX6Q_GPR13_SATA_RX_DPLL_MODE_1P_4F (0x2 << 16)
0330 #define IMX6Q_GPR13_SATA_RX_DPLL_MODE_2P_4F (0x3 << 16)
0331 #define IMX6Q_GPR13_SATA_SPD_MODE_MASK      BIT(15)
0332 #define IMX6Q_GPR13_SATA_SPD_MODE_1P5G      0x0
0333 #define IMX6Q_GPR13_SATA_SPD_MODE_3P0G      BIT(15)
0334 #define IMX6Q_GPR13_SATA_MPLL_SS_EN     BIT(14)
0335 #define IMX6Q_GPR13_SATA_TX_ATTEN_MASK      (0x7 << 11)
0336 #define IMX6Q_GPR13_SATA_TX_ATTEN_16_16     (0x0 << 11)
0337 #define IMX6Q_GPR13_SATA_TX_ATTEN_14_16     (0x1 << 11)
0338 #define IMX6Q_GPR13_SATA_TX_ATTEN_12_16     (0x2 << 11)
0339 #define IMX6Q_GPR13_SATA_TX_ATTEN_10_16     (0x3 << 11)
0340 #define IMX6Q_GPR13_SATA_TX_ATTEN_9_16      (0x4 << 11)
0341 #define IMX6Q_GPR13_SATA_TX_ATTEN_8_16      (0x5 << 11)
0342 #define IMX6Q_GPR13_SATA_TX_BOOST_MASK      (0xf << 7)
0343 #define IMX6Q_GPR13_SATA_TX_BOOST_0_00_DB   (0x0 << 7)
0344 #define IMX6Q_GPR13_SATA_TX_BOOST_0_37_DB   (0x1 << 7)
0345 #define IMX6Q_GPR13_SATA_TX_BOOST_0_74_DB   (0x2 << 7)
0346 #define IMX6Q_GPR13_SATA_TX_BOOST_1_11_DB   (0x3 << 7)
0347 #define IMX6Q_GPR13_SATA_TX_BOOST_1_48_DB   (0x4 << 7)
0348 #define IMX6Q_GPR13_SATA_TX_BOOST_1_85_DB   (0x5 << 7)
0349 #define IMX6Q_GPR13_SATA_TX_BOOST_2_22_DB   (0x6 << 7)
0350 #define IMX6Q_GPR13_SATA_TX_BOOST_2_59_DB   (0x7 << 7)
0351 #define IMX6Q_GPR13_SATA_TX_BOOST_2_96_DB   (0x8 << 7)
0352 #define IMX6Q_GPR13_SATA_TX_BOOST_3_33_DB   (0x9 << 7)
0353 #define IMX6Q_GPR13_SATA_TX_BOOST_3_70_DB   (0xa << 7)
0354 #define IMX6Q_GPR13_SATA_TX_BOOST_4_07_DB   (0xb << 7)
0355 #define IMX6Q_GPR13_SATA_TX_BOOST_4_44_DB   (0xc << 7)
0356 #define IMX6Q_GPR13_SATA_TX_BOOST_4_81_DB   (0xd << 7)
0357 #define IMX6Q_GPR13_SATA_TX_BOOST_5_28_DB   (0xe << 7)
0358 #define IMX6Q_GPR13_SATA_TX_BOOST_5_75_DB   (0xf << 7)
0359 #define IMX6Q_GPR13_SATA_TX_LVL_MASK        (0x1f << 2)
0360 #define IMX6Q_GPR13_SATA_TX_LVL_0_937_V     (0x00 << 2)
0361 #define IMX6Q_GPR13_SATA_TX_LVL_0_947_V     (0x01 << 2)
0362 #define IMX6Q_GPR13_SATA_TX_LVL_0_957_V     (0x02 << 2)
0363 #define IMX6Q_GPR13_SATA_TX_LVL_0_966_V     (0x03 << 2)
0364 #define IMX6Q_GPR13_SATA_TX_LVL_0_976_V     (0x04 << 2)
0365 #define IMX6Q_GPR13_SATA_TX_LVL_0_986_V     (0x05 << 2)
0366 #define IMX6Q_GPR13_SATA_TX_LVL_0_996_V     (0x06 << 2)
0367 #define IMX6Q_GPR13_SATA_TX_LVL_1_005_V     (0x07 << 2)
0368 #define IMX6Q_GPR13_SATA_TX_LVL_1_015_V     (0x08 << 2)
0369 #define IMX6Q_GPR13_SATA_TX_LVL_1_025_V     (0x09 << 2)
0370 #define IMX6Q_GPR13_SATA_TX_LVL_1_035_V     (0x0a << 2)
0371 #define IMX6Q_GPR13_SATA_TX_LVL_1_045_V     (0x0b << 2)
0372 #define IMX6Q_GPR13_SATA_TX_LVL_1_054_V     (0x0c << 2)
0373 #define IMX6Q_GPR13_SATA_TX_LVL_1_064_V     (0x0d << 2)
0374 #define IMX6Q_GPR13_SATA_TX_LVL_1_074_V     (0x0e << 2)
0375 #define IMX6Q_GPR13_SATA_TX_LVL_1_084_V     (0x0f << 2)
0376 #define IMX6Q_GPR13_SATA_TX_LVL_1_094_V     (0x10 << 2)
0377 #define IMX6Q_GPR13_SATA_TX_LVL_1_104_V     (0x11 << 2)
0378 #define IMX6Q_GPR13_SATA_TX_LVL_1_113_V     (0x12 << 2)
0379 #define IMX6Q_GPR13_SATA_TX_LVL_1_123_V     (0x13 << 2)
0380 #define IMX6Q_GPR13_SATA_TX_LVL_1_133_V     (0x14 << 2)
0381 #define IMX6Q_GPR13_SATA_TX_LVL_1_143_V     (0x15 << 2)
0382 #define IMX6Q_GPR13_SATA_TX_LVL_1_152_V     (0x16 << 2)
0383 #define IMX6Q_GPR13_SATA_TX_LVL_1_162_V     (0x17 << 2)
0384 #define IMX6Q_GPR13_SATA_TX_LVL_1_172_V     (0x18 << 2)
0385 #define IMX6Q_GPR13_SATA_TX_LVL_1_182_V     (0x19 << 2)
0386 #define IMX6Q_GPR13_SATA_TX_LVL_1_191_V     (0x1a << 2)
0387 #define IMX6Q_GPR13_SATA_TX_LVL_1_201_V     (0x1b << 2)
0388 #define IMX6Q_GPR13_SATA_TX_LVL_1_211_V     (0x1c << 2)
0389 #define IMX6Q_GPR13_SATA_TX_LVL_1_221_V     (0x1d << 2)
0390 #define IMX6Q_GPR13_SATA_TX_LVL_1_230_V     (0x1e << 2)
0391 #define IMX6Q_GPR13_SATA_TX_LVL_1_240_V     (0x1f << 2)
0392 #define IMX6Q_GPR13_SATA_MPLL_CLK_EN        BIT(1)
0393 #define IMX6Q_GPR13_SATA_TX_EDGE_RATE       BIT(0)
0394 
0395 /* For imx6sl iomux gpr register field define */
0396 #define IMX6SL_GPR1_FEC_CLOCK_MUX1_SEL_MASK    (0x3 << 17)
0397 #define IMX6SL_GPR1_FEC_CLOCK_MUX2_SEL_MASK    (0x1 << 14)
0398 
0399 /* For imx6sx iomux gpr register field define */
0400 #define IMX6SX_GPR1_VDEC_SW_RST_MASK            (0x1 << 20)
0401 #define IMX6SX_GPR1_VDEC_SW_RST_RESET           (0x1 << 20)
0402 #define IMX6SX_GPR1_VDEC_SW_RST_RELEASE         (0x0 << 20)
0403 #define IMX6SX_GPR1_VADC_SW_RST_MASK            (0x1 << 19)
0404 #define IMX6SX_GPR1_VADC_SW_RST_RESET           (0x1 << 19)
0405 #define IMX6SX_GPR1_VADC_SW_RST_RELEASE         (0x0 << 19)
0406 #define IMX6SX_GPR1_FEC_CLOCK_MUX_SEL_MASK      (0x3 << 13)
0407 #define IMX6SX_GPR1_FEC_CLOCK_PAD_DIR_MASK      (0x3 << 17)
0408 #define IMX6SX_GPR1_FEC_CLOCK_MUX_SEL_EXT       (0x3 << 13)
0409 
0410 #define IMX6SX_GPR2_MQS_OVERSAMPLE_MASK         (0x1 << 26)
0411 #define IMX6SX_GPR2_MQS_OVERSAMPLE_SHIFT        (26)
0412 #define IMX6SX_GPR2_MQS_EN_MASK             (0x1 << 25)
0413 #define IMX6SX_GPR2_MQS_EN_SHIFT            (25)
0414 #define IMX6SX_GPR2_MQS_SW_RST_MASK         (0x1 << 24)
0415 #define IMX6SX_GPR2_MQS_SW_RST_SHIFT            (24)
0416 #define IMX6SX_GPR2_MQS_CLK_DIV_MASK            (0xFF << 16)
0417 #define IMX6SX_GPR2_MQS_CLK_DIV_SHIFT           (16)
0418 
0419 #define IMX6SX_GPR4_FEC_ENET1_STOP_REQ          (0x1 << 3)
0420 #define IMX6SX_GPR4_FEC_ENET2_STOP_REQ          (0x1 << 4)
0421 
0422 #define IMX6SX_GPR5_DISP_MUX_LDB_CTRL_MASK      (0x1 << 3)
0423 #define IMX6SX_GPR5_DISP_MUX_LDB_CTRL_LCDIF1        (0x0 << 3)
0424 #define IMX6SX_GPR5_DISP_MUX_LDB_CTRL_LCDIF2        (0x1 << 3)
0425 
0426 #define IMX6SX_GPR5_CSI2_MUX_CTRL_MASK          (0x3 << 27)
0427 #define IMX6SX_GPR5_CSI2_MUX_CTRL_EXT_PIN       (0x0 << 27)
0428 #define IMX6SX_GPR5_CSI2_MUX_CTRL_CVD           (0x1 << 27)
0429 #define IMX6SX_GPR5_CSI2_MUX_CTRL_VDAC_TO_CSI       (0x2 << 27)
0430 #define IMX6SX_GPR5_CSI2_MUX_CTRL_GND           (0x3 << 27)
0431 #define IMX6SX_GPR5_VADC_TO_CSI_CAPTURE_EN_MASK     (0x1 << 26)
0432 #define IMX6SX_GPR5_VADC_TO_CSI_CAPTURE_EN_ENABLE   (0x1 << 26)
0433 #define IMX6SX_GPR5_VADC_TO_CSI_CAPTURE_EN_DISABLE  (0x0 << 26)
0434 #define IMX6SX_GPR5_PCIE_BTNRST_RESET           BIT(19)
0435 #define IMX6SX_GPR5_CSI1_MUX_CTRL_MASK          (0x3 << 4)
0436 #define IMX6SX_GPR5_CSI1_MUX_CTRL_EXT_PIN       (0x0 << 4)
0437 #define IMX6SX_GPR5_CSI1_MUX_CTRL_CVD           (0x1 << 4)
0438 #define IMX6SX_GPR5_CSI1_MUX_CTRL_VDAC_TO_CSI       (0x2 << 4)
0439 #define IMX6SX_GPR5_CSI1_MUX_CTRL_GND           (0x3 << 4)
0440 
0441 #define IMX6SX_GPR5_DISP_MUX_DCIC2_LCDIF2       (0x0 << 2)
0442 #define IMX6SX_GPR5_DISP_MUX_DCIC2_LVDS         (0x1 << 2)
0443 #define IMX6SX_GPR5_DISP_MUX_DCIC2_MASK         (0x1 << 2)
0444 #define IMX6SX_GPR5_DISP_MUX_DCIC1_LCDIF1       (0x0 << 1)
0445 #define IMX6SX_GPR5_DISP_MUX_DCIC1_LVDS         (0x1 << 1)
0446 #define IMX6SX_GPR5_DISP_MUX_DCIC1_MASK         (0x1 << 1)
0447 
0448 #define IMX6SX_GPR12_PCIE_TEST_POWERDOWN        BIT(30)
0449 #define IMX6SX_GPR12_PCIE_PM_TURN_OFF           BIT(16)
0450 #define IMX6SX_GPR12_PCIE_RX_EQ_MASK            (0x7 << 0)
0451 #define IMX6SX_GPR12_PCIE_RX_EQ_2           (0x2 << 0)
0452 
0453 /* For imx6ul iomux gpr register field define */
0454 #define IMX6UL_GPR1_ENET1_CLK_DIR       (0x1 << 17)
0455 #define IMX6UL_GPR1_ENET2_CLK_DIR       (0x1 << 18)
0456 #define IMX6UL_GPR1_ENET1_CLK_OUTPUT        (0x1 << 17)
0457 #define IMX6UL_GPR1_ENET2_CLK_OUTPUT        (0x1 << 18)
0458 #define IMX6UL_GPR1_ENET_CLK_DIR        (0x3 << 17)
0459 #define IMX6UL_GPR1_ENET_CLK_OUTPUT     (0x3 << 17)
0460 #define IMX6UL_GPR1_SAI1_MCLK_DIR       (0x1 << 19)
0461 #define IMX6UL_GPR1_SAI2_MCLK_DIR       (0x1 << 20)
0462 #define IMX6UL_GPR1_SAI3_MCLK_DIR       (0x1 << 21)
0463 #define IMX6UL_GPR1_SAI_MCLK_MASK       (0x7 << 19)
0464 #define MCLK_DIR(x) (x == 1 ? IMX6UL_GPR1_SAI1_MCLK_DIR : x == 2 ? \
0465              IMX6UL_GPR1_SAI2_MCLK_DIR : IMX6UL_GPR1_SAI3_MCLK_DIR)
0466 
0467 /* For imx6sll iomux gpr register field define */
0468 #define IMX6SLL_GPR5_AFCG_X_BYPASS_MASK     (0x1f << 11)
0469 
0470 #endif /* __LINUX_IMX6Q_IOMUXC_GPR_H */