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