1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 29513109dSHiroshi Doyu /* 39513109dSHiroshi Doyu * This header provides constants for binding nvidia,tegra30-car. 49513109dSHiroshi Doyu * 59513109dSHiroshi Doyu * The first 130 clocks are numbered to match the bits in the CAR's CLK_OUT_ENB 69513109dSHiroshi Doyu * registers. These IDs often match those in the CAR's RST_DEVICES registers, 79513109dSHiroshi Doyu * but not in all cases. Some bits in CLK_OUT_ENB affect multiple clocks. In 89513109dSHiroshi Doyu * this case, those clocks are assigned IDs above 160 in order to highlight 99513109dSHiroshi Doyu * this issue. Implementations that interpret these clock IDs as bit values 109513109dSHiroshi Doyu * within the CLK_OUT_ENB or RST_DEVICES registers should be careful to 119513109dSHiroshi Doyu * explicitly handle these special cases. 129513109dSHiroshi Doyu * 139513109dSHiroshi Doyu * The balance of the clocks controlled by the CAR are assigned IDs of 160 and 149513109dSHiroshi Doyu * above. 159513109dSHiroshi Doyu */ 169513109dSHiroshi Doyu 179513109dSHiroshi Doyu #ifndef _DT_BINDINGS_CLOCK_TEGRA30_CAR_H 189513109dSHiroshi Doyu #define _DT_BINDINGS_CLOCK_TEGRA30_CAR_H 199513109dSHiroshi Doyu 209513109dSHiroshi Doyu #define TEGRA30_CLK_CPU 0 219513109dSHiroshi Doyu /* 1 */ 229513109dSHiroshi Doyu /* 2 */ 239513109dSHiroshi Doyu /* 3 */ 249513109dSHiroshi Doyu #define TEGRA30_CLK_RTC 4 259513109dSHiroshi Doyu #define TEGRA30_CLK_TIMER 5 269513109dSHiroshi Doyu #define TEGRA30_CLK_UARTA 6 279513109dSHiroshi Doyu /* 7 (register bit affects uartb and vfir) */ 289513109dSHiroshi Doyu #define TEGRA30_CLK_GPIO 8 299513109dSHiroshi Doyu #define TEGRA30_CLK_SDMMC2 9 309513109dSHiroshi Doyu /* 10 (register bit affects spdif_in and spdif_out) */ 319513109dSHiroshi Doyu #define TEGRA30_CLK_I2S1 11 329513109dSHiroshi Doyu #define TEGRA30_CLK_I2C1 12 339513109dSHiroshi Doyu #define TEGRA30_CLK_NDFLASH 13 349513109dSHiroshi Doyu #define TEGRA30_CLK_SDMMC1 14 359513109dSHiroshi Doyu #define TEGRA30_CLK_SDMMC4 15 369513109dSHiroshi Doyu /* 16 */ 379513109dSHiroshi Doyu #define TEGRA30_CLK_PWM 17 389513109dSHiroshi Doyu #define TEGRA30_CLK_I2S2 18 399513109dSHiroshi Doyu #define TEGRA30_CLK_EPP 19 409513109dSHiroshi Doyu /* 20 (register bit affects vi and vi_sensor) */ 419513109dSHiroshi Doyu #define TEGRA30_CLK_GR2D 21 429513109dSHiroshi Doyu #define TEGRA30_CLK_USBD 22 439513109dSHiroshi Doyu #define TEGRA30_CLK_ISP 23 449513109dSHiroshi Doyu #define TEGRA30_CLK_GR3D 24 459513109dSHiroshi Doyu /* 25 */ 469513109dSHiroshi Doyu #define TEGRA30_CLK_DISP2 26 479513109dSHiroshi Doyu #define TEGRA30_CLK_DISP1 27 489513109dSHiroshi Doyu #define TEGRA30_CLK_HOST1X 28 499513109dSHiroshi Doyu #define TEGRA30_CLK_VCP 29 509513109dSHiroshi Doyu #define TEGRA30_CLK_I2S0 30 519513109dSHiroshi Doyu #define TEGRA30_CLK_COP_CACHE 31 529513109dSHiroshi Doyu 539513109dSHiroshi Doyu #define TEGRA30_CLK_MC 32 549513109dSHiroshi Doyu #define TEGRA30_CLK_AHBDMA 33 559513109dSHiroshi Doyu #define TEGRA30_CLK_APBDMA 34 569513109dSHiroshi Doyu /* 35 */ 579513109dSHiroshi Doyu #define TEGRA30_CLK_KBC 36 589513109dSHiroshi Doyu #define TEGRA30_CLK_STATMON 37 599513109dSHiroshi Doyu #define TEGRA30_CLK_PMC 38 609513109dSHiroshi Doyu /* 39 (register bit affects fuse and fuse_burn) */ 619513109dSHiroshi Doyu #define TEGRA30_CLK_KFUSE 40 629513109dSHiroshi Doyu #define TEGRA30_CLK_SBC1 41 639513109dSHiroshi Doyu #define TEGRA30_CLK_NOR 42 649513109dSHiroshi Doyu /* 43 */ 659513109dSHiroshi Doyu #define TEGRA30_CLK_SBC2 44 669513109dSHiroshi Doyu /* 45 */ 679513109dSHiroshi Doyu #define TEGRA30_CLK_SBC3 46 689513109dSHiroshi Doyu #define TEGRA30_CLK_I2C5 47 699513109dSHiroshi Doyu #define TEGRA30_CLK_DSIA 48 709513109dSHiroshi Doyu /* 49 (register bit affects cve and tvo) */ 719513109dSHiroshi Doyu #define TEGRA30_CLK_MIPI 50 729513109dSHiroshi Doyu #define TEGRA30_CLK_HDMI 51 739513109dSHiroshi Doyu #define TEGRA30_CLK_CSI 52 749513109dSHiroshi Doyu #define TEGRA30_CLK_TVDAC 53 759513109dSHiroshi Doyu #define TEGRA30_CLK_I2C2 54 769513109dSHiroshi Doyu #define TEGRA30_CLK_UARTC 55 779513109dSHiroshi Doyu /* 56 */ 789513109dSHiroshi Doyu #define TEGRA30_CLK_EMC 57 799513109dSHiroshi Doyu #define TEGRA30_CLK_USB2 58 809513109dSHiroshi Doyu #define TEGRA30_CLK_USB3 59 819513109dSHiroshi Doyu #define TEGRA30_CLK_MPE 60 829513109dSHiroshi Doyu #define TEGRA30_CLK_VDE 61 839513109dSHiroshi Doyu #define TEGRA30_CLK_BSEA 62 849513109dSHiroshi Doyu #define TEGRA30_CLK_BSEV 63 859513109dSHiroshi Doyu 869513109dSHiroshi Doyu #define TEGRA30_CLK_SPEEDO 64 879513109dSHiroshi Doyu #define TEGRA30_CLK_UARTD 65 889513109dSHiroshi Doyu #define TEGRA30_CLK_UARTE 66 899513109dSHiroshi Doyu #define TEGRA30_CLK_I2C3 67 909513109dSHiroshi Doyu #define TEGRA30_CLK_SBC4 68 919513109dSHiroshi Doyu #define TEGRA30_CLK_SDMMC3 69 929513109dSHiroshi Doyu #define TEGRA30_CLK_PCIE 70 939513109dSHiroshi Doyu #define TEGRA30_CLK_OWR 71 949513109dSHiroshi Doyu #define TEGRA30_CLK_AFI 72 959513109dSHiroshi Doyu #define TEGRA30_CLK_CSITE 73 96a85f06baSStephen Warren /* 74 */ 979513109dSHiroshi Doyu #define TEGRA30_CLK_AVPUCQ 75 989513109dSHiroshi Doyu #define TEGRA30_CLK_LA 76 999513109dSHiroshi Doyu /* 77 */ 1009513109dSHiroshi Doyu /* 78 */ 1019513109dSHiroshi Doyu #define TEGRA30_CLK_DTV 79 1029513109dSHiroshi Doyu #define TEGRA30_CLK_NDSPEED 80 1039513109dSHiroshi Doyu #define TEGRA30_CLK_I2CSLOW 81 1049513109dSHiroshi Doyu #define TEGRA30_CLK_DSIB 82 1059513109dSHiroshi Doyu /* 83 */ 1069513109dSHiroshi Doyu #define TEGRA30_CLK_IRAMA 84 1079513109dSHiroshi Doyu #define TEGRA30_CLK_IRAMB 85 1089513109dSHiroshi Doyu #define TEGRA30_CLK_IRAMC 86 1099513109dSHiroshi Doyu #define TEGRA30_CLK_IRAMD 87 1109513109dSHiroshi Doyu #define TEGRA30_CLK_CRAM2 88 1119513109dSHiroshi Doyu /* 89 */ 1129513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO_2X 90 /* a/k/a audio_2x_sync_clk */ 1139513109dSHiroshi Doyu /* 91 */ 1149513109dSHiroshi Doyu #define TEGRA30_CLK_CSUS 92 1159513109dSHiroshi Doyu #define TEGRA30_CLK_CDEV2 93 1169513109dSHiroshi Doyu #define TEGRA30_CLK_CDEV1 94 1179513109dSHiroshi Doyu /* 95 */ 1189513109dSHiroshi Doyu 1199513109dSHiroshi Doyu #define TEGRA30_CLK_CPU_G 96 1209513109dSHiroshi Doyu #define TEGRA30_CLK_CPU_LP 97 1219513109dSHiroshi Doyu #define TEGRA30_CLK_GR3D2 98 1229513109dSHiroshi Doyu #define TEGRA30_CLK_MSELECT 99 1239513109dSHiroshi Doyu #define TEGRA30_CLK_TSENSOR 100 1249513109dSHiroshi Doyu #define TEGRA30_CLK_I2S3 101 1259513109dSHiroshi Doyu #define TEGRA30_CLK_I2S4 102 1269513109dSHiroshi Doyu #define TEGRA30_CLK_I2C4 103 1279513109dSHiroshi Doyu #define TEGRA30_CLK_SBC5 104 1289513109dSHiroshi Doyu #define TEGRA30_CLK_SBC6 105 1299513109dSHiroshi Doyu #define TEGRA30_CLK_D_AUDIO 106 1309513109dSHiroshi Doyu #define TEGRA30_CLK_APBIF 107 1319513109dSHiroshi Doyu #define TEGRA30_CLK_DAM0 108 1329513109dSHiroshi Doyu #define TEGRA30_CLK_DAM1 109 1339513109dSHiroshi Doyu #define TEGRA30_CLK_DAM2 110 1349513109dSHiroshi Doyu #define TEGRA30_CLK_HDA2CODEC_2X 111 1359513109dSHiroshi Doyu #define TEGRA30_CLK_ATOMICS 112 1369513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO0_2X 113 1379513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO1_2X 114 1389513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO2_2X 115 1399513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO3_2X 116 1409513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO4_2X 117 1419513109dSHiroshi Doyu #define TEGRA30_CLK_SPDIF_2X 118 1429513109dSHiroshi Doyu #define TEGRA30_CLK_ACTMON 119 1439513109dSHiroshi Doyu #define TEGRA30_CLK_EXTERN1 120 1449513109dSHiroshi Doyu #define TEGRA30_CLK_EXTERN2 121 1459513109dSHiroshi Doyu #define TEGRA30_CLK_EXTERN3 122 1469513109dSHiroshi Doyu #define TEGRA30_CLK_SATA_OOB 123 1479513109dSHiroshi Doyu #define TEGRA30_CLK_SATA 124 1489513109dSHiroshi Doyu #define TEGRA30_CLK_HDA 125 1499513109dSHiroshi Doyu /* 126 */ 1509513109dSHiroshi Doyu #define TEGRA30_CLK_SE 127 1519513109dSHiroshi Doyu 1529513109dSHiroshi Doyu #define TEGRA30_CLK_HDA2HDMI 128 1539513109dSHiroshi Doyu #define TEGRA30_CLK_SATA_COLD 129 1549513109dSHiroshi Doyu /* 130 */ 1559513109dSHiroshi Doyu /* 131 */ 1569513109dSHiroshi Doyu /* 132 */ 1579513109dSHiroshi Doyu /* 133 */ 1589513109dSHiroshi Doyu /* 134 */ 1599513109dSHiroshi Doyu /* 135 */ 160bfa34832SPeter De Schrijver #define TEGRA30_CLK_CEC 136 1619513109dSHiroshi Doyu /* 137 */ 1629513109dSHiroshi Doyu /* 138 */ 1639513109dSHiroshi Doyu /* 139 */ 1649513109dSHiroshi Doyu /* 140 */ 1659513109dSHiroshi Doyu /* 141 */ 1669513109dSHiroshi Doyu /* 142 */ 1679513109dSHiroshi Doyu /* 143 */ 1689513109dSHiroshi Doyu /* 144 */ 1699513109dSHiroshi Doyu /* 145 */ 1709513109dSHiroshi Doyu /* 146 */ 1719513109dSHiroshi Doyu /* 147 */ 1729513109dSHiroshi Doyu /* 148 */ 1739513109dSHiroshi Doyu /* 149 */ 1749513109dSHiroshi Doyu /* 150 */ 1759513109dSHiroshi Doyu /* 151 */ 1769513109dSHiroshi Doyu /* 152 */ 1779513109dSHiroshi Doyu /* 153 */ 1789513109dSHiroshi Doyu /* 154 */ 1799513109dSHiroshi Doyu /* 155 */ 1809513109dSHiroshi Doyu /* 156 */ 1819513109dSHiroshi Doyu /* 157 */ 1829513109dSHiroshi Doyu /* 158 */ 1839513109dSHiroshi Doyu /* 159 */ 1849513109dSHiroshi Doyu 1859513109dSHiroshi Doyu #define TEGRA30_CLK_UARTB 160 1869513109dSHiroshi Doyu #define TEGRA30_CLK_VFIR 161 1879513109dSHiroshi Doyu #define TEGRA30_CLK_SPDIF_IN 162 1889513109dSHiroshi Doyu #define TEGRA30_CLK_SPDIF_OUT 163 1899513109dSHiroshi Doyu #define TEGRA30_CLK_VI 164 1909513109dSHiroshi Doyu #define TEGRA30_CLK_VI_SENSOR 165 1919513109dSHiroshi Doyu #define TEGRA30_CLK_FUSE 166 1929513109dSHiroshi Doyu #define TEGRA30_CLK_FUSE_BURN 167 1939513109dSHiroshi Doyu #define TEGRA30_CLK_CVE 168 1949513109dSHiroshi Doyu #define TEGRA30_CLK_TVO 169 1959513109dSHiroshi Doyu #define TEGRA30_CLK_CLK_32K 170 1969513109dSHiroshi Doyu #define TEGRA30_CLK_CLK_M 171 1979513109dSHiroshi Doyu #define TEGRA30_CLK_CLK_M_DIV2 172 1989513109dSHiroshi Doyu #define TEGRA30_CLK_CLK_M_DIV4 173 199e5377ab2SSowjanya Komatineni #define TEGRA30_CLK_OSC_DIV2 172 200e5377ab2SSowjanya Komatineni #define TEGRA30_CLK_OSC_DIV4 173 2019513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_REF 174 2029513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_C 175 2039513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_C_OUT1 176 2049513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_M 177 2059513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_M_OUT1 178 2069513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_P 179 2079513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_P_OUT1 180 2089513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_P_OUT2 181 2099513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_P_OUT3 182 2109513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_P_OUT4 183 2119513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_A 184 2129513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_A_OUT0 185 2139513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_D 186 2149513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_D_OUT0 187 2159513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_D2 188 2169513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_D2_OUT0 189 2179513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_U 190 2189513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_X 191 2199513109dSHiroshi Doyu 2209513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_X_OUT0 192 2219513109dSHiroshi Doyu #define TEGRA30_CLK_PLL_E 193 2229513109dSHiroshi Doyu #define TEGRA30_CLK_SPDIF_IN_SYNC 194 2239513109dSHiroshi Doyu #define TEGRA30_CLK_I2S0_SYNC 195 2249513109dSHiroshi Doyu #define TEGRA30_CLK_I2S1_SYNC 196 2259513109dSHiroshi Doyu #define TEGRA30_CLK_I2S2_SYNC 197 2269513109dSHiroshi Doyu #define TEGRA30_CLK_I2S3_SYNC 198 2279513109dSHiroshi Doyu #define TEGRA30_CLK_I2S4_SYNC 199 2289513109dSHiroshi Doyu #define TEGRA30_CLK_VIMCLK_SYNC 200 2299513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO0 201 2309513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO1 202 2319513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO2 203 2329513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO3 204 2339513109dSHiroshi Doyu #define TEGRA30_CLK_AUDIO4 205 2349513109dSHiroshi Doyu #define TEGRA30_CLK_SPDIF 206 235*c9585405SSowjanya Komatineni /* 207 */ 236*c9585405SSowjanya Komatineni /* 208 */ 237*c9585405SSowjanya Komatineni /* 209 */ 2389513109dSHiroshi Doyu #define TEGRA30_CLK_SCLK 210 239*c9585405SSowjanya Komatineni /* 211 */ 2409513109dSHiroshi Doyu #define TEGRA30_CLK_CCLK_G 212 2419513109dSHiroshi Doyu #define TEGRA30_CLK_CCLK_LP 213 2429513109dSHiroshi Doyu #define TEGRA30_CLK_TWD 214 2439513109dSHiroshi Doyu #define TEGRA30_CLK_CML0 215 2449513109dSHiroshi Doyu #define TEGRA30_CLK_CML1 216 2459513109dSHiroshi Doyu #define TEGRA30_CLK_HCLK 217 2469513109dSHiroshi Doyu #define TEGRA30_CLK_PCLK 218 2479513109dSHiroshi Doyu /* 219 */ 248e5377ab2SSowjanya Komatineni #define TEGRA30_CLK_OSC 220 2499513109dSHiroshi Doyu /* 221 */ 2509513109dSHiroshi Doyu /* 222 */ 2519513109dSHiroshi Doyu /* 223 */ 2529513109dSHiroshi Doyu 2539513109dSHiroshi Doyu /* 288 */ 2549513109dSHiroshi Doyu /* 289 */ 2559513109dSHiroshi Doyu /* 290 */ 2569513109dSHiroshi Doyu /* 291 */ 2579513109dSHiroshi Doyu /* 292 */ 2589513109dSHiroshi Doyu /* 293 */ 2599513109dSHiroshi Doyu /* 294 */ 2609513109dSHiroshi Doyu /* 295 */ 2619513109dSHiroshi Doyu /* 296 */ 2629513109dSHiroshi Doyu /* 297 */ 2639513109dSHiroshi Doyu /* 298 */ 2649513109dSHiroshi Doyu /* 299 */ 265*c9585405SSowjanya Komatineni /* 300 */ 266*c9585405SSowjanya Komatineni /* 301 */ 267*c9585405SSowjanya Komatineni /* 302 */ 268480fe6f4SPeter De Schrijver #define TEGRA30_CLK_AUDIO0_MUX 303 269480fe6f4SPeter De Schrijver #define TEGRA30_CLK_AUDIO1_MUX 304 270480fe6f4SPeter De Schrijver #define TEGRA30_CLK_AUDIO2_MUX 305 271480fe6f4SPeter De Schrijver #define TEGRA30_CLK_AUDIO3_MUX 306 272480fe6f4SPeter De Schrijver #define TEGRA30_CLK_AUDIO4_MUX 307 273480fe6f4SPeter De Schrijver #define TEGRA30_CLK_SPDIF_MUX 308 274480fe6f4SPeter De Schrijver #define TEGRA30_CLK_CLK_MAX 309 2759513109dSHiroshi Doyu 2769513109dSHiroshi Doyu #endif /* _DT_BINDINGS_CLOCK_TEGRA30_CAR_H */ 277