1*01470923Sjmcneill /* $NetBSD: rk3288_cru.h,v 1.1 2021/11/12 22:02:08 jmcneill Exp $ */ 2*01470923Sjmcneill 3*01470923Sjmcneill /*- 4*01470923Sjmcneill * Copyright (c) 2021 Jared McNeill <jmcneill@invisible.ca> 5*01470923Sjmcneill * All rights reserved. 6*01470923Sjmcneill * 7*01470923Sjmcneill * Redistribution and use in source and binary forms, with or without 8*01470923Sjmcneill * modification, are permitted provided that the following conditions 9*01470923Sjmcneill * are met: 10*01470923Sjmcneill * 1. Redistributions of source code must retain the above copyright 11*01470923Sjmcneill * notice, this list of conditions and the following disclaimer. 12*01470923Sjmcneill * 2. Redistributions in binary form must reproduce the above copyright 13*01470923Sjmcneill * notice, this list of conditions and the following disclaimer in the 14*01470923Sjmcneill * documentation and/or other materials provided with the distribution. 15*01470923Sjmcneill * 16*01470923Sjmcneill * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 17*01470923Sjmcneill * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 18*01470923Sjmcneill * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 19*01470923Sjmcneill * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20*01470923Sjmcneill * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 21*01470923Sjmcneill * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 22*01470923Sjmcneill * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 23*01470923Sjmcneill * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 24*01470923Sjmcneill * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25*01470923Sjmcneill * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26*01470923Sjmcneill * SUCH DAMAGE. 27*01470923Sjmcneill */ 28*01470923Sjmcneill 29*01470923Sjmcneill #ifndef _RK3328_CRU_H 30*01470923Sjmcneill #define _RK3328_CRU_H 31*01470923Sjmcneill 32*01470923Sjmcneill #define RK3288_PLL_APLL 1 33*01470923Sjmcneill #define RK3288_PLL_DPLL 2 34*01470923Sjmcneill #define RK3288_PLL_CPLL 3 35*01470923Sjmcneill #define RK3288_PLL_GPLL 4 36*01470923Sjmcneill #define RK3288_PLL_NPLL 5 37*01470923Sjmcneill #define RK3288_ARMCLK 6 38*01470923Sjmcneill #define RK3288_SCLK_GPU 64 39*01470923Sjmcneill #define RK3288_SCLK_SPI0 65 40*01470923Sjmcneill #define RK3288_SCLK_SPI1 66 41*01470923Sjmcneill #define RK3288_SCLK_SPI2 67 42*01470923Sjmcneill #define RK3288_SCLK_SDMMC 68 43*01470923Sjmcneill #define RK3288_SCLK_SDIO0 69 44*01470923Sjmcneill #define RK3288_SCLK_SDIO1 70 45*01470923Sjmcneill #define RK3288_SCLK_EMMC 71 46*01470923Sjmcneill #define RK3288_SCLK_TSADC 72 47*01470923Sjmcneill #define RK3288_SCLK_SARADC 73 48*01470923Sjmcneill #define RK3288_SCLK_PS2C 74 49*01470923Sjmcneill #define RK3288_SCLK_NANDC0 75 50*01470923Sjmcneill #define RK3288_SCLK_NANDC1 76 51*01470923Sjmcneill #define RK3288_SCLK_UART0 77 52*01470923Sjmcneill #define RK3288_SCLK_UART1 78 53*01470923Sjmcneill #define RK3288_SCLK_UART2 79 54*01470923Sjmcneill #define RK3288_SCLK_UART3 80 55*01470923Sjmcneill #define RK3288_SCLK_UART4 81 56*01470923Sjmcneill #define RK3288_SCLK_I2S0 82 57*01470923Sjmcneill #define RK3288_SCLK_SPDIF 83 58*01470923Sjmcneill #define RK3288_SCLK_SPDIF8CH 84 59*01470923Sjmcneill #define RK3288_SCLK_TIMER0 85 60*01470923Sjmcneill #define RK3288_SCLK_TIMER1 86 61*01470923Sjmcneill #define RK3288_SCLK_TIMER2 87 62*01470923Sjmcneill #define RK3288_SCLK_TIMER3 88 63*01470923Sjmcneill #define RK3288_SCLK_TIMER4 89 64*01470923Sjmcneill #define RK3288_SCLK_TIMER5 90 65*01470923Sjmcneill #define RK3288_SCLK_TIMER6 91 66*01470923Sjmcneill #define RK3288_SCLK_HSADC 92 67*01470923Sjmcneill #define RK3288_SCLK_OTGPHY0 93 68*01470923Sjmcneill #define RK3288_SCLK_OTGPHY1 94 69*01470923Sjmcneill #define RK3288_SCLK_OTGPHY2 95 70*01470923Sjmcneill #define RK3288_SCLK_OTG_ADP 96 71*01470923Sjmcneill #define RK3288_SCLK_HSICPHY480M 97 72*01470923Sjmcneill #define RK3288_SCLK_HSICPHY12M 98 73*01470923Sjmcneill #define RK3288_SCLK_MACREF 99 74*01470923Sjmcneill #define RK3288_SCLK_LCDC_PWM0 100 75*01470923Sjmcneill #define RK3288_SCLK_LCDC_PWM1 101 76*01470923Sjmcneill #define RK3288_SCLK_MAC_RX 102 77*01470923Sjmcneill #define RK3288_SCLK_MAC_TX 103 78*01470923Sjmcneill #define RK3288_SCLK_EDP_24M 104 79*01470923Sjmcneill #define RK3288_SCLK_EDP 105 80*01470923Sjmcneill #define RK3288_SCLK_RGA 106 81*01470923Sjmcneill #define RK3288_SCLK_ISP 107 82*01470923Sjmcneill #define RK3288_SCLK_ISP_JPE 108 83*01470923Sjmcneill #define RK3288_SCLK_HDMI_HDCP 109 84*01470923Sjmcneill #define RK3288_SCLK_HDMI_CEC 110 85*01470923Sjmcneill #define RK3288_SCLK_HEVC_CABAC 111 86*01470923Sjmcneill #define RK3288_SCLK_HEVC_CORE 112 87*01470923Sjmcneill #define RK3288_SCLK_I2S0_OUT 113 88*01470923Sjmcneill #define RK3288_SCLK_SDMMC_DRV 114 89*01470923Sjmcneill #define RK3288_SCLK_SDIO0_DRV 115 90*01470923Sjmcneill #define RK3288_SCLK_SDIO1_DRV 116 91*01470923Sjmcneill #define RK3288_SCLK_EMMC_DRV 117 92*01470923Sjmcneill #define RK3288_SCLK_SDMMC_SAMPLE 118 93*01470923Sjmcneill #define RK3288_SCLK_SDIO0_SAMPLE 119 94*01470923Sjmcneill #define RK3288_SCLK_SDIO1_SAMPLE 120 95*01470923Sjmcneill #define RK3288_SCLK_EMMC_SAMPLE 121 96*01470923Sjmcneill #define RK3288_SCLK_USBPHY480M_SRC 122 97*01470923Sjmcneill #define RK3288_SCLK_PVTM_CORE 123 98*01470923Sjmcneill #define RK3288_SCLK_PVTM_GPU 124 99*01470923Sjmcneill #define RK3288_SCLK_CRYPTO 125 100*01470923Sjmcneill #define RK3288_SCLK_MIPIDSI_24M 126 101*01470923Sjmcneill #define RK3288_SCLK_VIP_OUT 127 102*01470923Sjmcneill #define RK3288_SCLK_MAC 151 103*01470923Sjmcneill #define RK3288_SCLK_MACREF_OUT 152 104*01470923Sjmcneill #define RK3288_DCLK_VOP0 190 105*01470923Sjmcneill #define RK3288_DCLK_VOP1 191 106*01470923Sjmcneill #define RK3288_ACLK_GPU 192 107*01470923Sjmcneill #define RK3288_ACLK_DMAC1 193 108*01470923Sjmcneill #define RK3288_ACLK_DMAC2 194 109*01470923Sjmcneill #define RK3288_ACLK_MMU 195 110*01470923Sjmcneill #define RK3288_ACLK_GMAC 196 111*01470923Sjmcneill #define RK3288_ACLK_VOP0 197 112*01470923Sjmcneill #define RK3288_ACLK_VOP1 198 113*01470923Sjmcneill #define RK3288_ACLK_CRYPTO 199 114*01470923Sjmcneill #define RK3288_ACLK_RGA 200 115*01470923Sjmcneill #define RK3288_ACLK_RGA_NIU 201 116*01470923Sjmcneill #define RK3288_ACLK_IEP 202 117*01470923Sjmcneill #define RK3288_ACLK_VIO0_NIU 203 118*01470923Sjmcneill #define RK3288_ACLK_VIP 204 119*01470923Sjmcneill #define RK3288_ACLK_ISP 205 120*01470923Sjmcneill #define RK3288_ACLK_VIO1_NIU 206 121*01470923Sjmcneill #define RK3288_ACLK_HEVC 207 122*01470923Sjmcneill #define RK3288_ACLK_VCODEC 208 123*01470923Sjmcneill #define RK3288_ACLK_CPU 209 124*01470923Sjmcneill #define RK3288_ACLK_PERI 210 125*01470923Sjmcneill #define RK3288_PCLK_GPIO0 320 126*01470923Sjmcneill #define RK3288_PCLK_GPIO1 321 127*01470923Sjmcneill #define RK3288_PCLK_GPIO2 322 128*01470923Sjmcneill #define RK3288_PCLK_GPIO3 323 129*01470923Sjmcneill #define RK3288_PCLK_GPIO4 324 130*01470923Sjmcneill #define RK3288_PCLK_GPIO5 325 131*01470923Sjmcneill #define RK3288_PCLK_GPIO6 326 132*01470923Sjmcneill #define RK3288_PCLK_GPIO7 327 133*01470923Sjmcneill #define RK3288_PCLK_GPIO8 328 134*01470923Sjmcneill #define RK3288_PCLK_GRF 329 135*01470923Sjmcneill #define RK3288_PCLK_SGRF 330 136*01470923Sjmcneill #define RK3288_PCLK_PMU 331 137*01470923Sjmcneill #define RK3288_PCLK_I2C0 332 138*01470923Sjmcneill #define RK3288_PCLK_I2C1 333 139*01470923Sjmcneill #define RK3288_PCLK_I2C2 334 140*01470923Sjmcneill #define RK3288_PCLK_I2C3 335 141*01470923Sjmcneill #define RK3288_PCLK_I2C4 336 142*01470923Sjmcneill #define RK3288_PCLK_I2C5 337 143*01470923Sjmcneill #define RK3288_PCLK_SPI0 338 144*01470923Sjmcneill #define RK3288_PCLK_SPI1 339 145*01470923Sjmcneill #define RK3288_PCLK_SPI2 340 146*01470923Sjmcneill #define RK3288_PCLK_UART0 341 147*01470923Sjmcneill #define RK3288_PCLK_UART1 342 148*01470923Sjmcneill #define RK3288_PCLK_UART2 343 149*01470923Sjmcneill #define RK3288_PCLK_UART3 344 150*01470923Sjmcneill #define RK3288_PCLK_UART4 345 151*01470923Sjmcneill #define RK3288_PCLK_TSADC 346 152*01470923Sjmcneill #define RK3288_PCLK_SARADC 347 153*01470923Sjmcneill #define RK3288_PCLK_SIM 348 154*01470923Sjmcneill #define RK3288_PCLK_GMAC 349 155*01470923Sjmcneill #define RK3288_PCLK_PWM 350 156*01470923Sjmcneill #define RK3288_PCLK_RKPWM 351 157*01470923Sjmcneill #define RK3288_PCLK_PS2C 352 158*01470923Sjmcneill #define RK3288_PCLK_TIMER 353 159*01470923Sjmcneill #define RK3288_PCLK_TZPC 354 160*01470923Sjmcneill #define RK3288_PCLK_EDP_CTRL 355 161*01470923Sjmcneill #define RK3288_PCLK_MIPI_DSI0 356 162*01470923Sjmcneill #define RK3288_PCLK_MIPI_DSI1 357 163*01470923Sjmcneill #define RK3288_PCLK_MIPI_CSI 358 164*01470923Sjmcneill #define RK3288_PCLK_LVDS_PHY 359 165*01470923Sjmcneill #define RK3288_PCLK_HDMI_CTRL 360 166*01470923Sjmcneill #define RK3288_PCLK_VIO2_H2P 361 167*01470923Sjmcneill #define RK3288_PCLK_CPU 362 168*01470923Sjmcneill #define RK3288_PCLK_PERI 363 169*01470923Sjmcneill #define RK3288_PCLK_DDRUPCTL0 364 170*01470923Sjmcneill #define RK3288_PCLK_PUBL0 365 171*01470923Sjmcneill #define RK3288_PCLK_DDRUPCTL1 366 172*01470923Sjmcneill #define RK3288_PCLK_PUBL1 367 173*01470923Sjmcneill #define RK3288_PCLK_WDT 368 174*01470923Sjmcneill #define RK3288_PCLK_EFUSE256 369 175*01470923Sjmcneill #define RK3288_PCLK_EFUSE1024 370 176*01470923Sjmcneill #define RK3288_PCLK_ISP_IN 371 177*01470923Sjmcneill #define RK3288_HCLK_GPS 448 178*01470923Sjmcneill #define RK3288_HCLK_OTG0 449 179*01470923Sjmcneill #define RK3288_HCLK_USBHOST0 450 180*01470923Sjmcneill #define RK3288_HCLK_USBHOST1 451 181*01470923Sjmcneill #define RK3288_HCLK_HSIC 452 182*01470923Sjmcneill #define RK3288_HCLK_NANDC0 453 183*01470923Sjmcneill #define RK3288_HCLK_NANDC1 454 184*01470923Sjmcneill #define RK3288_HCLK_TSP 455 185*01470923Sjmcneill #define RK3288_HCLK_SDMMC 456 186*01470923Sjmcneill #define RK3288_HCLK_SDIO0 457 187*01470923Sjmcneill #define RK3288_HCLK_SDIO1 458 188*01470923Sjmcneill #define RK3288_HCLK_EMMC 459 189*01470923Sjmcneill #define RK3288_HCLK_HSADC 460 190*01470923Sjmcneill #define RK3288_HCLK_CRYPTO 461 191*01470923Sjmcneill #define RK3288_HCLK_I2S0 462 192*01470923Sjmcneill #define RK3288_HCLK_SPDIF 463 193*01470923Sjmcneill #define RK3288_HCLK_SPDIF8CH 464 194*01470923Sjmcneill #define RK3288_HCLK_VOP0 465 195*01470923Sjmcneill #define RK3288_HCLK_VOP1 466 196*01470923Sjmcneill #define RK3288_HCLK_ROM 467 197*01470923Sjmcneill #define RK3288_HCLK_IEP 468 198*01470923Sjmcneill #define RK3288_HCLK_ISP 469 199*01470923Sjmcneill #define RK3288_HCLK_RGA 470 200*01470923Sjmcneill #define RK3288_HCLK_VIO_AHB_ARBI 471 201*01470923Sjmcneill #define RK3288_HCLK_VIO_NIU 472 202*01470923Sjmcneill #define RK3288_HCLK_VIP 473 203*01470923Sjmcneill #define RK3288_HCLK_VIO2_H2P 474 204*01470923Sjmcneill #define RK3288_HCLK_HEVC 475 205*01470923Sjmcneill #define RK3288_HCLK_VCODEC 476 206*01470923Sjmcneill #define RK3288_HCLK_CPU 477 207*01470923Sjmcneill #define RK3288_HCLK_PERI 478 208*01470923Sjmcneill 209*01470923Sjmcneill #endif /* !_RK3328_CRU_H */ 210