1*c66ec88fSEmmanuel Vadot /* SPDX-License-Identifier: GPL-2.0-or-later */ 2*c66ec88fSEmmanuel Vadot /* 3*c66ec88fSEmmanuel Vadot * Copyright (c) 2016-2017 Linaro Ltd. 4*c66ec88fSEmmanuel Vadot * Copyright (c) 2016-2017 HiSilicon Technologies Co., Ltd. 5*c66ec88fSEmmanuel Vadot */ 6*c66ec88fSEmmanuel Vadot 7*c66ec88fSEmmanuel Vadot #ifndef __DTS_HI3660_CLOCK_H 8*c66ec88fSEmmanuel Vadot #define __DTS_HI3660_CLOCK_H 9*c66ec88fSEmmanuel Vadot 10*c66ec88fSEmmanuel Vadot /* fixed rate clocks */ 11*c66ec88fSEmmanuel Vadot #define HI3660_CLKIN_SYS 0 12*c66ec88fSEmmanuel Vadot #define HI3660_CLKIN_REF 1 13*c66ec88fSEmmanuel Vadot #define HI3660_CLK_FLL_SRC 2 14*c66ec88fSEmmanuel Vadot #define HI3660_CLK_PPLL0 3 15*c66ec88fSEmmanuel Vadot #define HI3660_CLK_PPLL1 4 16*c66ec88fSEmmanuel Vadot #define HI3660_CLK_PPLL2 5 17*c66ec88fSEmmanuel Vadot #define HI3660_CLK_PPLL3 6 18*c66ec88fSEmmanuel Vadot #define HI3660_CLK_SCPLL 7 19*c66ec88fSEmmanuel Vadot #define HI3660_PCLK 8 20*c66ec88fSEmmanuel Vadot #define HI3660_CLK_UART0_DBG 9 21*c66ec88fSEmmanuel Vadot #define HI3660_CLK_UART6 10 22*c66ec88fSEmmanuel Vadot #define HI3660_OSC32K 11 23*c66ec88fSEmmanuel Vadot #define HI3660_OSC19M 12 24*c66ec88fSEmmanuel Vadot #define HI3660_CLK_480M 13 25*c66ec88fSEmmanuel Vadot #define HI3660_CLK_INV 14 26*c66ec88fSEmmanuel Vadot 27*c66ec88fSEmmanuel Vadot /* clk in crgctrl */ 28*c66ec88fSEmmanuel Vadot #define HI3660_FACTOR_UART3 15 29*c66ec88fSEmmanuel Vadot #define HI3660_CLK_FACTOR_MMC 16 30*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_I2C0 17 31*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_I2C1 18 32*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_I2C2 19 33*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_I2C6 20 34*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_SYSBUS 21 35*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_320M 22 36*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_A53 23 37*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_SPI0 24 38*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_SPI2 25 39*c66ec88fSEmmanuel Vadot #define HI3660_PCIEPHY_REF 26 40*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ABB_USB 27 41*c66ec88fSEmmanuel Vadot #define HI3660_HCLK_GATE_SDIO0 28 42*c66ec88fSEmmanuel Vadot #define HI3660_HCLK_GATE_SD 29 43*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_AOMM 30 44*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO0 31 45*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO1 32 46*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO2 33 47*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO3 34 48*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO4 35 49*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO5 36 50*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO6 37 51*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO7 38 52*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO8 39 53*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO9 40 54*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO10 41 55*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO11 42 56*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO12 43 57*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO13 44 58*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO14 45 59*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO15 46 60*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO16 47 61*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO17 48 62*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO18 49 63*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO19 50 64*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO20 51 65*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GPIO21 52 66*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_SPI3 53 67*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_I2C7 54 68*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_I2C3 55 69*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_SPI1 56 70*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_UART1 57 71*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_UART2 58 72*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_UART4 59 73*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_UART5 60 74*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_I2C4 61 75*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_DMAC 62 76*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GATE_DSS 63 77*c66ec88fSEmmanuel Vadot #define HI3660_ACLK_GATE_DSS 64 78*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_LDI1 65 79*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_LDI0 66 80*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_VIVOBUS 67 81*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_EDC0 68 82*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_TXDPHY0_CFG 69 83*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_TXDPHY0_REF 70 84*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_TXDPHY1_CFG 71 85*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_TXDPHY1_REF 72 86*c66ec88fSEmmanuel Vadot #define HI3660_ACLK_GATE_USB3OTG 73 87*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_SPI4 74 88*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_SD 75 89*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_SDIO0 76 90*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_UFS_SUBSYS 77 91*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GATE_DSI0 78 92*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GATE_DSI1 79 93*c66ec88fSEmmanuel Vadot #define HI3660_ACLK_GATE_PCIE 80 94*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GATE_PCIE_SYS 81 95*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_PCIEAUX 82 96*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GATE_PCIE_PHY 83 97*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_LDI0 84 98*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_LDI1 85 99*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_EDC0 86 100*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_UFSPHY_GT 87 101*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_MMC 88 102*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_SD 89 103*c66ec88fSEmmanuel Vadot #define HI3660_CLK_A53HPM_ANDGT 90 104*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_SDIO 91 105*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_UART0 92 106*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_UART1 93 107*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_UARTH 94 108*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_SPI 95 109*c66ec88fSEmmanuel Vadot #define HI3660_CLK_VIVOBUS_ANDGT 96 110*c66ec88fSEmmanuel Vadot #define HI3660_CLK_AOMM_ANDGT 97 111*c66ec88fSEmmanuel Vadot #define HI3660_CLK_320M_PLL_GT 98 112*c66ec88fSEmmanuel Vadot #define HI3660_AUTODIV_EMMC0BUS 99 113*c66ec88fSEmmanuel Vadot #define HI3660_AUTODIV_SYSBUS 100 114*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_UFSPHY_CFG 101 115*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_UFSIO_REF 102 116*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_SYSBUS 103 117*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_UART0 104 118*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_UART1 105 119*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_UARTH 106 120*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_SPI 107 121*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_I2C 108 122*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_MMC_PLL 109 123*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_LDI1 110 124*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_LDI0 111 125*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_SD_PLL 112 126*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_SD_SYS 113 127*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_EDC0 114 128*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_SDIO_SYS 115 129*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_SDIO_PLL 116 130*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_VIVOBUS 117 131*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_A53HPM 118 132*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_320M 119 133*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_IOPERI 120 134*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_UART0 121 135*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_UART1 122 136*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_UARTH 123 137*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_MMC 124 138*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_SD 125 139*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_EDC0 126 140*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_LDI0 127 141*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_SDIO 128 142*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_LDI1 129 143*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_SPI 130 144*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_VIVOBUS 131 145*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_I2C 132 146*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_UFSPHY 133 147*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_CFGBUS 134 148*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_MMC0BUS 135 149*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_MMC1BUS 136 150*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_UFSPERI 137 151*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_AOMM 138 152*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_IOPERI 139 153*c66ec88fSEmmanuel Vadot #define HI3660_VENC_VOLT_HOLD 140 154*c66ec88fSEmmanuel Vadot #define HI3660_PERI_VOLT_HOLD 141 155*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_VENC 142 156*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_VDEC 143 157*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_VENC 144 158*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANDGT_VDEC 145 159*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_VENC 146 160*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_VDEC 147 161*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_VENC 148 162*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_VDEC 149 163*c66ec88fSEmmanuel Vadot #define HI3660_CLK_FAC_ISP_SNCLK 150 164*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_ISP_SNCLK0 151 165*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_ISP_SNCLK1 152 166*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_ISP_SNCLK2 153 167*c66ec88fSEmmanuel Vadot #define HI3660_CLK_ANGT_ISP_SNCLK 154 168*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MUX_ISP_SNCLK 155 169*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_ISP_SNCLK 156 170*c66ec88fSEmmanuel Vadot 171*c66ec88fSEmmanuel Vadot /* clk in pmuctrl */ 172*c66ec88fSEmmanuel Vadot #define HI3660_GATE_ABB_192 0 173*c66ec88fSEmmanuel Vadot 174*c66ec88fSEmmanuel Vadot /* clk in pctrl */ 175*c66ec88fSEmmanuel Vadot #define HI3660_GATE_UFS_TCXO_EN 0 176*c66ec88fSEmmanuel Vadot #define HI3660_GATE_USB_TCXO_EN 1 177*c66ec88fSEmmanuel Vadot 178*c66ec88fSEmmanuel Vadot /* clk in sctrl */ 179*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_AO_GPIO0 0 180*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_AO_GPIO1 1 181*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_AO_GPIO2 2 182*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_AO_GPIO3 3 183*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_AO_GPIO4 4 184*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_AO_GPIO5 5 185*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_AO_GPIO6 6 186*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_GATE_MMBUF 7 187*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_DSS_AXI_MM 8 188*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_MMBUF_ANDGT 9 189*c66ec88fSEmmanuel Vadot #define HI3660_CLK_MMBUF_PLL_ANDGT 10 190*c66ec88fSEmmanuel Vadot #define HI3660_CLK_FLL_MMBUF_ANDGT 11 191*c66ec88fSEmmanuel Vadot #define HI3660_CLK_SYS_MMBUF_ANDGT 12 192*c66ec88fSEmmanuel Vadot #define HI3660_CLK_GATE_PCIEPHY_GT 13 193*c66ec88fSEmmanuel Vadot #define HI3660_ACLK_MUX_MMBUF 14 194*c66ec88fSEmmanuel Vadot #define HI3660_CLK_SW_MMBUF 15 195*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_AOBUS 16 196*c66ec88fSEmmanuel Vadot #define HI3660_PCLK_DIV_MMBUF 17 197*c66ec88fSEmmanuel Vadot #define HI3660_ACLK_DIV_MMBUF 18 198*c66ec88fSEmmanuel Vadot #define HI3660_CLK_DIV_PCIEPHY 19 199*c66ec88fSEmmanuel Vadot 200*c66ec88fSEmmanuel Vadot /* clk in iomcu */ 201*c66ec88fSEmmanuel Vadot #define HI3660_CLK_I2C0_IOMCU 0 202*c66ec88fSEmmanuel Vadot #define HI3660_CLK_I2C1_IOMCU 1 203*c66ec88fSEmmanuel Vadot #define HI3660_CLK_I2C2_IOMCU 2 204*c66ec88fSEmmanuel Vadot #define HI3660_CLK_I2C6_IOMCU 3 205*c66ec88fSEmmanuel Vadot #define HI3660_CLK_IOMCU_PERI0 4 206*c66ec88fSEmmanuel Vadot 207*c66ec88fSEmmanuel Vadot /* clk in stub clock */ 208*c66ec88fSEmmanuel Vadot #define HI3660_CLK_STUB_CLUSTER0 0 209*c66ec88fSEmmanuel Vadot #define HI3660_CLK_STUB_CLUSTER1 1 210*c66ec88fSEmmanuel Vadot #define HI3660_CLK_STUB_GPU 2 211*c66ec88fSEmmanuel Vadot #define HI3660_CLK_STUB_DDR 3 212*c66ec88fSEmmanuel Vadot #define HI3660_CLK_STUB_NUM 4 213*c66ec88fSEmmanuel Vadot 214*c66ec88fSEmmanuel Vadot #endif /* __DTS_HI3660_CLOCK_H */ 215