11.1Sjmcneill/* $NetBSD: tegra30-car.h,v 1.1.1.4 2021/11/07 16:50:00 jmcneill Exp $ */ 21.1Sjmcneill 31.1.1.3Sjmcneill/* SPDX-License-Identifier: GPL-2.0 */ 41.1Sjmcneill/* 51.1Sjmcneill * This header provides constants for binding nvidia,tegra30-car. 61.1Sjmcneill * 71.1Sjmcneill * The first 130 clocks are numbered to match the bits in the CAR's CLK_OUT_ENB 81.1Sjmcneill * registers. These IDs often match those in the CAR's RST_DEVICES registers, 91.1Sjmcneill * but not in all cases. Some bits in CLK_OUT_ENB affect multiple clocks. In 101.1Sjmcneill * this case, those clocks are assigned IDs above 160 in order to highlight 111.1Sjmcneill * this issue. Implementations that interpret these clock IDs as bit values 121.1Sjmcneill * within the CLK_OUT_ENB or RST_DEVICES registers should be careful to 131.1Sjmcneill * explicitly handle these special cases. 141.1Sjmcneill * 151.1Sjmcneill * The balance of the clocks controlled by the CAR are assigned IDs of 160 and 161.1Sjmcneill * above. 171.1Sjmcneill */ 181.1Sjmcneill 191.1Sjmcneill#ifndef _DT_BINDINGS_CLOCK_TEGRA30_CAR_H 201.1Sjmcneill#define _DT_BINDINGS_CLOCK_TEGRA30_CAR_H 211.1Sjmcneill 221.1Sjmcneill#define TEGRA30_CLK_CPU 0 231.1Sjmcneill/* 1 */ 241.1Sjmcneill/* 2 */ 251.1Sjmcneill/* 3 */ 261.1Sjmcneill#define TEGRA30_CLK_RTC 4 271.1Sjmcneill#define TEGRA30_CLK_TIMER 5 281.1Sjmcneill#define TEGRA30_CLK_UARTA 6 291.1Sjmcneill/* 7 (register bit affects uartb and vfir) */ 301.1Sjmcneill#define TEGRA30_CLK_GPIO 8 311.1Sjmcneill#define TEGRA30_CLK_SDMMC2 9 321.1Sjmcneill/* 10 (register bit affects spdif_in and spdif_out) */ 331.1Sjmcneill#define TEGRA30_CLK_I2S1 11 341.1Sjmcneill#define TEGRA30_CLK_I2C1 12 351.1Sjmcneill#define TEGRA30_CLK_NDFLASH 13 361.1Sjmcneill#define TEGRA30_CLK_SDMMC1 14 371.1Sjmcneill#define TEGRA30_CLK_SDMMC4 15 381.1Sjmcneill/* 16 */ 391.1Sjmcneill#define TEGRA30_CLK_PWM 17 401.1Sjmcneill#define TEGRA30_CLK_I2S2 18 411.1Sjmcneill#define TEGRA30_CLK_EPP 19 421.1Sjmcneill/* 20 (register bit affects vi and vi_sensor) */ 431.1Sjmcneill#define TEGRA30_CLK_GR2D 21 441.1Sjmcneill#define TEGRA30_CLK_USBD 22 451.1Sjmcneill#define TEGRA30_CLK_ISP 23 461.1Sjmcneill#define TEGRA30_CLK_GR3D 24 471.1Sjmcneill/* 25 */ 481.1Sjmcneill#define TEGRA30_CLK_DISP2 26 491.1Sjmcneill#define TEGRA30_CLK_DISP1 27 501.1Sjmcneill#define TEGRA30_CLK_HOST1X 28 511.1Sjmcneill#define TEGRA30_CLK_VCP 29 521.1Sjmcneill#define TEGRA30_CLK_I2S0 30 531.1Sjmcneill#define TEGRA30_CLK_COP_CACHE 31 541.1Sjmcneill 551.1Sjmcneill#define TEGRA30_CLK_MC 32 561.1Sjmcneill#define TEGRA30_CLK_AHBDMA 33 571.1Sjmcneill#define TEGRA30_CLK_APBDMA 34 581.1Sjmcneill/* 35 */ 591.1Sjmcneill#define TEGRA30_CLK_KBC 36 601.1Sjmcneill#define TEGRA30_CLK_STATMON 37 611.1Sjmcneill#define TEGRA30_CLK_PMC 38 621.1Sjmcneill/* 39 (register bit affects fuse and fuse_burn) */ 631.1Sjmcneill#define TEGRA30_CLK_KFUSE 40 641.1Sjmcneill#define TEGRA30_CLK_SBC1 41 651.1Sjmcneill#define TEGRA30_CLK_NOR 42 661.1Sjmcneill/* 43 */ 671.1Sjmcneill#define TEGRA30_CLK_SBC2 44 681.1Sjmcneill/* 45 */ 691.1Sjmcneill#define TEGRA30_CLK_SBC3 46 701.1Sjmcneill#define TEGRA30_CLK_I2C5 47 711.1Sjmcneill#define TEGRA30_CLK_DSIA 48 721.1Sjmcneill/* 49 (register bit affects cve and tvo) */ 731.1Sjmcneill#define TEGRA30_CLK_MIPI 50 741.1Sjmcneill#define TEGRA30_CLK_HDMI 51 751.1Sjmcneill#define TEGRA30_CLK_CSI 52 761.1Sjmcneill#define TEGRA30_CLK_TVDAC 53 771.1Sjmcneill#define TEGRA30_CLK_I2C2 54 781.1Sjmcneill#define TEGRA30_CLK_UARTC 55 791.1Sjmcneill/* 56 */ 801.1Sjmcneill#define TEGRA30_CLK_EMC 57 811.1Sjmcneill#define TEGRA30_CLK_USB2 58 821.1Sjmcneill#define TEGRA30_CLK_USB3 59 831.1Sjmcneill#define TEGRA30_CLK_MPE 60 841.1Sjmcneill#define TEGRA30_CLK_VDE 61 851.1Sjmcneill#define TEGRA30_CLK_BSEA 62 861.1Sjmcneill#define TEGRA30_CLK_BSEV 63 871.1Sjmcneill 881.1Sjmcneill#define TEGRA30_CLK_SPEEDO 64 891.1Sjmcneill#define TEGRA30_CLK_UARTD 65 901.1Sjmcneill#define TEGRA30_CLK_UARTE 66 911.1Sjmcneill#define TEGRA30_CLK_I2C3 67 921.1Sjmcneill#define TEGRA30_CLK_SBC4 68 931.1Sjmcneill#define TEGRA30_CLK_SDMMC3 69 941.1Sjmcneill#define TEGRA30_CLK_PCIE 70 951.1Sjmcneill#define TEGRA30_CLK_OWR 71 961.1Sjmcneill#define TEGRA30_CLK_AFI 72 971.1Sjmcneill#define TEGRA30_CLK_CSITE 73 981.1Sjmcneill/* 74 */ 991.1Sjmcneill#define TEGRA30_CLK_AVPUCQ 75 1001.1Sjmcneill#define TEGRA30_CLK_LA 76 1011.1Sjmcneill/* 77 */ 1021.1Sjmcneill/* 78 */ 1031.1Sjmcneill#define TEGRA30_CLK_DTV 79 1041.1Sjmcneill#define TEGRA30_CLK_NDSPEED 80 1051.1Sjmcneill#define TEGRA30_CLK_I2CSLOW 81 1061.1Sjmcneill#define TEGRA30_CLK_DSIB 82 1071.1Sjmcneill/* 83 */ 1081.1Sjmcneill#define TEGRA30_CLK_IRAMA 84 1091.1Sjmcneill#define TEGRA30_CLK_IRAMB 85 1101.1Sjmcneill#define TEGRA30_CLK_IRAMC 86 1111.1Sjmcneill#define TEGRA30_CLK_IRAMD 87 1121.1Sjmcneill#define TEGRA30_CLK_CRAM2 88 1131.1Sjmcneill/* 89 */ 1141.1Sjmcneill#define TEGRA30_CLK_AUDIO_2X 90 /* a/k/a audio_2x_sync_clk */ 1151.1Sjmcneill/* 91 */ 1161.1Sjmcneill#define TEGRA30_CLK_CSUS 92 1171.1Sjmcneill#define TEGRA30_CLK_CDEV2 93 1181.1Sjmcneill#define TEGRA30_CLK_CDEV1 94 1191.1Sjmcneill/* 95 */ 1201.1Sjmcneill 1211.1Sjmcneill#define TEGRA30_CLK_CPU_G 96 1221.1Sjmcneill#define TEGRA30_CLK_CPU_LP 97 1231.1Sjmcneill#define TEGRA30_CLK_GR3D2 98 1241.1Sjmcneill#define TEGRA30_CLK_MSELECT 99 1251.1Sjmcneill#define TEGRA30_CLK_TSENSOR 100 1261.1Sjmcneill#define TEGRA30_CLK_I2S3 101 1271.1Sjmcneill#define TEGRA30_CLK_I2S4 102 1281.1Sjmcneill#define TEGRA30_CLK_I2C4 103 1291.1Sjmcneill#define TEGRA30_CLK_SBC5 104 1301.1Sjmcneill#define TEGRA30_CLK_SBC6 105 1311.1Sjmcneill#define TEGRA30_CLK_D_AUDIO 106 1321.1Sjmcneill#define TEGRA30_CLK_APBIF 107 1331.1Sjmcneill#define TEGRA30_CLK_DAM0 108 1341.1Sjmcneill#define TEGRA30_CLK_DAM1 109 1351.1Sjmcneill#define TEGRA30_CLK_DAM2 110 1361.1Sjmcneill#define TEGRA30_CLK_HDA2CODEC_2X 111 1371.1Sjmcneill#define TEGRA30_CLK_ATOMICS 112 1381.1Sjmcneill#define TEGRA30_CLK_AUDIO0_2X 113 1391.1Sjmcneill#define TEGRA30_CLK_AUDIO1_2X 114 1401.1Sjmcneill#define TEGRA30_CLK_AUDIO2_2X 115 1411.1Sjmcneill#define TEGRA30_CLK_AUDIO3_2X 116 1421.1Sjmcneill#define TEGRA30_CLK_AUDIO4_2X 117 1431.1Sjmcneill#define TEGRA30_CLK_SPDIF_2X 118 1441.1Sjmcneill#define TEGRA30_CLK_ACTMON 119 1451.1Sjmcneill#define TEGRA30_CLK_EXTERN1 120 1461.1Sjmcneill#define TEGRA30_CLK_EXTERN2 121 1471.1Sjmcneill#define TEGRA30_CLK_EXTERN3 122 1481.1Sjmcneill#define TEGRA30_CLK_SATA_OOB 123 1491.1Sjmcneill#define TEGRA30_CLK_SATA 124 1501.1Sjmcneill#define TEGRA30_CLK_HDA 125 1511.1Sjmcneill/* 126 */ 1521.1Sjmcneill#define TEGRA30_CLK_SE 127 1531.1Sjmcneill 1541.1Sjmcneill#define TEGRA30_CLK_HDA2HDMI 128 1551.1Sjmcneill#define TEGRA30_CLK_SATA_COLD 129 1561.1Sjmcneill/* 130 */ 1571.1Sjmcneill/* 131 */ 1581.1Sjmcneill/* 132 */ 1591.1Sjmcneill/* 133 */ 1601.1Sjmcneill/* 134 */ 1611.1Sjmcneill/* 135 */ 1621.1.1.2Sjmcneill#define TEGRA30_CLK_CEC 136 1631.1Sjmcneill/* 137 */ 1641.1Sjmcneill/* 138 */ 1651.1Sjmcneill/* 139 */ 1661.1Sjmcneill/* 140 */ 1671.1Sjmcneill/* 141 */ 1681.1Sjmcneill/* 142 */ 1691.1Sjmcneill/* 143 */ 1701.1Sjmcneill/* 144 */ 1711.1Sjmcneill/* 145 */ 1721.1Sjmcneill/* 146 */ 1731.1Sjmcneill/* 147 */ 1741.1Sjmcneill/* 148 */ 1751.1Sjmcneill/* 149 */ 1761.1Sjmcneill/* 150 */ 1771.1Sjmcneill/* 151 */ 1781.1Sjmcneill/* 152 */ 1791.1Sjmcneill/* 153 */ 1801.1Sjmcneill/* 154 */ 1811.1Sjmcneill/* 155 */ 1821.1Sjmcneill/* 156 */ 1831.1Sjmcneill/* 157 */ 1841.1Sjmcneill/* 158 */ 1851.1Sjmcneill/* 159 */ 1861.1Sjmcneill 1871.1Sjmcneill#define TEGRA30_CLK_UARTB 160 1881.1Sjmcneill#define TEGRA30_CLK_VFIR 161 1891.1Sjmcneill#define TEGRA30_CLK_SPDIF_IN 162 1901.1Sjmcneill#define TEGRA30_CLK_SPDIF_OUT 163 1911.1Sjmcneill#define TEGRA30_CLK_VI 164 1921.1Sjmcneill#define TEGRA30_CLK_VI_SENSOR 165 1931.1Sjmcneill#define TEGRA30_CLK_FUSE 166 1941.1Sjmcneill#define TEGRA30_CLK_FUSE_BURN 167 1951.1Sjmcneill#define TEGRA30_CLK_CVE 168 1961.1Sjmcneill#define TEGRA30_CLK_TVO 169 1971.1Sjmcneill#define TEGRA30_CLK_CLK_32K 170 1981.1Sjmcneill#define TEGRA30_CLK_CLK_M 171 1991.1Sjmcneill#define TEGRA30_CLK_CLK_M_DIV2 172 2001.1Sjmcneill#define TEGRA30_CLK_CLK_M_DIV4 173 2011.1.1.4Sjmcneill#define TEGRA30_CLK_OSC_DIV2 172 2021.1.1.4Sjmcneill#define TEGRA30_CLK_OSC_DIV4 173 2031.1Sjmcneill#define TEGRA30_CLK_PLL_REF 174 2041.1Sjmcneill#define TEGRA30_CLK_PLL_C 175 2051.1Sjmcneill#define TEGRA30_CLK_PLL_C_OUT1 176 2061.1Sjmcneill#define TEGRA30_CLK_PLL_M 177 2071.1Sjmcneill#define TEGRA30_CLK_PLL_M_OUT1 178 2081.1Sjmcneill#define TEGRA30_CLK_PLL_P 179 2091.1Sjmcneill#define TEGRA30_CLK_PLL_P_OUT1 180 2101.1Sjmcneill#define TEGRA30_CLK_PLL_P_OUT2 181 2111.1Sjmcneill#define TEGRA30_CLK_PLL_P_OUT3 182 2121.1Sjmcneill#define TEGRA30_CLK_PLL_P_OUT4 183 2131.1Sjmcneill#define TEGRA30_CLK_PLL_A 184 2141.1Sjmcneill#define TEGRA30_CLK_PLL_A_OUT0 185 2151.1Sjmcneill#define TEGRA30_CLK_PLL_D 186 2161.1Sjmcneill#define TEGRA30_CLK_PLL_D_OUT0 187 2171.1Sjmcneill#define TEGRA30_CLK_PLL_D2 188 2181.1Sjmcneill#define TEGRA30_CLK_PLL_D2_OUT0 189 2191.1Sjmcneill#define TEGRA30_CLK_PLL_U 190 2201.1Sjmcneill#define TEGRA30_CLK_PLL_X 191 2211.1Sjmcneill 2221.1Sjmcneill#define TEGRA30_CLK_PLL_X_OUT0 192 2231.1Sjmcneill#define TEGRA30_CLK_PLL_E 193 2241.1Sjmcneill#define TEGRA30_CLK_SPDIF_IN_SYNC 194 2251.1Sjmcneill#define TEGRA30_CLK_I2S0_SYNC 195 2261.1Sjmcneill#define TEGRA30_CLK_I2S1_SYNC 196 2271.1Sjmcneill#define TEGRA30_CLK_I2S2_SYNC 197 2281.1Sjmcneill#define TEGRA30_CLK_I2S3_SYNC 198 2291.1Sjmcneill#define TEGRA30_CLK_I2S4_SYNC 199 2301.1Sjmcneill#define TEGRA30_CLK_VIMCLK_SYNC 200 2311.1Sjmcneill#define TEGRA30_CLK_AUDIO0 201 2321.1Sjmcneill#define TEGRA30_CLK_AUDIO1 202 2331.1Sjmcneill#define TEGRA30_CLK_AUDIO2 203 2341.1Sjmcneill#define TEGRA30_CLK_AUDIO3 204 2351.1Sjmcneill#define TEGRA30_CLK_AUDIO4 205 2361.1Sjmcneill#define TEGRA30_CLK_SPDIF 206 2371.1.1.4Sjmcneill/* 207 */ 2381.1.1.4Sjmcneill/* 208 */ 2391.1.1.4Sjmcneill/* 209 */ 2401.1Sjmcneill#define TEGRA30_CLK_SCLK 210 2411.1.1.4Sjmcneill/* 211 */ 2421.1Sjmcneill#define TEGRA30_CLK_CCLK_G 212 2431.1Sjmcneill#define TEGRA30_CLK_CCLK_LP 213 2441.1Sjmcneill#define TEGRA30_CLK_TWD 214 2451.1Sjmcneill#define TEGRA30_CLK_CML0 215 2461.1Sjmcneill#define TEGRA30_CLK_CML1 216 2471.1Sjmcneill#define TEGRA30_CLK_HCLK 217 2481.1Sjmcneill#define TEGRA30_CLK_PCLK 218 2491.1Sjmcneill/* 219 */ 2501.1.1.4Sjmcneill#define TEGRA30_CLK_OSC 220 2511.1Sjmcneill/* 221 */ 2521.1Sjmcneill/* 222 */ 2531.1Sjmcneill/* 223 */ 2541.1Sjmcneill 2551.1Sjmcneill/* 288 */ 2561.1Sjmcneill/* 289 */ 2571.1Sjmcneill/* 290 */ 2581.1Sjmcneill/* 291 */ 2591.1Sjmcneill/* 292 */ 2601.1Sjmcneill/* 293 */ 2611.1Sjmcneill/* 294 */ 2621.1Sjmcneill/* 295 */ 2631.1Sjmcneill/* 296 */ 2641.1Sjmcneill/* 297 */ 2651.1Sjmcneill/* 298 */ 2661.1Sjmcneill/* 299 */ 2671.1.1.4Sjmcneill/* 300 */ 2681.1.1.4Sjmcneill/* 301 */ 2691.1.1.4Sjmcneill/* 302 */ 2701.1Sjmcneill#define TEGRA30_CLK_AUDIO0_MUX 303 2711.1Sjmcneill#define TEGRA30_CLK_AUDIO1_MUX 304 2721.1Sjmcneill#define TEGRA30_CLK_AUDIO2_MUX 305 2731.1Sjmcneill#define TEGRA30_CLK_AUDIO3_MUX 306 2741.1Sjmcneill#define TEGRA30_CLK_AUDIO4_MUX 307 2751.1Sjmcneill#define TEGRA30_CLK_SPDIF_MUX 308 2761.1Sjmcneill#define TEGRA30_CLK_CLK_MAX 309 2771.1Sjmcneill 2781.1Sjmcneill#endif /* _DT_BINDINGS_CLOCK_TEGRA30_CAR_H */ 279