1*2f8b5eb5SJacky Huang /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */ 2*2f8b5eb5SJacky Huang /* 3*2f8b5eb5SJacky Huang * Copyright (C) 2023 Nuvoton Technologies. 4*2f8b5eb5SJacky Huang */ 5*2f8b5eb5SJacky Huang 6*2f8b5eb5SJacky Huang #ifndef __DT_BINDINGS_CLOCK_NUVOTON_MA35D1_CLK_H 7*2f8b5eb5SJacky Huang #define __DT_BINDINGS_CLOCK_NUVOTON_MA35D1_CLK_H 8*2f8b5eb5SJacky Huang 9*2f8b5eb5SJacky Huang /* external and internal oscillator clocks */ 10*2f8b5eb5SJacky Huang #define HXT 0 11*2f8b5eb5SJacky Huang #define HXT_GATE 1 12*2f8b5eb5SJacky Huang #define LXT 2 13*2f8b5eb5SJacky Huang #define LXT_GATE 3 14*2f8b5eb5SJacky Huang #define HIRC 4 15*2f8b5eb5SJacky Huang #define HIRC_GATE 5 16*2f8b5eb5SJacky Huang #define LIRC 6 17*2f8b5eb5SJacky Huang #define LIRC_GATE 7 18*2f8b5eb5SJacky Huang /* PLLs */ 19*2f8b5eb5SJacky Huang #define CAPLL 8 20*2f8b5eb5SJacky Huang #define SYSPLL 9 21*2f8b5eb5SJacky Huang #define DDRPLL 10 22*2f8b5eb5SJacky Huang #define APLL 11 23*2f8b5eb5SJacky Huang #define EPLL 12 24*2f8b5eb5SJacky Huang #define VPLL 13 25*2f8b5eb5SJacky Huang /* EPLL divider */ 26*2f8b5eb5SJacky Huang #define EPLL_DIV2 14 27*2f8b5eb5SJacky Huang #define EPLL_DIV4 15 28*2f8b5eb5SJacky Huang #define EPLL_DIV8 16 29*2f8b5eb5SJacky Huang /* CPU clock, system clock, AXI, HCLK and PCLK */ 30*2f8b5eb5SJacky Huang #define CA35CLK_MUX 17 31*2f8b5eb5SJacky Huang #define AXICLK_DIV2 18 32*2f8b5eb5SJacky Huang #define AXICLK_DIV4 19 33*2f8b5eb5SJacky Huang #define AXICLK_MUX 20 34*2f8b5eb5SJacky Huang #define SYSCLK0_MUX 21 35*2f8b5eb5SJacky Huang #define SYSCLK1_MUX 22 36*2f8b5eb5SJacky Huang #define SYSCLK1_DIV2 23 37*2f8b5eb5SJacky Huang #define HCLK0 24 38*2f8b5eb5SJacky Huang #define HCLK1 25 39*2f8b5eb5SJacky Huang #define HCLK2 26 40*2f8b5eb5SJacky Huang #define PCLK0 27 41*2f8b5eb5SJacky Huang #define PCLK1 28 42*2f8b5eb5SJacky Huang #define PCLK2 29 43*2f8b5eb5SJacky Huang #define HCLK3 30 44*2f8b5eb5SJacky Huang #define PCLK3 31 45*2f8b5eb5SJacky Huang #define PCLK4 32 46*2f8b5eb5SJacky Huang /* AXI and AHB peripheral clocks */ 47*2f8b5eb5SJacky Huang #define USBPHY0 33 48*2f8b5eb5SJacky Huang #define USBPHY1 34 49*2f8b5eb5SJacky Huang #define DDR0_GATE 35 50*2f8b5eb5SJacky Huang #define DDR6_GATE 36 51*2f8b5eb5SJacky Huang #define CAN0_MUX 37 52*2f8b5eb5SJacky Huang #define CAN0_DIV 38 53*2f8b5eb5SJacky Huang #define CAN0_GATE 39 54*2f8b5eb5SJacky Huang #define CAN1_MUX 40 55*2f8b5eb5SJacky Huang #define CAN1_DIV 41 56*2f8b5eb5SJacky Huang #define CAN1_GATE 42 57*2f8b5eb5SJacky Huang #define CAN2_MUX 43 58*2f8b5eb5SJacky Huang #define CAN2_DIV 44 59*2f8b5eb5SJacky Huang #define CAN2_GATE 45 60*2f8b5eb5SJacky Huang #define CAN3_MUX 46 61*2f8b5eb5SJacky Huang #define CAN3_DIV 47 62*2f8b5eb5SJacky Huang #define CAN3_GATE 48 63*2f8b5eb5SJacky Huang #define SDH0_MUX 49 64*2f8b5eb5SJacky Huang #define SDH0_GATE 50 65*2f8b5eb5SJacky Huang #define SDH1_MUX 51 66*2f8b5eb5SJacky Huang #define SDH1_GATE 52 67*2f8b5eb5SJacky Huang #define NAND_GATE 53 68*2f8b5eb5SJacky Huang #define USBD_GATE 54 69*2f8b5eb5SJacky Huang #define USBH_GATE 55 70*2f8b5eb5SJacky Huang #define HUSBH0_GATE 56 71*2f8b5eb5SJacky Huang #define HUSBH1_GATE 57 72*2f8b5eb5SJacky Huang #define GFX_MUX 58 73*2f8b5eb5SJacky Huang #define GFX_GATE 59 74*2f8b5eb5SJacky Huang #define VC8K_GATE 60 75*2f8b5eb5SJacky Huang #define DCU_MUX 61 76*2f8b5eb5SJacky Huang #define DCU_GATE 62 77*2f8b5eb5SJacky Huang #define DCUP_DIV 63 78*2f8b5eb5SJacky Huang #define EMAC0_GATE 64 79*2f8b5eb5SJacky Huang #define EMAC1_GATE 65 80*2f8b5eb5SJacky Huang #define CCAP0_MUX 66 81*2f8b5eb5SJacky Huang #define CCAP0_DIV 67 82*2f8b5eb5SJacky Huang #define CCAP0_GATE 68 83*2f8b5eb5SJacky Huang #define CCAP1_MUX 69 84*2f8b5eb5SJacky Huang #define CCAP1_DIV 70 85*2f8b5eb5SJacky Huang #define CCAP1_GATE 71 86*2f8b5eb5SJacky Huang #define PDMA0_GATE 72 87*2f8b5eb5SJacky Huang #define PDMA1_GATE 73 88*2f8b5eb5SJacky Huang #define PDMA2_GATE 74 89*2f8b5eb5SJacky Huang #define PDMA3_GATE 75 90*2f8b5eb5SJacky Huang #define WH0_GATE 76 91*2f8b5eb5SJacky Huang #define WH1_GATE 77 92*2f8b5eb5SJacky Huang #define HWS_GATE 78 93*2f8b5eb5SJacky Huang #define EBI_GATE 79 94*2f8b5eb5SJacky Huang #define SRAM0_GATE 80 95*2f8b5eb5SJacky Huang #define SRAM1_GATE 81 96*2f8b5eb5SJacky Huang #define ROM_GATE 82 97*2f8b5eb5SJacky Huang #define TRA_GATE 83 98*2f8b5eb5SJacky Huang #define DBG_MUX 84 99*2f8b5eb5SJacky Huang #define DBG_GATE 85 100*2f8b5eb5SJacky Huang #define CKO_MUX 86 101*2f8b5eb5SJacky Huang #define CKO_DIV 87 102*2f8b5eb5SJacky Huang #define CKO_GATE 88 103*2f8b5eb5SJacky Huang #define GTMR_GATE 89 104*2f8b5eb5SJacky Huang #define GPA_GATE 90 105*2f8b5eb5SJacky Huang #define GPB_GATE 91 106*2f8b5eb5SJacky Huang #define GPC_GATE 92 107*2f8b5eb5SJacky Huang #define GPD_GATE 93 108*2f8b5eb5SJacky Huang #define GPE_GATE 94 109*2f8b5eb5SJacky Huang #define GPF_GATE 95 110*2f8b5eb5SJacky Huang #define GPG_GATE 96 111*2f8b5eb5SJacky Huang #define GPH_GATE 97 112*2f8b5eb5SJacky Huang #define GPI_GATE 98 113*2f8b5eb5SJacky Huang #define GPJ_GATE 99 114*2f8b5eb5SJacky Huang #define GPK_GATE 100 115*2f8b5eb5SJacky Huang #define GPL_GATE 101 116*2f8b5eb5SJacky Huang #define GPM_GATE 102 117*2f8b5eb5SJacky Huang #define GPN_GATE 103 118*2f8b5eb5SJacky Huang /* APB peripheral clocks */ 119*2f8b5eb5SJacky Huang #define TMR0_MUX 104 120*2f8b5eb5SJacky Huang #define TMR0_GATE 105 121*2f8b5eb5SJacky Huang #define TMR1_MUX 106 122*2f8b5eb5SJacky Huang #define TMR1_GATE 107 123*2f8b5eb5SJacky Huang #define TMR2_MUX 108 124*2f8b5eb5SJacky Huang #define TMR2_GATE 109 125*2f8b5eb5SJacky Huang #define TMR3_MUX 110 126*2f8b5eb5SJacky Huang #define TMR3_GATE 111 127*2f8b5eb5SJacky Huang #define TMR4_MUX 112 128*2f8b5eb5SJacky Huang #define TMR4_GATE 113 129*2f8b5eb5SJacky Huang #define TMR5_MUX 114 130*2f8b5eb5SJacky Huang #define TMR5_GATE 115 131*2f8b5eb5SJacky Huang #define TMR6_MUX 116 132*2f8b5eb5SJacky Huang #define TMR6_GATE 117 133*2f8b5eb5SJacky Huang #define TMR7_MUX 118 134*2f8b5eb5SJacky Huang #define TMR7_GATE 119 135*2f8b5eb5SJacky Huang #define TMR8_MUX 120 136*2f8b5eb5SJacky Huang #define TMR8_GATE 121 137*2f8b5eb5SJacky Huang #define TMR9_MUX 122 138*2f8b5eb5SJacky Huang #define TMR9_GATE 123 139*2f8b5eb5SJacky Huang #define TMR10_MUX 124 140*2f8b5eb5SJacky Huang #define TMR10_GATE 125 141*2f8b5eb5SJacky Huang #define TMR11_MUX 126 142*2f8b5eb5SJacky Huang #define TMR11_GATE 127 143*2f8b5eb5SJacky Huang #define UART0_MUX 128 144*2f8b5eb5SJacky Huang #define UART0_DIV 129 145*2f8b5eb5SJacky Huang #define UART0_GATE 130 146*2f8b5eb5SJacky Huang #define UART1_MUX 131 147*2f8b5eb5SJacky Huang #define UART1_DIV 132 148*2f8b5eb5SJacky Huang #define UART1_GATE 133 149*2f8b5eb5SJacky Huang #define UART2_MUX 134 150*2f8b5eb5SJacky Huang #define UART2_DIV 135 151*2f8b5eb5SJacky Huang #define UART2_GATE 136 152*2f8b5eb5SJacky Huang #define UART3_MUX 137 153*2f8b5eb5SJacky Huang #define UART3_DIV 138 154*2f8b5eb5SJacky Huang #define UART3_GATE 139 155*2f8b5eb5SJacky Huang #define UART4_MUX 140 156*2f8b5eb5SJacky Huang #define UART4_DIV 141 157*2f8b5eb5SJacky Huang #define UART4_GATE 142 158*2f8b5eb5SJacky Huang #define UART5_MUX 143 159*2f8b5eb5SJacky Huang #define UART5_DIV 144 160*2f8b5eb5SJacky Huang #define UART5_GATE 145 161*2f8b5eb5SJacky Huang #define UART6_MUX 146 162*2f8b5eb5SJacky Huang #define UART6_DIV 147 163*2f8b5eb5SJacky Huang #define UART6_GATE 148 164*2f8b5eb5SJacky Huang #define UART7_MUX 149 165*2f8b5eb5SJacky Huang #define UART7_DIV 150 166*2f8b5eb5SJacky Huang #define UART7_GATE 151 167*2f8b5eb5SJacky Huang #define UART8_MUX 152 168*2f8b5eb5SJacky Huang #define UART8_DIV 153 169*2f8b5eb5SJacky Huang #define UART8_GATE 154 170*2f8b5eb5SJacky Huang #define UART9_MUX 155 171*2f8b5eb5SJacky Huang #define UART9_DIV 156 172*2f8b5eb5SJacky Huang #define UART9_GATE 157 173*2f8b5eb5SJacky Huang #define UART10_MUX 158 174*2f8b5eb5SJacky Huang #define UART10_DIV 159 175*2f8b5eb5SJacky Huang #define UART10_GATE 160 176*2f8b5eb5SJacky Huang #define UART11_MUX 161 177*2f8b5eb5SJacky Huang #define UART11_DIV 162 178*2f8b5eb5SJacky Huang #define UART11_GATE 163 179*2f8b5eb5SJacky Huang #define UART12_MUX 164 180*2f8b5eb5SJacky Huang #define UART12_DIV 165 181*2f8b5eb5SJacky Huang #define UART12_GATE 166 182*2f8b5eb5SJacky Huang #define UART13_MUX 167 183*2f8b5eb5SJacky Huang #define UART13_DIV 168 184*2f8b5eb5SJacky Huang #define UART13_GATE 169 185*2f8b5eb5SJacky Huang #define UART14_MUX 170 186*2f8b5eb5SJacky Huang #define UART14_DIV 171 187*2f8b5eb5SJacky Huang #define UART14_GATE 172 188*2f8b5eb5SJacky Huang #define UART15_MUX 173 189*2f8b5eb5SJacky Huang #define UART15_DIV 174 190*2f8b5eb5SJacky Huang #define UART15_GATE 175 191*2f8b5eb5SJacky Huang #define UART16_MUX 176 192*2f8b5eb5SJacky Huang #define UART16_DIV 177 193*2f8b5eb5SJacky Huang #define UART16_GATE 178 194*2f8b5eb5SJacky Huang #define RTC_GATE 179 195*2f8b5eb5SJacky Huang #define DDR_GATE 180 196*2f8b5eb5SJacky Huang #define KPI_MUX 181 197*2f8b5eb5SJacky Huang #define KPI_DIV 182 198*2f8b5eb5SJacky Huang #define KPI_GATE 183 199*2f8b5eb5SJacky Huang #define I2C0_GATE 184 200*2f8b5eb5SJacky Huang #define I2C1_GATE 185 201*2f8b5eb5SJacky Huang #define I2C2_GATE 186 202*2f8b5eb5SJacky Huang #define I2C3_GATE 187 203*2f8b5eb5SJacky Huang #define I2C4_GATE 188 204*2f8b5eb5SJacky Huang #define I2C5_GATE 189 205*2f8b5eb5SJacky Huang #define QSPI0_MUX 190 206*2f8b5eb5SJacky Huang #define QSPI0_GATE 191 207*2f8b5eb5SJacky Huang #define QSPI1_MUX 192 208*2f8b5eb5SJacky Huang #define QSPI1_GATE 193 209*2f8b5eb5SJacky Huang #define SMC0_MUX 194 210*2f8b5eb5SJacky Huang #define SMC0_DIV 195 211*2f8b5eb5SJacky Huang #define SMC0_GATE 196 212*2f8b5eb5SJacky Huang #define SMC1_MUX 197 213*2f8b5eb5SJacky Huang #define SMC1_DIV 198 214*2f8b5eb5SJacky Huang #define SMC1_GATE 199 215*2f8b5eb5SJacky Huang #define WDT0_MUX 200 216*2f8b5eb5SJacky Huang #define WDT0_GATE 201 217*2f8b5eb5SJacky Huang #define WDT1_MUX 202 218*2f8b5eb5SJacky Huang #define WDT1_GATE 203 219*2f8b5eb5SJacky Huang #define WDT2_MUX 204 220*2f8b5eb5SJacky Huang #define WDT2_GATE 205 221*2f8b5eb5SJacky Huang #define WWDT0_MUX 206 222*2f8b5eb5SJacky Huang #define WWDT1_MUX 207 223*2f8b5eb5SJacky Huang #define WWDT2_MUX 208 224*2f8b5eb5SJacky Huang #define EPWM0_GATE 209 225*2f8b5eb5SJacky Huang #define EPWM1_GATE 210 226*2f8b5eb5SJacky Huang #define EPWM2_GATE 211 227*2f8b5eb5SJacky Huang #define I2S0_MUX 212 228*2f8b5eb5SJacky Huang #define I2S0_GATE 213 229*2f8b5eb5SJacky Huang #define I2S1_MUX 214 230*2f8b5eb5SJacky Huang #define I2S1_GATE 215 231*2f8b5eb5SJacky Huang #define SSMCC_GATE 216 232*2f8b5eb5SJacky Huang #define SSPCC_GATE 217 233*2f8b5eb5SJacky Huang #define SPI0_MUX 218 234*2f8b5eb5SJacky Huang #define SPI0_GATE 219 235*2f8b5eb5SJacky Huang #define SPI1_MUX 220 236*2f8b5eb5SJacky Huang #define SPI1_GATE 221 237*2f8b5eb5SJacky Huang #define SPI2_MUX 222 238*2f8b5eb5SJacky Huang #define SPI2_GATE 223 239*2f8b5eb5SJacky Huang #define SPI3_MUX 224 240*2f8b5eb5SJacky Huang #define SPI3_GATE 225 241*2f8b5eb5SJacky Huang #define ECAP0_GATE 226 242*2f8b5eb5SJacky Huang #define ECAP1_GATE 227 243*2f8b5eb5SJacky Huang #define ECAP2_GATE 228 244*2f8b5eb5SJacky Huang #define QEI0_GATE 229 245*2f8b5eb5SJacky Huang #define QEI1_GATE 230 246*2f8b5eb5SJacky Huang #define QEI2_GATE 231 247*2f8b5eb5SJacky Huang #define ADC_DIV 232 248*2f8b5eb5SJacky Huang #define ADC_GATE 233 249*2f8b5eb5SJacky Huang #define EADC_DIV 234 250*2f8b5eb5SJacky Huang #define EADC_GATE 235 251*2f8b5eb5SJacky Huang #define CLK_MAX_IDX 236 252*2f8b5eb5SJacky Huang 253*2f8b5eb5SJacky Huang #endif /* __DT_BINDINGS_CLOCK_NUVOTON_MA35D1_CLK_H */ 254