Home | History | Annotate | Line # | Download | only in nvidia
      1 /* $NetBSD: tegra124_carreg.h,v 1.7 2019/03/09 19:41:26 jakllsch Exp $ */
      2 
      3 /*-
      4  * Copyright (c) 2015 Jared D. McNeill <jmcneill (at) invisible.ca>
      5  * All rights reserved.
      6  *
      7  * Redistribution and use in source and binary forms, with or without
      8  * modification, are permitted provided that the following conditions
      9  * are met:
     10  * 1. Redistributions of source code must retain the above copyright
     11  *    notice, this list of conditions and the following disclaimer.
     12  * 2. Redistributions in binary form must reproduce the above copyright
     13  *    notice, this list of conditions and the following disclaimer in the
     14  *    documentation and/or other materials provided with the distribution.
     15  *
     16  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     17  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     18  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     19  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     20  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
     21  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
     22  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
     23  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
     24  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     25  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     26  * SUCH DAMAGE.
     27  */
     28 
     29 #ifndef _ARM_TEGRA124_CARREG_H
     30 #define _ARM_TEGRA124_CARREG_H
     31 
     32 #define TEGRA124_REF_FREQ	12000000
     33 
     34 #define CAR_RST_SOURCE_REG	0x00
     35 #define CAR_RST_SOURCE_WDT_EN		__BIT(5)
     36 #define CAR_RST_SOURCE_WDT_SEL		__BIT(4)
     37 #define CAR_RST_SOURCE_WDT_SYS_RST_EN	__BIT(2)
     38 #define CAR_RST_SOURCE_WDT_COP_RST_EN	__BIT(1)
     39 #define CAR_RST_SOURCE_WDT_CPU_RST_EN	__BIT(0)
     40 
     41 #define CAR_CLK_OUT_ENB_L_REG	0x10
     42 #define CAR_CLK_OUT_ENB_H_REG	0x14
     43 #define CAR_CLK_OUT_ENB_U_REG	0x18
     44 
     45 #define CAR_PLL_LFSR_REG	0x54
     46 #define CAR_PLL_LFSR_RND		__BITS(15,0)
     47 
     48 #define CAR_PLLP_BASE_REG	0xa0
     49 #define CAR_PLLP_BASE_BYPASS		__BIT(31)
     50 #define CAR_PLLP_BASE_ENABLE		__BIT(30)
     51 #define CAR_PLLP_BASE_REF_DIS		__BIT(29)
     52 #define CAR_PLLP_BASE_OVERRIDE		__BIT(28)
     53 #define CAR_PLLP_BASE_LOCK		__BIT(27)
     54 #define CAR_PLLP_BASE_DIVP		__BITS(22,20)
     55 #define CAR_PLLP_BASE_DIVN		__BITS(17,8)
     56 #define CAR_PLLP_BASE_DIVM		__BITS(4,0)
     57 
     58 #define CAR_PLLP_OUTA_REG	0xa4
     59 #define CAR_PLLP_OUTA_OUT2_RATIO	__BITS(31,24)
     60 #define CAR_PLLP_OUTA_OUT2_OVRRIDE	__BIT(18)
     61 #define CAR_PLLP_OUTA_OUT2_CLKEN	__BIT(17)
     62 #define CAR_PLLP_OUTA_OUT2_RSTN		__BIT(16)
     63 #define CAR_PLLP_OUTA_OUT1_RATIO	__BITS(15,8)
     64 #define CAR_PLLP_OUTA_OUT1_OVRRIDE	__BIT(2)
     65 #define CAR_PLLP_OUTA_OUT1_CLKEN	__BIT(1)
     66 #define CAR_PLLP_OUTA_OUT1_RSTN		__BIT(0)
     67 #define CAR_PLLP_OUTB_REG	0xa8
     68 #define CAR_PLLP_OUTB_OUT4_RATIO	__BITS(31,24)
     69 #define CAR_PLLP_OUTB_OUT4_OVRRIDE	__BIT(18)
     70 #define CAR_PLLP_OUTB_OUT4_CLKEN	__BIT(17)
     71 #define CAR_PLLP_OUTB_OUT4_RSTN		__BIT(16)
     72 #define CAR_PLLP_OUTB_OUT3_RATIO	__BITS(15,8)
     73 #define CAR_PLLP_OUTB_OUT3_OVRRIDE	__BIT(2)
     74 #define CAR_PLLP_OUTB_OUT3_CLKEN	__BIT(1)
     75 #define CAR_PLLP_OUTB_OUT3_RSTN		__BIT(0)
     76 #define CAR_PLLP_OUTC_REG	0x67c
     77 #define CAR_PLLP_OUTC_OUT5_RATIO	__BITS(31,24)
     78 #define CAR_PLLP_OUTC_OUT5_OVERRIDE	__BIT(18)
     79 #define CAR_PLLP_OUTC_OUT5_CLKEN	__BIT(17)
     80 #define CAR_PLLP_OUTC_OUT5_RSTN		__BIT(16)
     81 #define CAR_PLLP_MISC_REG	0xac
     82 
     83 #define CAR_PLLC_BASE_REG	0x80
     84 #define CAR_PLLC_BASE_ENABLE		__BIT(30)
     85 #define CAR_PLLC_BASE_REF_DIS		__BIT(29)
     86 #define CAR_PLLC_BASE_LOCK_OVERRIDE	__BIT(28)
     87 #define CAR_PLLC_BASE_LOCK		__BIT(27)
     88 #define CAR_PLLC_BASE_DIVP		__BITS(23,20)
     89 #define CAR_PLLC_BASE_DIVN		__BITS(15,8)
     90 #define CAR_PLLC_BASE_DIVM		__BITS(7,0)
     91 
     92 #define CAR_PLLU_BASE_REG	0xc0
     93 #define CAR_PLLU_BASE_BYPASS		__BIT(31)
     94 #define CAR_PLLU_BASE_ENABLE		__BIT(30)
     95 #define CAR_PLLU_BASE_REF_DIS		__BIT(29)
     96 #define CAR_PLLU_BASE_LOCK		__BIT(27)
     97 #define CAR_PLLU_BASE_CLKENABLE_48M	__BIT(25)
     98 #define CAR_PLLU_BASE_OVERRIDE		__BIT(24)
     99 #define CAR_PLLU_BASE_CLKENABLE_ICUSB	__BIT(23)
    100 #define CAR_PLLU_BASE_CLKENABLE_HSIC	__BIT(22)
    101 #define CAR_PLLU_BASE_CLKENABLE_USB	__BIT(21)
    102 #define CAR_PLLU_BASE_VCO_FREQ		__BIT(20)
    103 #define CAR_PLLU_BASE_DIVN		__BITS(17,8)
    104 #define CAR_PLLU_BASE_DIVM		__BITS(4,0)
    105 
    106 #define CAR_PLLD_BASE_REG	0xd0
    107 #define CAR_PLLD_BASE_BYPASS		__BIT(31)
    108 #define CAR_PLLD_BASE_ENABLE		__BIT(30)
    109 #define CAR_PLLD_BASE_REF_DIS		__BIT(29)
    110 #define CAR_PLLD_BASE_LOCK		__BIT(27)
    111 #define CAR_PLLD_BASE_CLKENABLE_CSI	__BIT(26)
    112 #define CAR_PLLD_BASE_DSIA_CLK_SRC	__BIT(25)
    113 #define CAR_PLLD_BASE_CSI_CLK_SRC	__BIT(23)
    114 #define CAR_PLLD_BASE_DIVP		__BITS(22,20)
    115 #define CAR_PLLD_BASE_DIVN		__BITS(18,8)
    116 #define CAR_PLLD_BASE_DIVM		__BITS(4,0)
    117 
    118 #define CAR_PLLD_MISC_REG	0xdc
    119 
    120 #define CAR_PLLX_BASE_REG	0xe0
    121 #define CAR_PLLX_BASE_BYPASS		__BIT(31)
    122 #define CAR_PLLX_BASE_ENABLE		__BIT(30)
    123 #define CAR_PLLX_BASE_REF_DIS		__BIT(29)
    124 #define CAR_PLLX_BASE_LOCK		__BIT(27)
    125 #define CAR_PLLX_BASE_DIVP		__BITS(23,20)
    126 #define CAR_PLLX_BASE_DIVN		__BITS(15,8)
    127 #define CAR_PLLX_BASE_DIVM		__BITS(7,0)
    128 
    129 #define CAR_PLLX_MISC_REG	0xe4
    130 #define CAR_PLLX_MISC_FO_LP_DISABLE	__BIT(29)
    131 #define CAR_PLLX_MISC_FO_G_DISABLE	__BIT(28)
    132 #define CAR_PLLX_MISC_PTS		__BITS(23,22)
    133 #define CAR_PLLX_MISC_LOCK_ENABLE	__BIT(18)
    134 
    135 #define CAR_PLLE_BASE_REG	0xe8
    136 #define CAR_PLLE_BASE_ENABLE		__BIT(30)
    137 #define CAR_PLLE_BASE_LOCK_OVERRIDE	__BIT(29)
    138 #define CAR_PLLE_BASE_FDIV48		__BIT(28)
    139 #define CAR_PLLE_BASE_DIVP_CML		__BITS(27,24)
    140 #define CAR_PLLE_BASE_EXT_SETUP_23_16	__BITS(23,16)
    141 #define CAR_PLLE_BASE_DIVN		__BITS(15,8)
    142 #define CAR_PLLE_BASE_DIVM		__BITS(7,0)
    143 
    144 #define CAR_PLLE_MISC_REG	0xec
    145 #define CAR_PLLE_MISC_IDDQ_SWCTL	__BIT(14)
    146 #define CAR_PLLE_MISC_IDDQ_OVERRIDE	__BIT(13)
    147 #define CAR_PLLE_MISC_LOCK		__BIT(11)
    148 #define CAR_PLLE_MISC_LOCK_ENABLE	__BIT(9)
    149 
    150 #define CAR_PLLD2_BASE_REG	0x4b8
    151 #define CAR_PLLD2_BASE_BYPASS		__BIT(31)
    152 #define CAR_PLLD2_BASE_ENABLE		__BIT(30)
    153 #define CAR_PLLD2_BASE_REF_DIS		__BIT(29)
    154 #define CAR_PLLD2_BASE_FREQLOCK		__BIT(28)
    155 #define CAR_PLLD2_BASE_LOCK		__BIT(27)
    156 #define CAR_PLLD2_BASE_REF_SRC_SEL	__BITS(26,25)
    157 #define CAR_PLLD2_BASE_REF_SRC_SEL_PLL_D	0
    158 #define CAR_PLLD2_BASE_REF_SRC_SEL_PLL_D2	1
    159 #define CAR_PLLD2_BASE_LOCK_OVERRIDE	__BIT(24)
    160 #define CAR_PLLD2_BASE_DIVP		__BITS(23,20)
    161 #define CAR_PLLD2_BASE_IDDQ		__BIT(19)
    162 #define CAR_PLLD2_BASE_PTS		__BIT(16)
    163 #define CAR_PLLD2_BASE_DIVN		__BITS(15,8)
    164 #define CAR_PLLD2_BASE_DIVM		__BITS(7,0)
    165 
    166 #define CAR_PLLD2_MISC_REG	0x4bc
    167 #define CAR_PLLD2_MISC_EN_FSTLCK	__BIT(31)
    168 #define CAR_PLLD2_MISC_LOCK_ENABLE	__BIT(30)
    169 #define CAR_PLLD2_MISC_MON_TEST_OUT	__BITS(29,27)
    170 #define CAR_PLLD2_MISC_KCP		__BITS(26,25)
    171 #define CAR_PLLD2_MISC_KVCO		__BIT(24)
    172 #define CAR_PLLD2_MISC_SETUP		__BITS(23,0)
    173 
    174 #define CAR_CLKSRC_I2C1_REG		0x124
    175 #define CAR_CLKSRC_I2C2_REG		0x198
    176 #define CAR_CLKSRC_I2C3_REG		0x1b8
    177 #define CAR_CLKSRC_I2C4_REG		0x3c4
    178 #define CAR_CLKSRC_I2C5_REG		0x128
    179 #define CAR_CLKSRC_I2C6_REG		0x65c
    180 
    181 #define CAR_CLKSRC_I2C_SRC		__BITS(31,29)
    182 #define CAR_CLKSRC_I2C_SRC_PLLP_OUT0	0
    183 #define CAR_CLKSRC_I2C_SRC_PLLC2_OUT0	1
    184 #define CAR_CLKSRC_I2C_SRC_PLLC_OUT0	2
    185 #define CAR_CLKSRC_I2C_SRC_PLLC3_OUT0	3
    186 #define CAR_CLKSRC_I2C_SRC_PLLM_OUT0	4
    187 #define CAR_CLKSRC_I2C_SRC_CLK_M	6
    188 #define CAR_CLKSRC_I2C_DIV		__BITS(15,0)
    189 
    190 #define CAR_CLKSRC_SPI1_REG		0x134
    191 #define CAR_CLKSRC_SPI2_REG		0x118
    192 #define CAR_CLKSRC_SPI3_REG		0x11c
    193 #define CAR_CLKSRC_SPI4_REG		0x1b4
    194 #define CAR_CLKSRC_SPI5_REG		0x3c8
    195 #define CAR_CLKSRC_SPI6_REG		0x3cc
    196 
    197 #define CAR_CLKSRC_SPI_SRC		__BITS(31,29)
    198 #define CAR_CLKSRC_SPI_SRC_PLLP_OUT0	0
    199 #define CAR_CLKSRC_SPI_SRC_PLLC2_OUT0	1
    200 #define CAR_CLKSRC_SPI_SRC_PLLC_OUT0	2
    201 #define CAR_CLKSRC_SPI_SRC_PLLC3_OUT0	3
    202 #define CAR_CLKSRC_SPI_SRC_PLLM_OUT0	4
    203 #define CAR_CLKSRC_SPI_SRC_CLK_M	6
    204 #define CAR_CLKSRC_SPI_DIV		__BITS(7,0)
    205 
    206 #define CAR_CLKSRC_UARTA_REG		0x178
    207 #define CAR_CLKSRC_UARTB_REG		0x17c
    208 #define CAR_CLKSRC_UARTC_REG		0x1a0
    209 #define CAR_CLKSRC_UARTD_REG		0x1c0
    210 
    211 #define CAR_CLKSRC_UART_SRC		__BITS(31,29)
    212 #define CAR_CLKSRC_UART_SRC_PLLP_OUT0	0
    213 #define CAR_CLKSRC_UART_SRC_PLLC2_OUT0	1
    214 #define CAR_CLKSRC_UART_SRC_PLLC_OUT0	2
    215 #define CAR_CLKSRC_UART_SRC_PLLC3_OUT0	3
    216 #define CAR_CLKSRC_UART_SRC_PLLM_OUT0	4
    217 #define CAR_CLKSRC_UART_SRC_CLK_M	6
    218 #define CAR_CLKSRC_UART_DIV_ENB		__BIT(24)
    219 #define CAR_CLKSRC_UART_DIV		__BITS(15,0)
    220 
    221 #define CAR_CLKSRC_SDMMC1_REG		0x150
    222 #define CAR_CLKSRC_SDMMC2_REG		0x154
    223 #define CAR_CLKSRC_SDMMC4_REG		0x164
    224 #define CAR_CLKSRC_SDMMC3_REG		0x1bc
    225 
    226 #define CAR_CLKSRC_SDMMC_SRC		__BITS(31,29)
    227 #define CAR_CLKSRC_SDMMC_SRC_PLLP_OUT0	0
    228 #define CAR_CLKSRC_SDMMC_SRC_PLLC2_OUT0	1
    229 #define CAR_CLKSRC_SDMMC_SRC_PLLC_OUT0	2
    230 #define CAR_CLKSRC_SDMMC_SRC_PLLC3_OUT0	3
    231 #define CAR_CLKSRC_SDMMC_SRC_PLLM_OUT0	4
    232 #define CAR_CLKSRC_SDMMC_SRC_PLLE_OUT0	5
    233 #define CAR_CLKSRC_SDMMC_SRC_CLK_M	6
    234 #define CAR_CLKSRC_SDMMC_DIV		__BITS(7,0)
    235 
    236 #define CAR_CLKSRC_HDMI_REG		0x18c
    237 #define CAR_CLKSRC_HDMI_SRC		__BITS(31,29)
    238 #define CAR_CLKSRC_HDMI_SRC_PLLP_OUT0	0
    239 #define CAR_CLKSRC_HDMI_SRC_PLLM_OUT0	1
    240 #define CAR_CLKSRC_HDMI_SRC_PLLD_OUT0	2
    241 #define CAR_CLKSRC_HDMI_SRC_PLLA_OUT0	3
    242 #define CAR_CLKSRC_HDMI_SRC_PLLC_OUT0	4
    243 #define CAR_CLKSRC_HDMI_SRC_PLLD2_OUT0	5
    244 #define CAR_CLKSRC_HDMI_SRC_CLK_M	6
    245 #define CAR_CLKSRC_HDMI_DIV		__BITS(7,0)
    246 
    247 #define CAR_CLKSRC_DISP1_REG		0x138
    248 #define CAR_CLKSRC_DISP2_REG		0x13c
    249 #define CAR_CLKSRC_DISP_SRC		__BITS(31,29)
    250 #define CAR_CLKSRC_DISP_SRC_PLLP_OUT0	0
    251 #define CAR_CLKSRC_DISP_SRC_PLLM_OUT0	1
    252 #define CAR_CLKSRC_DISP_SRC_PLLD_OUT0	2
    253 #define CAR_CLKSRC_DISP_SRC_PLLA_OUT0	3
    254 #define CAR_CLKSRC_DISP_SRC_PLLC_OUT0	4
    255 #define CAR_CLKSRC_DISP_SRC_PLLD2_OUT0	5
    256 #define CAR_CLKSRC_DISP_SRC_CLK_M	6
    257 
    258 #define CAR_CLKSRC_HOST1X_REG		0x180
    259 #define CAR_CLKSRC_HOST1X_SRC		__BITS(31,29)
    260 #define CAR_CLKSRC_HOST1X_SRC_PLLM_OUT0		0
    261 #define CAR_CLKSRC_HOST1X_SRC_PLLC2_OUT0	1
    262 #define CAR_CLKSRC_HOST1X_SRC_PLLC_OUT0		2
    263 #define CAR_CLKSRC_HOST1X_SRC_PLLC3_OUT0	3
    264 #define CAR_CLKSRC_HOST1X_SRC_PLLP_OUT0		4
    265 #define CAR_CLKSRC_HOST1X_SRC_PLLA_OUT0		6
    266 #define CAR_CLKSRC_HOST1X_IDLE_DIVISOR	__BITS(15,8)
    267 #define CAR_CLKSRC_HOST1X_CLK_DIVISOR	__BITS(7,0)
    268 
    269 #define CAR_RST_DEV_L_SET_REG		0x300
    270 #define CAR_RST_DEV_L_CLR_REG		0x304
    271 #define CAR_RST_DEV_H_SET_REG		0x308
    272 #define CAR_RST_DEV_H_CLR_REG		0x30c
    273 #define CAR_RST_DEV_U_SET_REG		0x310
    274 #define CAR_RST_DEV_U_CLR_REG		0x314
    275 #define CAR_RST_DEV_V_SET_REG		0x430
    276 #define CAR_RST_DEV_V_CLR_REG		0x434
    277 #define CAR_RST_DEV_W_SET_REG		0x438
    278 #define CAR_RST_DEV_W_CLR_REG		0x43c
    279 #define CAR_RST_DEV_X_SET_REG		0x290
    280 #define CAR_RST_DEV_X_CLR_REG		0x294
    281 
    282 #define CAR_CLK_ENB_L_SET_REG		0x320
    283 #define CAR_CLK_ENB_L_CLR_REG		0x324
    284 #define CAR_CLK_ENB_H_SET_REG		0x328
    285 #define CAR_CLK_ENB_H_CLR_REG		0x32c
    286 #define CAR_CLK_ENB_U_SET_REG		0x330
    287 #define CAR_CLK_ENB_U_CLR_REG		0x334
    288 #define CAR_CLK_ENB_V_SET_REG		0x440
    289 #define CAR_CLK_ENB_V_CLR_REG		0x444
    290 #define CAR_CLK_ENB_W_SET_REG		0x448
    291 #define CAR_CLK_ENB_W_CLR_REG		0x44c
    292 #define CAR_CLK_ENB_X_SET_REG		0x284
    293 #define CAR_CLK_ENB_X_CLR_REG		0x288
    294 
    295 #define CAR_DEV_L_CACHE2		__BIT(31)
    296 #define CAR_DEV_L_I2S0			__BIT(30)
    297 #define CAR_DEV_L_VCP			__BIT(29)
    298 #define CAR_DEV_L_HOST1X		__BIT(28)
    299 #define CAR_DEV_L_DISP1			__BIT(27)
    300 #define CAR_DEV_L_DISP2			__BIT(26)
    301 #define CAR_DEV_L_ISP			__BIT(23)
    302 #define CAR_DEV_L_USBD			__BIT(22)
    303 #define CAR_DEV_L_VI			__BIT(20)
    304 #define CAR_DEV_L_I2S2			__BIT(18)
    305 #define CAR_DEV_L_PWM			__BIT(17)
    306 #define CAR_DEV_L_SDMMC4		__BIT(15)
    307 #define CAR_DEV_L_SDMMC1		__BIT(14)
    308 #define CAR_DEV_L_I2C1			__BIT(12)
    309 #define CAR_DEV_L_I2S1			__BIT(11)
    310 #define CAR_DEV_L_SPDIF			__BIT(10)
    311 #define CAR_DEV_L_SDMMC2		__BIT(9)
    312 #define CAR_DEV_L_GPIO			__BIT(8)
    313 #define CAR_DEV_L_UARTB			__BIT(7)
    314 #define CAR_DEV_L_UARTA			__BIT(6)
    315 #define CAR_DEV_L_TMR			__BIT(5
    316 #define CAR_DEV_L_RTC			__BIT(4)
    317 #define CAR_DEV_L_ISPB			__BIT(3)
    318 #define CAR_DEV_L_CPU			__BIT(0)
    319 
    320 #define CAR_DEV_U_XUSB_DEV		__BIT(31)
    321 #define CAR_DEV_U_DEV1_OUT		__BIT(30)
    322 #define CAR_DEV_U_DEV2_OUT		__BIT(29)
    323 #define CAR_DEV_U_SUS_OUT		__BIT(28)
    324 #define CAR_DEV_U_MSENC			__BIT(27)
    325 #define CAR_DEV_U_XUSB_HOST		__BIT(25)
    326 #define CAR_DEV_U_CRAM2			__BIT(24)
    327 #define CAR_DEV_U_IRAMD			__BIT(23)
    328 #define CAR_DEV_U_IRAMC			__BIT(22)
    329 #define CAR_DEV_U_IRAMB			__BIT(21)
    330 #define CAR_DEV_U_IRAMA			__BIT(20)
    331 #define CAR_DEV_U_TSEC			__BIT(19)
    332 #define CAR_DEV_U_DSIB			__BIT(18)
    333 #define CAR_DEV_U_I2C_SLOW		__BIT(17)
    334 #define CAR_DEV_U_DTV			__BIT(15)
    335 #define CAR_DEV_U_SOC_THERM		__BIT(14)
    336 #define CAR_DEV_U_TRACECLKIN		__BIT(13)
    337 #define CAR_DEV_U_AVPUCQ		__BIT(11)
    338 #define CAR_DEV_U_CSITE			__BIT(9)
    339 #define CAR_DEV_U_AFI			__BIT(8)
    340 #define CAR_DEV_U_OWR			__BIT(7)
    341 #define CAR_DEV_U_PCIE			__BIT(6)
    342 #define CAR_DEV_U_SDMMC3		__BIT(5)
    343 #define CAR_DEV_U_SPI4			__BIT(4)
    344 #define CAR_DEV_U_I2C3			__BIT(3)
    345 #define CAR_DEV_U_UARTD			__BIT(1)
    346 
    347 #define CAR_DEV_H_BSEV			__BIT(31)
    348 #define CAR_DEV_H_BSEA			__BIT(30)
    349 #define CAR_DEV_H_VDE			__BIT(29)
    350 #define CAR_DEV_H_USB3			__BIT(27)
    351 #define CAR_DEV_H_USB2			__BIT(26)
    352 #define CAR_DEV_H_EMC			__BIT(25)
    353 #define CAR_DEV_H_MIPI_CAL		__BIT(24)
    354 #define CAR_DEV_H_UARTC			__BIT(23)
    355 #define CAR_DEV_H_I2C2			__BIT(22)
    356 #define CAR_DEV_H_CSI			__BIT(20)
    357 #define CAR_DEV_H_HDMI			__BIT(19)
    358 #define CAR_DEV_H_HSI			__BIT(18)
    359 #define CAR_DEV_H_DSI			__BIT(16)
    360 #define CAR_DEV_H_I2C5			__BIT(15)
    361 #define CAR_DEV_H_SPI3			__BIT(14)
    362 #define CAR_DEV_H_SPI2			__BIT(12)
    363 #define CAR_DEV_H_JTAG2TBC		__BIT(11)
    364 #define CAR_DEV_H_SNOR			__BIT(10)
    365 #define CAR_DEV_H_SPI1			__BIT(9)
    366 #define CAR_DEV_H_KFUSE			__BIT(8)
    367 #define CAR_DEV_H_FUSE			__BIT(7)
    368 #define CAR_DEV_H_PMC			__BIT(6)
    369 #define CAR_DEV_H_STAT_MON		__BIT(5)
    370 #define CAR_DEV_H_KBC			__BIT(4)
    371 #define CAR_DEV_H_APBDMA		__BIT(2)
    372 #define CAR_DEV_H_AHBDMA		__BIT(1)
    373 #define CAR_DEV_H_MEM			__BIT(0)
    374 
    375 #define CAR_DEV_V_HDA			__BIT(29)
    376 #define CAR_DEV_V_SATA			__BIT(28)
    377 #define CAR_DEV_V_SATA_OOB		__BIT(27)
    378 #define CAR_DEV_V_ACTMON		__BIT(23)
    379 #define CAR_DEV_V_ATOMICS		__BIT(16)
    380 #define CAR_DEV_V_HDA2CODEC_2X		__BIT(15)
    381 #define CAR_DEV_V_DAM2			__BIT(14)
    382 #define CAR_DEV_V_DAM1			__BIT(13)
    383 #define CAR_DEV_V_DAM0			__BIT(12)
    384 #define CAR_DEV_V_APBIF			__BIT(11)
    385 #define CAR_DEV_V_AUDIO			__BIT(10)
    386 #define CAR_DEV_V_SPI6			__BIT(9)
    387 #define CAR_DEV_V_SPI5			__BIT(8)
    388 #define CAR_DEV_V_I2C4			__BIT(7)
    389 #define CAR_DEV_V_I2S4			__BIT(6)
    390 #define CAR_DEV_V_I2S3			__BIT(5)
    391 #define CAR_DEV_V_TSENSOR		__BIT(4)
    392 #define CAR_DEV_V_MSELECT		__BIT(3)
    393 #define CAR_DEV_V_CPULP			__BIT(1)
    394 #define CAR_DEV_V_CPUG			__BIT(0)
    395 
    396 #define CAR_DEV_W_XUSB_SS		__BIT(28)
    397 #define CAR_DEV_W_DVFS			__BIT(27)
    398 #define CAR_DEV_W_ADX0			__BIT(26)
    399 #define CAR_DEV_W_AMX0			__BIT(25)
    400 #define CAR_DEV_W_ENTROPY		__BIT(21)
    401 #define CAR_DEV_W_XUSB			__BIT(15)
    402 #define CAR_DEV_W_XUSB_PADCTL		__BIT(14)
    403 #define CAR_DEV_W_CEC			__BIT(8)
    404 #define CAR_DEV_W_SATACOLD		__BIT(1)
    405 #define CAR_DEV_W_HDA2HDMICODEC		__BIT(0)
    406 
    407 #define CAR_DEV_X_AMX1			__BIT(25)
    408 #define CAR_DEV_X_GPU			__BIT(24)
    409 #define CAR_DEV_X_SOR0			__BIT(22)
    410 #define CAR_DEV_X_DPAUX			__BIT(21)
    411 #define CAR_DEV_X_ADX1			__BIT(20)
    412 #define CAR_DEV_X_VIC			__BIT(18)
    413 #define CAR_DEV_X_CLK72MHZ		__BIT(17)
    414 #define CAR_DEV_X_HDMI_AUDIO		__BIT(16)
    415 #define CAR_DEV_X_EMC_DLL		__BIT(14)
    416 #define CAR_DEV_X_VIM2_CLK		__BIT(11)
    417 #define CAR_DEV_X_I2C6			__BIT(6)
    418 #define CAR_DEV_X_CAM_MCLK2		__BIT(5)
    419 #define CAR_DEV_X_CAM_MCLK		__BIT(4)
    420 #define CAR_DEV_X_SPARE			__BIT(0)
    421 
    422 #define CAR_CCLKG_BURST_POLICY_REG	0x368
    423 #define CAR_CCLKG_BURST_POLICY_CPU_STATE	__BITS(31,28)
    424 #define CAR_CCLKG_BURST_POLICY_CPU_STATE_IDLE			1
    425 #define CAR_CCLKG_BURST_POLICY_CPU_STATE_RUN			2
    426 #define CAR_CCLKG_BURST_POLICY_CWAKEUP_IDLE_SOURCE __BITS(3,0)
    427 #define CAR_CCLKG_BURST_POLICY_CWAKEUP_SOURCE_CLKM		0
    428 #define CAR_CCLKG_BURST_POLICY_CWAKEUP_SOURCE_PLLX_OUT0_LJ	8
    429 
    430 #define CAR_CLKSRC_MSELECT_REG		0x3b4
    431 #define CAR_CLKSRC_MSELECT_SRC		__BITS(31,29)
    432 #define CAR_CLKSRC_MSELECT_DIV		__BITS(7,0)
    433 
    434 #define CAR_CLKSRC_TSENSOR_REG		0x3b8
    435 #define CAR_CLKSRC_TSENSOR_SRC		__BITS(31,29)
    436 #define CAR_CLKSRC_TSENSOR_SRC_CLK_M	4
    437 #define CAR_CLKSRC_TSENSOR_DIV		__BITS(7,0)
    438 
    439 #define CAR_CLKSRC_HDA2CODEC_2X_REG	0x3e4
    440 #define CAR_CLKSRC_HDA2CODEC_2X_SRC	__BITS(31,29)
    441 #define CAR_CLKSRC_HDA2CODEC_2X_SRC_PLLP_OUT0	0
    442 #define CAR_CLKSRC_HDA2CODEC_2X_SRC_PLLC2_OUT0	1
    443 #define CAR_CLKSRC_HDA2CODEC_2X_SRC_PLLC_OUT0	2
    444 #define CAR_CLKSRC_HDA2CODEC_2X_SRC_PLLC3_OUT0	3
    445 #define CAR_CLKSRC_HDA2CODEC_2X_SRC_PLLM_OUT0	4
    446 #define CAR_CLKSRC_HDA2CODEC_2X_SRC_CLKM	6
    447 #define CAR_CLKSRC_HDA2CODEC_2X_DIV	__BITS(7,0)
    448 
    449 #define CAR_CLKSRC_SATA_OOB_REG		0x420
    450 #define CAR_CLKSRC_SATA_OOB_SRC		__BITS(31,29)
    451 #define CAR_CLKSRC_SATA_OOB_SRC_PLLP_OUT0	0
    452 #define CAR_CLKSRC_SATA_OOB_SRC_PLLC_OUT0	2
    453 #define CAR_CLKSRC_SATA_OOB_SRC_PLLM_OUT0	4
    454 #define CAR_CLKSRC_SATA_OOB_SRC_CLKM		6
    455 #define CAR_CLKSRC_SATA_OOB_DIV		__BITS(7,0)
    456 
    457 #define CAR_CLKSRC_SATA_REG		0x424
    458 #define CAR_CLKSRC_SATA_SRC		__BITS(31,29)
    459 #define CAR_CLKSRC_SATA_SRC_PLLP_OUT0		0
    460 #define CAR_CLKSRC_SATA_SRC_PLLC_OUT0		2
    461 #define CAR_CLKSRC_SATA_SRC_PLLM_OUT0		4
    462 #define CAR_CLKSRC_SATA_SRC_CLKM		6
    463 #define CAR_CLKSRC_SATA_AUX_CLK_ENB	__BIT(24)
    464 #define CAR_CLKSRC_SATA_DIV		__BITS(7,0)
    465 
    466 #define CAR_CLKSRC_HDA_REG		0x428
    467 #define CAR_CLKSRC_HDA_SRC		__BITS(31,29)
    468 #define CAR_CLKSRC_HDA_SRC_PLLP_OUT0	0
    469 #define CAR_CLKSRC_HDA_SRC_PLLC2_OUT0	1
    470 #define CAR_CLKSRC_HDA_SRC_PLLC_OUT0	2
    471 #define CAR_CLKSRC_HDA_SRC_PLLC3_OUT0	3
    472 #define CAR_CLKSRC_HDA_SRC_PLLM_OUT0	4
    473 #define CAR_CLKSRC_HDA_SRC_CLKM		6
    474 #define CAR_CLKSRC_HDA_DIV		__BITS(7,0)
    475 
    476 #define CAR_UTMIP_PLL_CFG0_REG		0x480
    477 
    478 #define CAR_UTMIP_PLL_CFG1_REG		0x484
    479 #define CAR_UTMIP_PLL_CFG1_ENABLE_DLY_COUNT	__BITS(31,27)
    480 #define CAR_UTMIP_PLL_CFG1_PLLU_POWERUP		__BIT(17)
    481 #define CAR_UTMIP_PLL_CFG1_PLLU_POWERDOWN	__BIT(16)
    482 #define CAR_UTMIP_PLL_CFG1_PLL_ENABLE_POWERUP	__BIT(15)
    483 #define CAR_UTMIP_PLL_CFG1_PLL_ENABLE_POWERDOWN	__BIT(14)
    484 #define CAR_UTMIP_PLL_CFG1_XTAL_FREQ_COUNT	__BITS(11,0)
    485 
    486 #define CAR_UTMIP_PLL_CFG2_REG		0x488
    487 #define CAR_UTMIP_PLL_CFG2_ACTIVE_DLY_COUNT	__BITS(23,18)
    488 #define CAR_UTMIP_PLL_CFG2_STABLE_COUNT		__BITS(17,6)
    489 #define CAR_UTMIP_PLL_CFG2_PD_SAMP_C_POWERUP	__BIT(5)
    490 #define CAR_UTMIP_PLL_CFG2_PD_SAMP_C_POWERDOWN	__BIT(4)
    491 #define CAR_UTMIP_PLL_CFG2_PD_SAMP_B_POWERUP	__BIT(3)
    492 #define CAR_UTMIP_PLL_CFG2_PD_SAMP_B_POWERDOWN	__BIT(2)
    493 #define CAR_UTMIP_PLL_CFG2_PD_SAMP_A_POWERUP	__BIT(1)
    494 #define CAR_UTMIP_PLL_CFG2_PD_SAMP_A_POWERDOWN	__BIT(0)
    495 
    496 #define CAR_PLLE_AUX_REG		0x48c
    497 #define CAR_PLLE_AUX_SS_SEQ_INCLUDE		__BIT(31)
    498 #define CAR_PLLE_AUX_REF_SEL_PLLREFE		__BIT(28)
    499 #define CAR_PLLE_AUX_SEQ_STATE			__BITS(27,26)
    500 #define CAR_PLLE_AUX_SEQ_START_STATE		__BIT(25)
    501 #define CAR_PLLE_AUX_SEQ_ENABLE			__BIT(24)
    502 #define CAR_PLLE_AUX_SS_DLY			__BITS(23,16)
    503 #define CAR_PLLE_AUX_LOCK_DLY			__BITS(15,8)
    504 #define CAR_PLLE_AUX_FAST_PT			__BIT(7)
    505 #define CAR_PLLE_AUX_SS_SWCTL			__BIT(6)
    506 #define CAR_PLLE_AUX_CONFIG_SWCTL		__BIT(5)
    507 #define CAR_PLLE_AUX_ENABLE_SWCTL		__BIT(4)
    508 #define CAR_PLLE_AUX_USE_LOCKDET		__BIT(3)
    509 #define CAR_PLLE_AUX_REF_SRC			__BIT(2)
    510 #define CAR_PLLE_AUX_CML1_OEN			__BIT(1)
    511 #define CAR_PLLE_AUX_CML0_OEN			__BIT(0)
    512 
    513 #define CAR_SATA_PLL_CFG0_REG		0x490
    514 #define CAR_SATA_PLL_CFG0_SEQ_STATE		__BITS(27,26)
    515 #define CAR_SATA_PLL_CFG0_SEQ_START_STATE	__BIT(25)
    516 #define CAR_SATA_PLL_CFG0_SEQ_ENABLE		__BIT(24)
    517 #define CAR_SATA_PLL_CFG0_SEQ_PADPLL_PD_INPUT_VALUE __BIT(7)
    518 #define CAR_SATA_PLL_CFG0_SEQ_LANE_PD_INPUT_VALUE __BIT(6)
    519 #define CAR_SATA_PLL_CFG0_SEQ_RESET_INPUT_VALUE	__BIT(5)
    520 #define CAR_SATA_PLL_CFG0_SEQ_IN_SWCTL		__BIT(4)
    521 #define CAR_SATA_PLL_CFG0_PADPLL_USE_LOCKDET	__BIT(2)
    522 #define CAR_SATA_PLL_CFG0_PADPLL_RESET_OVERRIDE_VALUE __BIT(1)
    523 #define CAR_SATA_PLL_CFG0_PADPLL_RESET_SWCTL	__BIT(0)
    524 
    525 #define CAR_SATA_PLL_CFG1_REG		0x494
    526 #define CAR_SATA_PLL_CFG1_LANE_IDDQ2_PADPLL_RESET_DLY __BITS(31,24)
    527 #define CAR_SATA_PLL_CFG1_PADPLL_IDDQ2LANE_SLUMBER_DLY __BITS(23,16)
    528 #define CAR_SATA_PLL_CFG1_PADPLL_PU_POST_DLY	__BITS(15,8)
    529 #define CAR_SATA_PLL_CFG1_LANE_IDDQ2_PADPLL_IDDQ_DLY __BITS(7,0)
    530 
    531 #define CAR_PLLREFE_BASE_REG		0x4c4
    532 #define CAR_PLLREFE_BASE_BYPASS			__BIT(31)
    533 #define CAR_PLLREFE_BASE_ENABLE			__BIT(30)
    534 #define CAR_PLLREFE_BASE_REF_DIS		__BIT(29)
    535 #define CAR_PLLREFE_BASE_KCP			__BITS(28,27)
    536 #define CAR_PLLREFE_BASE_KVCO			__BIT(26)
    537 #define CAR_PLLREFE_BASE_DIVP			__BITS(19,16)
    538 #define CAR_PLLREFE_BASE_DIVN			__BITS(15,8)
    539 #define CAR_PLLREFE_BASE_DIVM			__BITS(7,0)
    540 
    541 #define CAR_PLLREFE_MISC_REG		0x4c8
    542 #define CAR_PLLREFE_MISC_LOCK_ENABLE		__BIT(30)
    543 #define CAR_PLLREFE_MISC_LOCK_OVERRIDE		__BIT(29)
    544 #define CAR_PLLREFE_MISC_LOCK			__BIT(24)
    545 #define CAR_PLLREFE_MISC_IDDQ			__BIT(16)
    546 
    547 #define CAR_XUSBIO_PLL_CFG0_REG		0x51c
    548 #define CAR_XUSBIO_PLL_CFG0_SEQ_STATE		__BITS(27,26)
    549 #define CAR_XUSBIO_PLL_CFG0_SEQ_START_STATE	__BIT(25)
    550 #define CAR_XUSBIO_PLL_CFG0_SEQ_ENABLE		__BIT(24)
    551 #define CAR_XUSBIO_PLL_CFG0_PADPLL_USE_LOCKDET	__BIT(6)
    552 #define CAR_XUSBIO_PLL_CFG0_SEQ_RESET_INPUT_VALUE	__BIT(5)
    553 #define CAR_XUSBIO_PLL_CFG0_SEQ_IN_SWCTL	__BIT(4)
    554 #define CAR_XUSBIO_PLL_CFG0_CLK_ENABLE_OVERRIDE	__BIT(3)
    555 #define CAR_XUSBIO_PLL_CFG0_CLK_ENABLE_SWCTL	__BIT(2)
    556 #define CAR_XUSBIO_PLL_CFG0_PADPLL_RESET_OVERRIDE_VALUE __BIT(1)
    557 #define CAR_XUSBIO_PLL_CFG0_PADPLL_RESET_SWCTL	__BIT(0)
    558 
    559 #define CAR_CLKSRC_XUSB_HOST_REG	0x600
    560 #define CAR_CLKSRC_XUSB_HOST_SRC		__BITS(31,29)
    561 #define CAR_CLKSRC_XUSB_HOST_DIV		__BITS(7,0)
    562 
    563 #define CAR_CLKSRC_XUSB_FALCON_REG	0x604
    564 #define CAR_CLKSRC_XUSB_FALCON_SRC		__BITS(31,29)
    565 #define CAR_CLKSRC_XUSB_FALCON_DIV		__BITS(7,0)
    566 
    567 #define CAR_CLKSRC_XUSB_FS_REG		0x608
    568 #define CAR_CLKSRC_XUSB_FS_SRC			__BITS(31,29)
    569 #define CAR_CLKSRC_XUSB_FS_DIV			__BITS(7,0)
    570 
    571 #define CAR_CLKSRC_XUSB_SS_REG		0x610
    572 #define CAR_CLKSRC_XUSB_SS_SRC			__BITS(31,29)
    573 #define CAR_CLKSRC_XUSB_SS_HS_CLK_BYPASS	__BIT(25)
    574 #define CAR_CLKSRC_XUSB_SS_SS_CLK_BYPASS	__BIT(24)
    575 #define CAR_CLKSRC_XUSB_SS_DIV			__BITS(7,0)
    576 
    577 #define CAR_CLKSRC_SOC_THERM_REG	0x644
    578 #define CAR_CLKSRC_SOC_THERM_SRC	__BITS(31,29)
    579 #define CAR_CLKSRC_SOC_THERM_SRC_PLLP_OUT0	2
    580 #define CAR_CLKSRC_SOC_THERM_DIV	__BITS(7,0)
    581 
    582 #define CAR_CLKSRC_HDMI_AUDIO_REG	0x668
    583 #define CAR_CLKSRC_HDMI_AUDIO_SRC	__BITS(31,29)
    584 #define CAR_CLKSRC_HDMI_AUDIO_SRC_PLLP_OUT0	0
    585 #define CAR_CLKSRC_HDMI_AUDIO_SRC_PLLC_OUT0	1
    586 #define CAR_CLKSRC_HDMI_AUDIO_SRC_PLLC2_OUT0	2
    587 #define CAR_CLKSRC_HDMI_AUDIO_SRC_CLKM		3
    588 #define CAR_CLKSRC_HDMI_AUDIO_DIV	__BITS(7,0)
    589 
    590 #endif /* _ARM_TEGRA124_CARREG_H */
    591