1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 26c43f6c8STom Warren /* 36c43f6c8STom Warren * (C) Copyright 2013-2015 46c43f6c8STom Warren * NVIDIA Corporation <www.nvidia.com> 56c43f6c8STom Warren */ 66c43f6c8STom Warren 76c43f6c8STom Warren /* Tegra210 clock PLL tables */ 86c43f6c8STom Warren 96c43f6c8STom Warren #ifndef _TEGRA210_CLOCK_TABLES_H_ 106c43f6c8STom Warren #define _TEGRA210_CLOCK_TABLES_H_ 116c43f6c8STom Warren 126c43f6c8STom Warren /* The PLLs supported by the hardware */ 136c43f6c8STom Warren enum clock_id { 146c43f6c8STom Warren CLOCK_ID_FIRST, 156c43f6c8STom Warren CLOCK_ID_CGENERAL = CLOCK_ID_FIRST, 166c43f6c8STom Warren CLOCK_ID_MEMORY, 176c43f6c8STom Warren CLOCK_ID_PERIPH, 186c43f6c8STom Warren CLOCK_ID_AUDIO, 196c43f6c8STom Warren CLOCK_ID_USB, 206c43f6c8STom Warren CLOCK_ID_DISPLAY, 216c43f6c8STom Warren 226c43f6c8STom Warren /* now the simple ones */ 236c43f6c8STom Warren CLOCK_ID_FIRST_SIMPLE, 246c43f6c8STom Warren CLOCK_ID_XCPU = CLOCK_ID_FIRST_SIMPLE, 256c43f6c8STom Warren CLOCK_ID_EPCI, 266c43f6c8STom Warren CLOCK_ID_SFROM32KHZ, 27722e000cSTom Warren CLOCK_ID_DP, 286c43f6c8STom Warren 296c43f6c8STom Warren /* These are the base clocks (inputs to the Tegra SoC) */ 306c43f6c8STom Warren CLOCK_ID_32KHZ, 316c43f6c8STom Warren CLOCK_ID_OSC, 32c043c025SThierry Reding CLOCK_ID_CLK_M, 336c43f6c8STom Warren 346c43f6c8STom Warren CLOCK_ID_COUNT, /* number of PLLs */ 356c43f6c8STom Warren 366c43f6c8STom Warren /* 376c43f6c8STom Warren * These are clock IDs that are used in table clock_source[][] 386c43f6c8STom Warren * but will not be assigned as a clock source for any peripheral. 396c43f6c8STom Warren */ 406c43f6c8STom Warren CLOCK_ID_DISPLAY2, 416c43f6c8STom Warren CLOCK_ID_CGENERAL_0, 426c43f6c8STom Warren CLOCK_ID_CGENERAL_1, 436c43f6c8STom Warren CLOCK_ID_CGENERAL2, 446c43f6c8STom Warren CLOCK_ID_CGENERAL3, 456c43f6c8STom Warren CLOCK_ID_CGENERAL4_0, 466c43f6c8STom Warren CLOCK_ID_CGENERAL4_1, 476c43f6c8STom Warren CLOCK_ID_CGENERAL4_2, 486c43f6c8STom Warren CLOCK_ID_MEMORY2, 496c43f6c8STom Warren CLOCK_ID_SRC2, 506c43f6c8STom Warren 516c43f6c8STom Warren CLOCK_ID_NONE = -1, 526c43f6c8STom Warren }; 536c43f6c8STom Warren 546c43f6c8STom Warren /* The clocks supported by the hardware */ 556c43f6c8STom Warren enum periph_id { 566c43f6c8STom Warren PERIPH_ID_FIRST, 576c43f6c8STom Warren 586c43f6c8STom Warren /* Low word: 31:0 (DEVICES_L) */ 596c43f6c8STom Warren PERIPH_ID_CPU = PERIPH_ID_FIRST, 606c43f6c8STom Warren PERIPH_ID_COP, 616c43f6c8STom Warren PERIPH_ID_TRIGSYS, 626c43f6c8STom Warren PERIPH_ID_ISPB, 636c43f6c8STom Warren PERIPH_ID_RESERVED4, 646c43f6c8STom Warren PERIPH_ID_TMR, 656c43f6c8STom Warren PERIPH_ID_UART1, 666c43f6c8STom Warren PERIPH_ID_UART2, 676c43f6c8STom Warren 686c43f6c8STom Warren /* 8 */ 696c43f6c8STom Warren PERIPH_ID_GPIO, 706c43f6c8STom Warren PERIPH_ID_SDMMC2, 716c43f6c8STom Warren PERIPH_ID_SPDIF, 726c43f6c8STom Warren PERIPH_ID_I2S2, 736c43f6c8STom Warren PERIPH_ID_I2C1, 746c43f6c8STom Warren PERIPH_ID_RESERVED13, 756c43f6c8STom Warren PERIPH_ID_SDMMC1, 766c43f6c8STom Warren PERIPH_ID_SDMMC4, 776c43f6c8STom Warren 786c43f6c8STom Warren /* 16 */ 796c43f6c8STom Warren PERIPH_ID_TCW, 806c43f6c8STom Warren PERIPH_ID_PWM, 816c43f6c8STom Warren PERIPH_ID_I2S3, 826c43f6c8STom Warren PERIPH_ID_RESERVED19, 836c43f6c8STom Warren PERIPH_ID_VI, 846c43f6c8STom Warren PERIPH_ID_RESERVED21, 856c43f6c8STom Warren PERIPH_ID_USBD, 866c43f6c8STom Warren PERIPH_ID_ISP, 876c43f6c8STom Warren 886c43f6c8STom Warren /* 24 */ 896c43f6c8STom Warren PERIPH_ID_RESERVED24, 906c43f6c8STom Warren PERIPH_ID_RESERVED25, 916c43f6c8STom Warren PERIPH_ID_DISP2, 926c43f6c8STom Warren PERIPH_ID_DISP1, 936c43f6c8STom Warren PERIPH_ID_HOST1X, 946c43f6c8STom Warren PERIPH_ID_VCP, 956c43f6c8STom Warren PERIPH_ID_I2S1, 966c43f6c8STom Warren PERIPH_ID_CACHE2, 976c43f6c8STom Warren 986c43f6c8STom Warren /* Middle word: 63:32 (DEVICES_H) */ 996c43f6c8STom Warren PERIPH_ID_MEM, 1006c43f6c8STom Warren PERIPH_ID_AHBDMA, 1016c43f6c8STom Warren PERIPH_ID_APBDMA, 1026c43f6c8STom Warren PERIPH_ID_RESERVED35, 1036c43f6c8STom Warren PERIPH_ID_RESERVED36, 1046c43f6c8STom Warren PERIPH_ID_STAT_MON, 1056c43f6c8STom Warren PERIPH_ID_RESERVED38, 1066c43f6c8STom Warren PERIPH_ID_FUSE, 1076c43f6c8STom Warren 1086c43f6c8STom Warren /* 40 */ 1096c43f6c8STom Warren PERIPH_ID_KFUSE, 1106c43f6c8STom Warren PERIPH_ID_SBC1, 1116c43f6c8STom Warren PERIPH_ID_SNOR, 1126c43f6c8STom Warren PERIPH_ID_RESERVED43, 1136c43f6c8STom Warren PERIPH_ID_SBC2, 1146c43f6c8STom Warren PERIPH_ID_XIO, 1156c43f6c8STom Warren PERIPH_ID_SBC3, 1166c43f6c8STom Warren PERIPH_ID_I2C5, 1176c43f6c8STom Warren 1186c43f6c8STom Warren /* 48 */ 1196c43f6c8STom Warren PERIPH_ID_DSI, 1206c43f6c8STom Warren PERIPH_ID_RESERVED49, 1216c43f6c8STom Warren PERIPH_ID_HSI, 1226c43f6c8STom Warren PERIPH_ID_HDMI, 1236c43f6c8STom Warren PERIPH_ID_CSI, 1246c43f6c8STom Warren PERIPH_ID_RESERVED53, 1256c43f6c8STom Warren PERIPH_ID_I2C2, 1266c43f6c8STom Warren PERIPH_ID_UART3, 1276c43f6c8STom Warren 1286c43f6c8STom Warren /* 56 */ 1296c43f6c8STom Warren PERIPH_ID_MIPI_CAL, 1306c43f6c8STom Warren PERIPH_ID_EMC, 1316c43f6c8STom Warren PERIPH_ID_USB2, 1326c43f6c8STom Warren PERIPH_ID_USB3, 1336c43f6c8STom Warren PERIPH_ID_RESERVED60, 1346c43f6c8STom Warren PERIPH_ID_VDE, 1356c43f6c8STom Warren PERIPH_ID_BSEA, 1366c43f6c8STom Warren PERIPH_ID_BSEV, 1376c43f6c8STom Warren 1386c43f6c8STom Warren /* Upper word 95:64 (DEVICES_U) */ 1396c43f6c8STom Warren PERIPH_ID_RESERVED64, 1406c43f6c8STom Warren PERIPH_ID_UART4, 1416c43f6c8STom Warren PERIPH_ID_UART5, 1426c43f6c8STom Warren PERIPH_ID_I2C3, 1436c43f6c8STom Warren PERIPH_ID_SBC4, 1446c43f6c8STom Warren PERIPH_ID_SDMMC3, 1456c43f6c8STom Warren PERIPH_ID_PCIE, 1466c43f6c8STom Warren PERIPH_ID_OWR, 1476c43f6c8STom Warren 1486c43f6c8STom Warren /* 72 */ 1496c43f6c8STom Warren PERIPH_ID_AFI, 1506c43f6c8STom Warren PERIPH_ID_CORESIGHT, 1516c43f6c8STom Warren PERIPH_ID_PCIEXCLK, 1526c43f6c8STom Warren PERIPH_ID_AVPUCQ, 1536c43f6c8STom Warren PERIPH_ID_LA, 1546c43f6c8STom Warren PERIPH_ID_TRACECLKIN, 1556c43f6c8STom Warren PERIPH_ID_SOC_THERM, 1566c43f6c8STom Warren PERIPH_ID_DTV, 1576c43f6c8STom Warren 1586c43f6c8STom Warren /* 80 */ 1596c43f6c8STom Warren PERIPH_ID_RESERVED80, 1606c43f6c8STom Warren PERIPH_ID_I2CSLOW, 1616c43f6c8STom Warren PERIPH_ID_DSIB, 1626c43f6c8STom Warren PERIPH_ID_TSEC, 1636c43f6c8STom Warren PERIPH_ID_RESERVED84, 1646c43f6c8STom Warren PERIPH_ID_RESERVED85, 1656c43f6c8STom Warren PERIPH_ID_RESERVED86, 1666c43f6c8STom Warren PERIPH_ID_EMUCIF, 1676c43f6c8STom Warren 1686c43f6c8STom Warren /* 88 */ 1696c43f6c8STom Warren PERIPH_ID_RESERVED88, 1706c43f6c8STom Warren PERIPH_ID_XUSB_HOST, 1716c43f6c8STom Warren PERIPH_ID_RESERVED90, 1726c43f6c8STom Warren PERIPH_ID_MSENC, 1736c43f6c8STom Warren PERIPH_ID_RESERVED92, 1746c43f6c8STom Warren PERIPH_ID_RESERVED93, 1756c43f6c8STom Warren PERIPH_ID_RESERVED94, 1766c43f6c8STom Warren PERIPH_ID_XUSB_DEV, 1776c43f6c8STom Warren 1786c43f6c8STom Warren PERIPH_ID_VW_FIRST, 1796c43f6c8STom Warren /* V word: 31:0 */ 1806c43f6c8STom Warren PERIPH_ID_CPUG = PERIPH_ID_VW_FIRST, 1816c43f6c8STom Warren PERIPH_ID_CPULP, 1826c43f6c8STom Warren PERIPH_ID_V_RESERVED2, 1836c43f6c8STom Warren PERIPH_ID_MSELECT, 1846c43f6c8STom Warren PERIPH_ID_V_RESERVED4, 1856c43f6c8STom Warren PERIPH_ID_I2S4, 1866c43f6c8STom Warren PERIPH_ID_I2S5, 1876c43f6c8STom Warren PERIPH_ID_I2C4, 1886c43f6c8STom Warren 1896c43f6c8STom Warren /* 104 */ 1906c43f6c8STom Warren PERIPH_ID_SBC5, 1916c43f6c8STom Warren PERIPH_ID_SBC6, 1926c43f6c8STom Warren PERIPH_ID_AHUB, 1936c43f6c8STom Warren PERIPH_ID_APB2APE, 1946c43f6c8STom Warren PERIPH_ID_V_RESERVED12, 1956c43f6c8STom Warren PERIPH_ID_V_RESERVED13, 1966c43f6c8STom Warren PERIPH_ID_V_RESERVED14, 1976c43f6c8STom Warren PERIPH_ID_HDA2CODEC2X, 1986c43f6c8STom Warren 1996c43f6c8STom Warren /* 112 */ 2006c43f6c8STom Warren PERIPH_ID_ATOMICS, 2016c43f6c8STom Warren PERIPH_ID_V_RESERVED17, 2026c43f6c8STom Warren PERIPH_ID_V_RESERVED18, 2036c43f6c8STom Warren PERIPH_ID_V_RESERVED19, 2046c43f6c8STom Warren PERIPH_ID_V_RESERVED20, 2056c43f6c8STom Warren PERIPH_ID_V_RESERVED21, 2066c43f6c8STom Warren PERIPH_ID_V_RESERVED22, 2076c43f6c8STom Warren PERIPH_ID_ACTMON, 2086c43f6c8STom Warren 2096c43f6c8STom Warren /* 120 */ 2106c43f6c8STom Warren PERIPH_ID_EXTPERIPH1, 2116c43f6c8STom Warren PERIPH_ID_EXTPERIPH2, 2126c43f6c8STom Warren PERIPH_ID_EXTPERIPH3, 2136c43f6c8STom Warren PERIPH_ID_OOB, 2146c43f6c8STom Warren PERIPH_ID_SATA, 2156c43f6c8STom Warren PERIPH_ID_HDA, 2166c43f6c8STom Warren PERIPH_ID_V_RESERVED30, 2176c43f6c8STom Warren PERIPH_ID_V_RESERVED31, 2186c43f6c8STom Warren 2196c43f6c8STom Warren /* W word: 31:0 */ 2206c43f6c8STom Warren PERIPH_ID_HDA2HDMICODEC, 2216c43f6c8STom Warren PERIPH_ID_SATACOLD, 2226c43f6c8STom Warren PERIPH_ID_W_RESERVED2, 2236c43f6c8STom Warren PERIPH_ID_W_RESERVED3, 2246c43f6c8STom Warren PERIPH_ID_W_RESERVED4, 2256c43f6c8STom Warren PERIPH_ID_W_RESERVED5, 2266c43f6c8STom Warren PERIPH_ID_W_RESERVED6, 2276c43f6c8STom Warren PERIPH_ID_W_RESERVED7, 2286c43f6c8STom Warren 2296c43f6c8STom Warren /* 136 */ 2306c43f6c8STom Warren PERIPH_ID_CEC, 2316c43f6c8STom Warren PERIPH_ID_W_RESERVED9, 2326c43f6c8STom Warren PERIPH_ID_W_RESERVED10, 2336c43f6c8STom Warren PERIPH_ID_W_RESERVED11, 2346c43f6c8STom Warren PERIPH_ID_W_RESERVED12, 2356c43f6c8STom Warren PERIPH_ID_W_RESERVED13, 2366c43f6c8STom Warren PERIPH_ID_XUSB_PADCTL, 2376c43f6c8STom Warren PERIPH_ID_W_RESERVED15, 2386c43f6c8STom Warren 2396c43f6c8STom Warren /* 144 */ 2406c43f6c8STom Warren PERIPH_ID_W_RESERVED16, 2416c43f6c8STom Warren PERIPH_ID_W_RESERVED17, 2426c43f6c8STom Warren PERIPH_ID_W_RESERVED18, 2436c43f6c8STom Warren PERIPH_ID_W_RESERVED19, 2446c43f6c8STom Warren PERIPH_ID_W_RESERVED20, 2456c43f6c8STom Warren PERIPH_ID_ENTROPY, 2466c43f6c8STom Warren PERIPH_ID_DDS, 2476c43f6c8STom Warren PERIPH_ID_W_RESERVED23, 2486c43f6c8STom Warren 2496c43f6c8STom Warren /* 152 */ 2506c43f6c8STom Warren PERIPH_ID_W_RESERVED24, 2516c43f6c8STom Warren PERIPH_ID_W_RESERVED25, 2526c43f6c8STom Warren PERIPH_ID_W_RESERVED26, 2536c43f6c8STom Warren PERIPH_ID_DVFS, 2546c43f6c8STom Warren PERIPH_ID_XUSB_SS, 2556c43f6c8STom Warren PERIPH_ID_W_RESERVED29, 2566c43f6c8STom Warren PERIPH_ID_W_RESERVED30, 2576c43f6c8STom Warren PERIPH_ID_W_RESERVED31, 2586c43f6c8STom Warren 2596c43f6c8STom Warren PERIPH_ID_X_FIRST, 2606c43f6c8STom Warren /* X word: 31:0 */ 2616c43f6c8STom Warren PERIPH_ID_SPARE = PERIPH_ID_X_FIRST, 2626c43f6c8STom Warren PERIPH_ID_X_RESERVED1, 2636c43f6c8STom Warren PERIPH_ID_X_RESERVED2, 2646c43f6c8STom Warren PERIPH_ID_X_RESERVED3, 2656c43f6c8STom Warren PERIPH_ID_CAM_MCLK, 2666c43f6c8STom Warren PERIPH_ID_CAM_MCLK2, 2676c43f6c8STom Warren PERIPH_ID_I2C6, 2686c43f6c8STom Warren PERIPH_ID_X_RESERVED7, 2696c43f6c8STom Warren 2706c43f6c8STom Warren /* 168 */ 2716c43f6c8STom Warren PERIPH_ID_X_RESERVED8, 2726c43f6c8STom Warren PERIPH_ID_X_RESERVED9, 2736c43f6c8STom Warren PERIPH_ID_X_RESERVED10, 2746c43f6c8STom Warren PERIPH_ID_VIM2_CLK, 2756c43f6c8STom Warren PERIPH_ID_X_RESERVED12, 2766c43f6c8STom Warren PERIPH_ID_X_RESERVED13, 2776c43f6c8STom Warren PERIPH_ID_EMC_DLL, 2786c43f6c8STom Warren PERIPH_ID_X_RESERVED15, 2796c43f6c8STom Warren 2806c43f6c8STom Warren /* 176 */ 2816c43f6c8STom Warren PERIPH_ID_HDMI_AUDIO, 2826c43f6c8STom Warren PERIPH_ID_CLK72MHZ, 2836c43f6c8STom Warren PERIPH_ID_VIC, 2846c43f6c8STom Warren PERIPH_ID_X_RESERVED19, 2856c43f6c8STom Warren PERIPH_ID_X_RESERVED20, 2866c43f6c8STom Warren PERIPH_ID_DPAUX, 2876c43f6c8STom Warren PERIPH_ID_SOR0, 2886c43f6c8STom Warren PERIPH_ID_X_RESERVED23, 2896c43f6c8STom Warren 2906c43f6c8STom Warren /* 184 */ 2916c43f6c8STom Warren PERIPH_ID_GPU, 2926c43f6c8STom Warren PERIPH_ID_X_RESERVED25, 2936c43f6c8STom Warren PERIPH_ID_X_RESERVED26, 2946c43f6c8STom Warren PERIPH_ID_X_RESERVED27, 2956c43f6c8STom Warren PERIPH_ID_X_RESERVED28, 2966c43f6c8STom Warren PERIPH_ID_X_RESERVED29, 2976c43f6c8STom Warren PERIPH_ID_X_RESERVED30, 2986c43f6c8STom Warren PERIPH_ID_X_RESERVED31, 2996c43f6c8STom Warren 3006c43f6c8STom Warren PERIPH_ID_Y_FIRST, 3016c43f6c8STom Warren /* Y word: 31:0 (192:223) */ 3026c43f6c8STom Warren PERIPH_ID_SPARE1 = PERIPH_ID_Y_FIRST, 3036c43f6c8STom Warren PERIPH_ID_Y_RESERVED1, 3046c43f6c8STom Warren PERIPH_ID_Y_RESERVED2, 3056c43f6c8STom Warren PERIPH_ID_Y_RESERVED3, 3066c43f6c8STom Warren PERIPH_ID_Y_RESERVED4, 3076c43f6c8STom Warren PERIPH_ID_Y_RESERVED5, 3086c43f6c8STom Warren PERIPH_ID_APE, 3096c43f6c8STom Warren PERIPH_ID_Y_RESERVED7, 3106c43f6c8STom Warren 3116c43f6c8STom Warren /* 200 */ 3126c43f6c8STom Warren PERIPH_ID_MC_CDPA, 3136c43f6c8STom Warren PERIPH_ID_Y_RESERVED9, 3146c43f6c8STom Warren PERIPH_ID_Y_RESERVED10, 3156c43f6c8STom Warren PERIPH_ID_Y_RESERVED11, 3166c43f6c8STom Warren PERIPH_ID_Y_RESERVED12, 3176c43f6c8STom Warren PERIPH_ID_PEX_USB_UPHY, 3186c43f6c8STom Warren PERIPH_ID_Y_RESERVED14, 3196c43f6c8STom Warren PERIPH_ID_Y_RESERVED15, 3206c43f6c8STom Warren 3216c43f6c8STom Warren /* 208 */ 3226c43f6c8STom Warren PERIPH_ID_VI_I2C, 3236c43f6c8STom Warren PERIPH_ID_Y_RESERVED17, 3246c43f6c8STom Warren PERIPH_ID_Y_RESERVED18, 3256c43f6c8STom Warren PERIPH_ID_QSPI, 3266c43f6c8STom Warren PERIPH_ID_Y_RESERVED20, 3276c43f6c8STom Warren PERIPH_ID_Y_RESERVED21, 3286c43f6c8STom Warren PERIPH_ID_Y_RESERVED22, 3296c43f6c8STom Warren PERIPH_ID_Y_RESERVED23, 3306c43f6c8STom Warren 3316c43f6c8STom Warren /* 216 */ 3326c43f6c8STom Warren PERIPH_ID_Y_RESERVED24, 3336c43f6c8STom Warren PERIPH_ID_Y_RESERVED25, 3346c43f6c8STom Warren PERIPH_ID_Y_RESERVED26, 3356c43f6c8STom Warren PERIPH_ID_Y_RESERVED27, 3366c43f6c8STom Warren PERIPH_ID_Y_RESERVED28, 3376c43f6c8STom Warren PERIPH_ID_Y_RESERVED29, 3386c43f6c8STom Warren PERIPH_ID_Y_RESERVED30, 3396c43f6c8STom Warren PERIPH_ID_Y_RESERVED31, 3406c43f6c8STom Warren 3416c43f6c8STom Warren PERIPH_ID_COUNT, 3426c43f6c8STom Warren PERIPH_ID_NONE = -1, 3436c43f6c8STom Warren }; 3446c43f6c8STom Warren 3456c43f6c8STom Warren enum pll_out_id { 3466c43f6c8STom Warren PLL_OUT1, 3476c43f6c8STom Warren PLL_OUT2, 3486c43f6c8STom Warren PLL_OUT3, 3496c43f6c8STom Warren PLL_OUT4 3506c43f6c8STom Warren }; 3516c43f6c8STom Warren 3526c43f6c8STom Warren /* 3536c43f6c8STom Warren * Clock peripheral IDs which sadly don't match up with PERIPH_ID. we want 3546c43f6c8STom Warren * callers to use the PERIPH_ID for all access to peripheral clocks to avoid 3556c43f6c8STom Warren * confusion bewteen PERIPH_ID_... and PERIPHC_... 3566c43f6c8STom Warren * 3576c43f6c8STom Warren * We don't call this CLOCK_PERIPH_ID or PERIPH_CLOCK_ID as it would just be 3586c43f6c8STom Warren * confusing. 3596c43f6c8STom Warren */ 3606c43f6c8STom Warren enum periphc_internal_id { 3616c43f6c8STom Warren /* 0x00 */ 3626c43f6c8STom Warren PERIPHC_I2S2, 3636c43f6c8STom Warren PERIPHC_I2S3, 3646c43f6c8STom Warren PERIPHC_SPDIF_OUT, 3656c43f6c8STom Warren PERIPHC_SPDIF_IN, 3666c43f6c8STom Warren PERIPHC_PWM, 3676c43f6c8STom Warren PERIPHC_05h, 3686c43f6c8STom Warren PERIPHC_SBC2, 3696c43f6c8STom Warren PERIPHC_SBC3, 3706c43f6c8STom Warren 3716c43f6c8STom Warren /* 0x08 */ 3726c43f6c8STom Warren PERIPHC_08h, 3736c43f6c8STom Warren PERIPHC_I2C1, 3746c43f6c8STom Warren PERIPHC_I2C5, 3756c43f6c8STom Warren PERIPHC_0bh, 3766c43f6c8STom Warren PERIPHC_0ch, 3776c43f6c8STom Warren PERIPHC_SBC1, 3786c43f6c8STom Warren PERIPHC_DISP1, 3796c43f6c8STom Warren PERIPHC_DISP2, 3806c43f6c8STom Warren 3816c43f6c8STom Warren /* 0x10 */ 3826c43f6c8STom Warren PERIPHC_10h, 3836c43f6c8STom Warren PERIPHC_11h, 3846c43f6c8STom Warren PERIPHC_VI, 3856c43f6c8STom Warren PERIPHC_13h, 3866c43f6c8STom Warren PERIPHC_SDMMC1, 3876c43f6c8STom Warren PERIPHC_SDMMC2, 3886c43f6c8STom Warren PERIPHC_G3D, 3896c43f6c8STom Warren PERIPHC_G2D, 3906c43f6c8STom Warren 3916c43f6c8STom Warren /* 0x18 */ 3926c43f6c8STom Warren PERIPHC_18h, 3936c43f6c8STom Warren PERIPHC_SDMMC4, 3946c43f6c8STom Warren PERIPHC_VFIR, 3956c43f6c8STom Warren PERIPHC_1Bh, 3966c43f6c8STom Warren PERIPHC_1Ch, 3976c43f6c8STom Warren PERIPHC_HSI, 3986c43f6c8STom Warren PERIPHC_UART1, 3996c43f6c8STom Warren PERIPHC_UART2, 4006c43f6c8STom Warren 4016c43f6c8STom Warren /* 0x20 */ 4026c43f6c8STom Warren PERIPHC_HOST1X, 4036c43f6c8STom Warren PERIPHC_21h, 4046c43f6c8STom Warren PERIPHC_22h, 4056c43f6c8STom Warren PERIPHC_HDMI, 4066c43f6c8STom Warren PERIPHC_24h, 4076c43f6c8STom Warren PERIPHC_25h, 4086c43f6c8STom Warren PERIPHC_I2C2, 4096c43f6c8STom Warren PERIPHC_EMC, 4106c43f6c8STom Warren 4116c43f6c8STom Warren /* 0x28 */ 4126c43f6c8STom Warren PERIPHC_UART3, 4136c43f6c8STom Warren PERIPHC_29h, 4146c43f6c8STom Warren PERIPHC_VI_SENSOR, 4156c43f6c8STom Warren PERIPHC_2bh, 4166c43f6c8STom Warren PERIPHC_2ch, 4176c43f6c8STom Warren PERIPHC_SBC4, 4186c43f6c8STom Warren PERIPHC_I2C3, 4196c43f6c8STom Warren PERIPHC_SDMMC3, 4206c43f6c8STom Warren 4216c43f6c8STom Warren /* 0x30 */ 4226c43f6c8STom Warren PERIPHC_UART4, 4236c43f6c8STom Warren PERIPHC_UART5, 4246c43f6c8STom Warren PERIPHC_VDE, 4256c43f6c8STom Warren PERIPHC_OWR, 4266c43f6c8STom Warren PERIPHC_NOR, 4276c43f6c8STom Warren PERIPHC_CSITE, 4286c43f6c8STom Warren PERIPHC_I2S1, 4296c43f6c8STom Warren PERIPHC_DTV, 4306c43f6c8STom Warren 4316c43f6c8STom Warren /* 0x38 */ 4326c43f6c8STom Warren PERIPHC_38h, 4336c43f6c8STom Warren PERIPHC_39h, 4346c43f6c8STom Warren PERIPHC_3ah, 4356c43f6c8STom Warren PERIPHC_3bh, 4366c43f6c8STom Warren PERIPHC_MSENC, 4376c43f6c8STom Warren PERIPHC_TSEC, 4386c43f6c8STom Warren PERIPHC_3eh, 4396c43f6c8STom Warren PERIPHC_OSC, 4406c43f6c8STom Warren 4416c43f6c8STom Warren PERIPHC_VW_FIRST, 4426c43f6c8STom Warren /* 0x40 */ 4436c43f6c8STom Warren PERIPHC_40h = PERIPHC_VW_FIRST, 4446c43f6c8STom Warren PERIPHC_MSELECT, 4456c43f6c8STom Warren PERIPHC_TSENSOR, 4466c43f6c8STom Warren PERIPHC_I2S4, 4476c43f6c8STom Warren PERIPHC_I2S5, 4486c43f6c8STom Warren PERIPHC_I2C4, 4496c43f6c8STom Warren PERIPHC_SBC5, 4506c43f6c8STom Warren PERIPHC_SBC6, 4516c43f6c8STom Warren 4526c43f6c8STom Warren /* 0x48 */ 4536c43f6c8STom Warren PERIPHC_AUDIO, 4546c43f6c8STom Warren PERIPHC_49h, 4556c43f6c8STom Warren PERIPHC_4ah, 4566c43f6c8STom Warren PERIPHC_4bh, 4576c43f6c8STom Warren PERIPHC_4ch, 4586c43f6c8STom Warren PERIPHC_HDA2CODEC2X, 4596c43f6c8STom Warren PERIPHC_ACTMON, 4606c43f6c8STom Warren PERIPHC_EXTPERIPH1, 4616c43f6c8STom Warren 4626c43f6c8STom Warren /* 0x50 */ 4636c43f6c8STom Warren PERIPHC_EXTPERIPH2, 4646c43f6c8STom Warren PERIPHC_EXTPERIPH3, 4656c43f6c8STom Warren PERIPHC_52h, 4666c43f6c8STom Warren PERIPHC_I2CSLOW, 4676c43f6c8STom Warren PERIPHC_SYS, 4686c43f6c8STom Warren PERIPHC_55h, 4696c43f6c8STom Warren PERIPHC_56h, 4706c43f6c8STom Warren PERIPHC_57h, 4716c43f6c8STom Warren 4726c43f6c8STom Warren /* 0x58 */ 4736c43f6c8STom Warren PERIPHC_58h, 4746c43f6c8STom Warren PERIPHC_59h, 4756c43f6c8STom Warren PERIPHC_5ah, 4766c43f6c8STom Warren PERIPHC_5bh, 4776c43f6c8STom Warren PERIPHC_SATAOOB, 4786c43f6c8STom Warren PERIPHC_SATA, 4796c43f6c8STom Warren PERIPHC_HDA, /* 0x428 */ 4806c43f6c8STom Warren PERIPHC_5fh, 4816c43f6c8STom Warren 4826c43f6c8STom Warren PERIPHC_X_FIRST, 4836c43f6c8STom Warren /* 0x60 */ 4846c43f6c8STom Warren PERIPHC_XUSB_CORE_HOST = PERIPHC_X_FIRST, /* 0x600 */ 4856c43f6c8STom Warren PERIPHC_XUSB_FALCON, 4866c43f6c8STom Warren PERIPHC_XUSB_FS, 4876c43f6c8STom Warren PERIPHC_XUSB_CORE_DEV, 4886c43f6c8STom Warren PERIPHC_XUSB_SS, 4896c43f6c8STom Warren PERIPHC_CILAB, 4906c43f6c8STom Warren PERIPHC_CILCD, 4916c43f6c8STom Warren PERIPHC_CILE, 4926c43f6c8STom Warren 4936c43f6c8STom Warren /* 0x68 */ 4946c43f6c8STom Warren PERIPHC_DSIA_LP, 4956c43f6c8STom Warren PERIPHC_DSIB_LP, 4966c43f6c8STom Warren PERIPHC_ENTROPY, 4976c43f6c8STom Warren PERIPHC_DVFS_REF, 4986c43f6c8STom Warren PERIPHC_DVFS_SOC, 4996c43f6c8STom Warren PERIPHC_TRACECLKIN, 5006c43f6c8STom Warren PERIPHC_6Eh, 5016c43f6c8STom Warren PERIPHC_6Fh, 5026c43f6c8STom Warren 5036c43f6c8STom Warren /* 0x70 */ 5046c43f6c8STom Warren PERIPHC_EMC_LATENCY, 5056c43f6c8STom Warren PERIPHC_SOC_THERM, 5066c43f6c8STom Warren PERIPHC_72h, 5076c43f6c8STom Warren PERIPHC_73h, 5086c43f6c8STom Warren PERIPHC_74h, 5096c43f6c8STom Warren PERIPHC_75h, 5106c43f6c8STom Warren PERIPHC_VI_SENSOR2, 5116c43f6c8STom Warren PERIPHC_I2C6, 5126c43f6c8STom Warren 5136c43f6c8STom Warren /* 0x78 */ 5146c43f6c8STom Warren PERIPHC_78h, 5156c43f6c8STom Warren PERIPHC_EMC_DLL, 5166c43f6c8STom Warren PERIPHC_7ah, 5176c43f6c8STom Warren PERIPHC_CLK72MHZ, 5186c43f6c8STom Warren PERIPHC_7ch, 5196c43f6c8STom Warren PERIPHC_7dh, 5206c43f6c8STom Warren PERIPHC_VIC, 5216c43f6c8STom Warren PERIPHC_7fh, 5226c43f6c8STom Warren 5236c43f6c8STom Warren PERIPHC_Y_FIRST, 5246c43f6c8STom Warren /* 0x80 */ 5256c43f6c8STom Warren PERIPHC_SDMMC_LEGACY_TM = PERIPHC_Y_FIRST, /* 0x694 */ 5266c43f6c8STom Warren PERIPHC_NVDEC, /* 0x698 */ 5276c43f6c8STom Warren PERIPHC_NVJPG, /* 0x69c */ 5286c43f6c8STom Warren PERIPHC_NVENC, /* 0x6a0 */ 5296c43f6c8STom Warren PERIPHC_84h, 5306c43f6c8STom Warren PERIPHC_85h, 5316c43f6c8STom Warren PERIPHC_86h, 5326c43f6c8STom Warren PERIPHC_87h, 5336c43f6c8STom Warren 5346c43f6c8STom Warren /* 0x88 */ 5356c43f6c8STom Warren PERIPHC_88h, 5366c43f6c8STom Warren PERIPHC_89h, 5376c43f6c8STom Warren PERIPHC_DMIC3, /* 0x6bc: */ 5386c43f6c8STom Warren PERIPHC_APE, /* 0x6c0: */ 5396c43f6c8STom Warren PERIPHC_QSPI, /* 0x6c4: */ 5406c43f6c8STom Warren PERIPHC_VI_I2C, /* 0x6c8: */ 5416c43f6c8STom Warren PERIPHC_USB2_HSIC_TRK, /* 0x6cc: */ 5426c43f6c8STom Warren PERIPHC_PEX_SATA_USB_RX_BYP, /* 0x6d0: */ 5436c43f6c8STom Warren 5446c43f6c8STom Warren /* 0x90 */ 5456c43f6c8STom Warren PERIPHC_MAUD, /* 0x6d4: */ 5466c43f6c8STom Warren PERIPHC_TSECB, /* 0x6d8: */ 5476c43f6c8STom Warren 5486c43f6c8STom Warren PERIPHC_COUNT, 5496c43f6c8STom Warren PERIPHC_NONE = -1, 5506c43f6c8STom Warren }; 5516c43f6c8STom Warren 5526c43f6c8STom Warren /* Converts a clock number to a clock register: 0=L, 1=H, 2=U, 0=V, 1=W */ 5536c43f6c8STom Warren #define PERIPH_REG(id) \ 5546c43f6c8STom Warren (id < PERIPH_ID_VW_FIRST) ? \ 5556c43f6c8STom Warren ((id) >> 5) : ((id - PERIPH_ID_VW_FIRST) >> 5) 5566c43f6c8STom Warren 5576c43f6c8STom Warren /* Mask value for a clock (within PERIPH_REG(id)) */ 5586c43f6c8STom Warren #define PERIPH_MASK(id) (1 << ((id) & 0x1f)) 5596c43f6c8STom Warren 5606c43f6c8STom Warren /* return 1 if a PLL ID is in range */ 5616c43f6c8STom Warren #define clock_id_is_pll(id) ((id) >= CLOCK_ID_FIRST && (id) < CLOCK_ID_COUNT) 5626c43f6c8STom Warren 5636c43f6c8STom Warren /* return 1 if a peripheral ID is in range */ 5646c43f6c8STom Warren #define clock_periph_id_isvalid(id) ((id) >= PERIPH_ID_FIRST && \ 5656c43f6c8STom Warren (id) < PERIPH_ID_COUNT) 5666c43f6c8STom Warren 5676c43f6c8STom Warren #endif /* _TEGRA210_CLOCK_TABLES_H_ */ 568