1*c66ec88fSEmmanuel Vadot /* SPDX-License-Identifier: GPL-2.0-or-later */ 2*c66ec88fSEmmanuel Vadot /* 3*c66ec88fSEmmanuel Vadot * Copyright (c) 2012-2013 Hisilicon Limited. 4*c66ec88fSEmmanuel Vadot * Copyright (c) 2012-2013 Linaro Limited. 5*c66ec88fSEmmanuel Vadot * 6*c66ec88fSEmmanuel Vadot * Author: Haojian Zhuang <haojian.zhuang@linaro.org> 7*c66ec88fSEmmanuel Vadot * Xin Li <li.xin@linaro.org> 8*c66ec88fSEmmanuel Vadot */ 9*c66ec88fSEmmanuel Vadot 10*c66ec88fSEmmanuel Vadot #ifndef __DTS_HI3620_CLOCK_H 11*c66ec88fSEmmanuel Vadot #define __DTS_HI3620_CLOCK_H 12*c66ec88fSEmmanuel Vadot 13*c66ec88fSEmmanuel Vadot #define HI3620_NONE_CLOCK 0 14*c66ec88fSEmmanuel Vadot 15*c66ec88fSEmmanuel Vadot /* fixed rate & fixed factor clocks */ 16*c66ec88fSEmmanuel Vadot #define HI3620_OSC32K 1 17*c66ec88fSEmmanuel Vadot #define HI3620_OSC26M 2 18*c66ec88fSEmmanuel Vadot #define HI3620_PCLK 3 19*c66ec88fSEmmanuel Vadot #define HI3620_PLL_ARM0 4 20*c66ec88fSEmmanuel Vadot #define HI3620_PLL_ARM1 5 21*c66ec88fSEmmanuel Vadot #define HI3620_PLL_PERI 6 22*c66ec88fSEmmanuel Vadot #define HI3620_PLL_USB 7 23*c66ec88fSEmmanuel Vadot #define HI3620_PLL_HDMI 8 24*c66ec88fSEmmanuel Vadot #define HI3620_PLL_GPU 9 25*c66ec88fSEmmanuel Vadot #define HI3620_RCLK_TCXO 10 26*c66ec88fSEmmanuel Vadot #define HI3620_RCLK_CFGAXI 11 27*c66ec88fSEmmanuel Vadot #define HI3620_RCLK_PICO 12 28*c66ec88fSEmmanuel Vadot 29*c66ec88fSEmmanuel Vadot /* mux clocks */ 30*c66ec88fSEmmanuel Vadot #define HI3620_TIMER0_MUX 32 31*c66ec88fSEmmanuel Vadot #define HI3620_TIMER1_MUX 33 32*c66ec88fSEmmanuel Vadot #define HI3620_TIMER2_MUX 34 33*c66ec88fSEmmanuel Vadot #define HI3620_TIMER3_MUX 35 34*c66ec88fSEmmanuel Vadot #define HI3620_TIMER4_MUX 36 35*c66ec88fSEmmanuel Vadot #define HI3620_TIMER5_MUX 37 36*c66ec88fSEmmanuel Vadot #define HI3620_TIMER6_MUX 38 37*c66ec88fSEmmanuel Vadot #define HI3620_TIMER7_MUX 39 38*c66ec88fSEmmanuel Vadot #define HI3620_TIMER8_MUX 40 39*c66ec88fSEmmanuel Vadot #define HI3620_TIMER9_MUX 41 40*c66ec88fSEmmanuel Vadot #define HI3620_UART0_MUX 42 41*c66ec88fSEmmanuel Vadot #define HI3620_UART1_MUX 43 42*c66ec88fSEmmanuel Vadot #define HI3620_UART2_MUX 44 43*c66ec88fSEmmanuel Vadot #define HI3620_UART3_MUX 45 44*c66ec88fSEmmanuel Vadot #define HI3620_UART4_MUX 46 45*c66ec88fSEmmanuel Vadot #define HI3620_SPI0_MUX 47 46*c66ec88fSEmmanuel Vadot #define HI3620_SPI1_MUX 48 47*c66ec88fSEmmanuel Vadot #define HI3620_SPI2_MUX 49 48*c66ec88fSEmmanuel Vadot #define HI3620_SAXI_MUX 50 49*c66ec88fSEmmanuel Vadot #define HI3620_PWM0_MUX 51 50*c66ec88fSEmmanuel Vadot #define HI3620_PWM1_MUX 52 51*c66ec88fSEmmanuel Vadot #define HI3620_SD_MUX 53 52*c66ec88fSEmmanuel Vadot #define HI3620_MMC1_MUX 54 53*c66ec88fSEmmanuel Vadot #define HI3620_MMC1_MUX2 55 54*c66ec88fSEmmanuel Vadot #define HI3620_G2D_MUX 56 55*c66ec88fSEmmanuel Vadot #define HI3620_VENC_MUX 57 56*c66ec88fSEmmanuel Vadot #define HI3620_VDEC_MUX 58 57*c66ec88fSEmmanuel Vadot #define HI3620_VPP_MUX 59 58*c66ec88fSEmmanuel Vadot #define HI3620_EDC0_MUX 60 59*c66ec88fSEmmanuel Vadot #define HI3620_LDI0_MUX 61 60*c66ec88fSEmmanuel Vadot #define HI3620_EDC1_MUX 62 61*c66ec88fSEmmanuel Vadot #define HI3620_LDI1_MUX 63 62*c66ec88fSEmmanuel Vadot #define HI3620_RCLK_HSIC 64 63*c66ec88fSEmmanuel Vadot #define HI3620_MMC2_MUX 65 64*c66ec88fSEmmanuel Vadot #define HI3620_MMC3_MUX 66 65*c66ec88fSEmmanuel Vadot 66*c66ec88fSEmmanuel Vadot /* divider clocks */ 67*c66ec88fSEmmanuel Vadot #define HI3620_SHAREAXI_DIV 128 68*c66ec88fSEmmanuel Vadot #define HI3620_CFGAXI_DIV 129 69*c66ec88fSEmmanuel Vadot #define HI3620_SD_DIV 130 70*c66ec88fSEmmanuel Vadot #define HI3620_MMC1_DIV 131 71*c66ec88fSEmmanuel Vadot #define HI3620_HSIC_DIV 132 72*c66ec88fSEmmanuel Vadot #define HI3620_MMC2_DIV 133 73*c66ec88fSEmmanuel Vadot #define HI3620_MMC3_DIV 134 74*c66ec88fSEmmanuel Vadot 75*c66ec88fSEmmanuel Vadot /* gate clocks */ 76*c66ec88fSEmmanuel Vadot #define HI3620_TIMERCLK01 160 77*c66ec88fSEmmanuel Vadot #define HI3620_TIMER_RCLK01 161 78*c66ec88fSEmmanuel Vadot #define HI3620_TIMERCLK23 162 79*c66ec88fSEmmanuel Vadot #define HI3620_TIMER_RCLK23 163 80*c66ec88fSEmmanuel Vadot #define HI3620_TIMERCLK45 164 81*c66ec88fSEmmanuel Vadot #define HI3620_TIMERCLK67 165 82*c66ec88fSEmmanuel Vadot #define HI3620_TIMERCLK89 166 83*c66ec88fSEmmanuel Vadot #define HI3620_RTCCLK 167 84*c66ec88fSEmmanuel Vadot #define HI3620_KPC_CLK 168 85*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK0 169 86*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK1 170 87*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK2 171 88*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK3 172 89*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK4 173 90*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK5 174 91*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK6 175 92*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK7 176 93*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK8 177 94*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK9 178 95*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK10 179 96*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK11 180 97*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK12 181 98*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK13 182 99*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK14 183 100*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK15 184 101*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK16 185 102*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK17 186 103*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK18 187 104*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK19 188 105*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK20 189 106*c66ec88fSEmmanuel Vadot #define HI3620_GPIOCLK21 190 107*c66ec88fSEmmanuel Vadot #define HI3620_DPHY0_CLK 191 108*c66ec88fSEmmanuel Vadot #define HI3620_DPHY1_CLK 192 109*c66ec88fSEmmanuel Vadot #define HI3620_DPHY2_CLK 193 110*c66ec88fSEmmanuel Vadot #define HI3620_USBPHY_CLK 194 111*c66ec88fSEmmanuel Vadot #define HI3620_ACP_CLK 195 112*c66ec88fSEmmanuel Vadot #define HI3620_PWMCLK0 196 113*c66ec88fSEmmanuel Vadot #define HI3620_PWMCLK1 197 114*c66ec88fSEmmanuel Vadot #define HI3620_UARTCLK0 198 115*c66ec88fSEmmanuel Vadot #define HI3620_UARTCLK1 199 116*c66ec88fSEmmanuel Vadot #define HI3620_UARTCLK2 200 117*c66ec88fSEmmanuel Vadot #define HI3620_UARTCLK3 201 118*c66ec88fSEmmanuel Vadot #define HI3620_UARTCLK4 202 119*c66ec88fSEmmanuel Vadot #define HI3620_SPICLK0 203 120*c66ec88fSEmmanuel Vadot #define HI3620_SPICLK1 204 121*c66ec88fSEmmanuel Vadot #define HI3620_SPICLK2 205 122*c66ec88fSEmmanuel Vadot #define HI3620_I2CCLK0 206 123*c66ec88fSEmmanuel Vadot #define HI3620_I2CCLK1 207 124*c66ec88fSEmmanuel Vadot #define HI3620_I2CCLK2 208 125*c66ec88fSEmmanuel Vadot #define HI3620_I2CCLK3 209 126*c66ec88fSEmmanuel Vadot #define HI3620_SCI_CLK 210 127*c66ec88fSEmmanuel Vadot #define HI3620_DDRC_PER_CLK 211 128*c66ec88fSEmmanuel Vadot #define HI3620_DMAC_CLK 212 129*c66ec88fSEmmanuel Vadot #define HI3620_USB2DVC_CLK 213 130*c66ec88fSEmmanuel Vadot #define HI3620_SD_CLK 214 131*c66ec88fSEmmanuel Vadot #define HI3620_MMC_CLK1 215 132*c66ec88fSEmmanuel Vadot #define HI3620_MMC_CLK2 216 133*c66ec88fSEmmanuel Vadot #define HI3620_MMC_CLK3 217 134*c66ec88fSEmmanuel Vadot #define HI3620_MCU_CLK 218 135*c66ec88fSEmmanuel Vadot 136*c66ec88fSEmmanuel Vadot #define HI3620_SD_CIUCLK 0 137*c66ec88fSEmmanuel Vadot #define HI3620_MMC_CIUCLK1 1 138*c66ec88fSEmmanuel Vadot #define HI3620_MMC_CIUCLK2 2 139*c66ec88fSEmmanuel Vadot #define HI3620_MMC_CIUCLK3 3 140*c66ec88fSEmmanuel Vadot 141*c66ec88fSEmmanuel Vadot #define HI3620_NR_CLKS 219 142*c66ec88fSEmmanuel Vadot 143*c66ec88fSEmmanuel Vadot #endif /* __DTS_HI3620_CLOCK_H */ 144