1*91f16700Schasinglulu /* SPDX-License-Identifier: GPL-2.0+ or BSD-3-Clause */ 2*91f16700Schasinglulu /* 3*91f16700Schasinglulu * Copyright (C) STMicroelectronics 2018-2022 - All Rights Reserved 4*91f16700Schasinglulu * Author: Gabriel Fernandez <gabriel.fernandez@st.com> for STMicroelectronics. 5*91f16700Schasinglulu */ 6*91f16700Schasinglulu 7*91f16700Schasinglulu #ifndef _DT_BINDINGS_STM32MP1_CLKS_H_ 8*91f16700Schasinglulu #define _DT_BINDINGS_STM32MP1_CLKS_H_ 9*91f16700Schasinglulu 10*91f16700Schasinglulu /* OSCILLATOR clocks */ 11*91f16700Schasinglulu #define CK_HSE 0 12*91f16700Schasinglulu #define CK_CSI 1 13*91f16700Schasinglulu #define CK_LSI 2 14*91f16700Schasinglulu #define CK_LSE 3 15*91f16700Schasinglulu #define CK_HSI 4 16*91f16700Schasinglulu #define CK_HSE_DIV2 5 17*91f16700Schasinglulu 18*91f16700Schasinglulu /* Bus clocks */ 19*91f16700Schasinglulu #define TIM2 6 20*91f16700Schasinglulu #define TIM3 7 21*91f16700Schasinglulu #define TIM4 8 22*91f16700Schasinglulu #define TIM5 9 23*91f16700Schasinglulu #define TIM6 10 24*91f16700Schasinglulu #define TIM7 11 25*91f16700Schasinglulu #define TIM12 12 26*91f16700Schasinglulu #define TIM13 13 27*91f16700Schasinglulu #define TIM14 14 28*91f16700Schasinglulu #define LPTIM1 15 29*91f16700Schasinglulu #define SPI2 16 30*91f16700Schasinglulu #define SPI3 17 31*91f16700Schasinglulu #define USART2 18 32*91f16700Schasinglulu #define USART3 19 33*91f16700Schasinglulu #define UART4 20 34*91f16700Schasinglulu #define UART5 21 35*91f16700Schasinglulu #define UART7 22 36*91f16700Schasinglulu #define UART8 23 37*91f16700Schasinglulu #define I2C1 24 38*91f16700Schasinglulu #define I2C2 25 39*91f16700Schasinglulu #define I2C3 26 40*91f16700Schasinglulu #define I2C5 27 41*91f16700Schasinglulu #define SPDIF 28 42*91f16700Schasinglulu #define CEC 29 43*91f16700Schasinglulu #define DAC12 30 44*91f16700Schasinglulu #define MDIO 31 45*91f16700Schasinglulu #define TIM1 32 46*91f16700Schasinglulu #define TIM8 33 47*91f16700Schasinglulu #define TIM15 34 48*91f16700Schasinglulu #define TIM16 35 49*91f16700Schasinglulu #define TIM17 36 50*91f16700Schasinglulu #define SPI1 37 51*91f16700Schasinglulu #define SPI4 38 52*91f16700Schasinglulu #define SPI5 39 53*91f16700Schasinglulu #define USART6 40 54*91f16700Schasinglulu #define SAI1 41 55*91f16700Schasinglulu #define SAI2 42 56*91f16700Schasinglulu #define SAI3 43 57*91f16700Schasinglulu #define DFSDM 44 58*91f16700Schasinglulu #define FDCAN 45 59*91f16700Schasinglulu #define LPTIM2 46 60*91f16700Schasinglulu #define LPTIM3 47 61*91f16700Schasinglulu #define LPTIM4 48 62*91f16700Schasinglulu #define LPTIM5 49 63*91f16700Schasinglulu #define SAI4 50 64*91f16700Schasinglulu #define SYSCFG 51 65*91f16700Schasinglulu #define VREF 52 66*91f16700Schasinglulu #define TMPSENS 53 67*91f16700Schasinglulu #define PMBCTRL 54 68*91f16700Schasinglulu #define HDP 55 69*91f16700Schasinglulu #define LTDC 56 70*91f16700Schasinglulu #define DSI 57 71*91f16700Schasinglulu #define IWDG2 58 72*91f16700Schasinglulu #define USBPHY 59 73*91f16700Schasinglulu #define STGENRO 60 74*91f16700Schasinglulu #define SPI6 61 75*91f16700Schasinglulu #define I2C4 62 76*91f16700Schasinglulu #define I2C6 63 77*91f16700Schasinglulu #define USART1 64 78*91f16700Schasinglulu #define RTCAPB 65 79*91f16700Schasinglulu #define TZC1 66 80*91f16700Schasinglulu #define TZPC 67 81*91f16700Schasinglulu #define IWDG1 68 82*91f16700Schasinglulu #define BSEC 69 83*91f16700Schasinglulu #define STGEN 70 84*91f16700Schasinglulu #define DMA1 71 85*91f16700Schasinglulu #define DMA2 72 86*91f16700Schasinglulu #define DMAMUX 73 87*91f16700Schasinglulu #define ADC12 74 88*91f16700Schasinglulu #define USBO 75 89*91f16700Schasinglulu #define SDMMC3 76 90*91f16700Schasinglulu #define DCMI 77 91*91f16700Schasinglulu #define CRYP2 78 92*91f16700Schasinglulu #define HASH2 79 93*91f16700Schasinglulu #define RNG2 80 94*91f16700Schasinglulu #define CRC2 81 95*91f16700Schasinglulu #define HSEM 82 96*91f16700Schasinglulu #define IPCC 83 97*91f16700Schasinglulu #define GPIOA 84 98*91f16700Schasinglulu #define GPIOB 85 99*91f16700Schasinglulu #define GPIOC 86 100*91f16700Schasinglulu #define GPIOD 87 101*91f16700Schasinglulu #define GPIOE 88 102*91f16700Schasinglulu #define GPIOF 89 103*91f16700Schasinglulu #define GPIOG 90 104*91f16700Schasinglulu #define GPIOH 91 105*91f16700Schasinglulu #define GPIOI 92 106*91f16700Schasinglulu #define GPIOJ 93 107*91f16700Schasinglulu #define GPIOK 94 108*91f16700Schasinglulu #define GPIOZ 95 109*91f16700Schasinglulu #define CRYP1 96 110*91f16700Schasinglulu #define HASH1 97 111*91f16700Schasinglulu #define RNG1 98 112*91f16700Schasinglulu #define BKPSRAM 99 113*91f16700Schasinglulu #define MDMA 100 114*91f16700Schasinglulu #define GPU 101 115*91f16700Schasinglulu #define ETHCK 102 116*91f16700Schasinglulu #define ETHTX 103 117*91f16700Schasinglulu #define ETHRX 104 118*91f16700Schasinglulu #define ETHMAC 105 119*91f16700Schasinglulu #define FMC 106 120*91f16700Schasinglulu #define QSPI 107 121*91f16700Schasinglulu #define SDMMC1 108 122*91f16700Schasinglulu #define SDMMC2 109 123*91f16700Schasinglulu #define CRC1 110 124*91f16700Schasinglulu #define USBH 111 125*91f16700Schasinglulu #define ETHSTP 112 126*91f16700Schasinglulu #define TZC2 113 127*91f16700Schasinglulu 128*91f16700Schasinglulu /* Kernel clocks */ 129*91f16700Schasinglulu #define SDMMC1_K 118 130*91f16700Schasinglulu #define SDMMC2_K 119 131*91f16700Schasinglulu #define SDMMC3_K 120 132*91f16700Schasinglulu #define FMC_K 121 133*91f16700Schasinglulu #define QSPI_K 122 134*91f16700Schasinglulu #define ETHCK_K 123 135*91f16700Schasinglulu #define RNG1_K 124 136*91f16700Schasinglulu #define RNG2_K 125 137*91f16700Schasinglulu #define GPU_K 126 138*91f16700Schasinglulu #define USBPHY_K 127 139*91f16700Schasinglulu #define STGEN_K 128 140*91f16700Schasinglulu #define SPDIF_K 129 141*91f16700Schasinglulu #define SPI1_K 130 142*91f16700Schasinglulu #define SPI2_K 131 143*91f16700Schasinglulu #define SPI3_K 132 144*91f16700Schasinglulu #define SPI4_K 133 145*91f16700Schasinglulu #define SPI5_K 134 146*91f16700Schasinglulu #define SPI6_K 135 147*91f16700Schasinglulu #define CEC_K 136 148*91f16700Schasinglulu #define I2C1_K 137 149*91f16700Schasinglulu #define I2C2_K 138 150*91f16700Schasinglulu #define I2C3_K 139 151*91f16700Schasinglulu #define I2C4_K 140 152*91f16700Schasinglulu #define I2C5_K 141 153*91f16700Schasinglulu #define I2C6_K 142 154*91f16700Schasinglulu #define LPTIM1_K 143 155*91f16700Schasinglulu #define LPTIM2_K 144 156*91f16700Schasinglulu #define LPTIM3_K 145 157*91f16700Schasinglulu #define LPTIM4_K 146 158*91f16700Schasinglulu #define LPTIM5_K 147 159*91f16700Schasinglulu #define USART1_K 148 160*91f16700Schasinglulu #define USART2_K 149 161*91f16700Schasinglulu #define USART3_K 150 162*91f16700Schasinglulu #define UART4_K 151 163*91f16700Schasinglulu #define UART5_K 152 164*91f16700Schasinglulu #define USART6_K 153 165*91f16700Schasinglulu #define UART7_K 154 166*91f16700Schasinglulu #define UART8_K 155 167*91f16700Schasinglulu #define DFSDM_K 156 168*91f16700Schasinglulu #define FDCAN_K 157 169*91f16700Schasinglulu #define SAI1_K 158 170*91f16700Schasinglulu #define SAI2_K 159 171*91f16700Schasinglulu #define SAI3_K 160 172*91f16700Schasinglulu #define SAI4_K 161 173*91f16700Schasinglulu #define ADC12_K 162 174*91f16700Schasinglulu #define DSI_K 163 175*91f16700Schasinglulu #define DSI_PX 164 176*91f16700Schasinglulu #define ADFSDM_K 165 177*91f16700Schasinglulu #define USBO_K 166 178*91f16700Schasinglulu #define LTDC_PX 167 179*91f16700Schasinglulu #define DAC12_K 168 180*91f16700Schasinglulu #define ETHPTP_K 169 181*91f16700Schasinglulu 182*91f16700Schasinglulu /* PLL */ 183*91f16700Schasinglulu #define PLL1 176 184*91f16700Schasinglulu #define PLL2 177 185*91f16700Schasinglulu #define PLL3 178 186*91f16700Schasinglulu #define PLL4 179 187*91f16700Schasinglulu 188*91f16700Schasinglulu /* ODF */ 189*91f16700Schasinglulu #define PLL1_P 180 190*91f16700Schasinglulu #define PLL1_Q 181 191*91f16700Schasinglulu #define PLL1_R 182 192*91f16700Schasinglulu #define PLL2_P 183 193*91f16700Schasinglulu #define PLL2_Q 184 194*91f16700Schasinglulu #define PLL2_R 185 195*91f16700Schasinglulu #define PLL3_P 186 196*91f16700Schasinglulu #define PLL3_Q 187 197*91f16700Schasinglulu #define PLL3_R 188 198*91f16700Schasinglulu #define PLL4_P 189 199*91f16700Schasinglulu #define PLL4_Q 190 200*91f16700Schasinglulu #define PLL4_R 191 201*91f16700Schasinglulu 202*91f16700Schasinglulu /* AUX */ 203*91f16700Schasinglulu #define RTC 192 204*91f16700Schasinglulu 205*91f16700Schasinglulu /* MCLK */ 206*91f16700Schasinglulu #define CK_PER 193 207*91f16700Schasinglulu #define CK_MPU 194 208*91f16700Schasinglulu #define CK_AXI 195 209*91f16700Schasinglulu #define CK_MCU 196 210*91f16700Schasinglulu 211*91f16700Schasinglulu /* Time base */ 212*91f16700Schasinglulu #define TIM2_K 197 213*91f16700Schasinglulu #define TIM3_K 198 214*91f16700Schasinglulu #define TIM4_K 199 215*91f16700Schasinglulu #define TIM5_K 200 216*91f16700Schasinglulu #define TIM6_K 201 217*91f16700Schasinglulu #define TIM7_K 202 218*91f16700Schasinglulu #define TIM12_K 203 219*91f16700Schasinglulu #define TIM13_K 204 220*91f16700Schasinglulu #define TIM14_K 205 221*91f16700Schasinglulu #define TIM1_K 206 222*91f16700Schasinglulu #define TIM8_K 207 223*91f16700Schasinglulu #define TIM15_K 208 224*91f16700Schasinglulu #define TIM16_K 209 225*91f16700Schasinglulu #define TIM17_K 210 226*91f16700Schasinglulu 227*91f16700Schasinglulu /* MCO clocks */ 228*91f16700Schasinglulu #define CK_MCO1 211 229*91f16700Schasinglulu #define CK_MCO2 212 230*91f16700Schasinglulu 231*91f16700Schasinglulu /* TRACE & DEBUG clocks */ 232*91f16700Schasinglulu #define CK_DBG 214 233*91f16700Schasinglulu #define CK_TRACE 215 234*91f16700Schasinglulu 235*91f16700Schasinglulu /* DDR */ 236*91f16700Schasinglulu #define DDRC1 220 237*91f16700Schasinglulu #define DDRC1LP 221 238*91f16700Schasinglulu #define DDRC2 222 239*91f16700Schasinglulu #define DDRC2LP 223 240*91f16700Schasinglulu #define DDRPHYC 224 241*91f16700Schasinglulu #define DDRPHYCLP 225 242*91f16700Schasinglulu #define DDRCAPB 226 243*91f16700Schasinglulu #define DDRCAPBLP 227 244*91f16700Schasinglulu #define AXIDCG 228 245*91f16700Schasinglulu #define DDRPHYCAPB 229 246*91f16700Schasinglulu #define DDRPHYCAPBLP 230 247*91f16700Schasinglulu #define DDRPERFM 231 248*91f16700Schasinglulu 249*91f16700Schasinglulu #define STM32MP1_LAST_CLK 232 250*91f16700Schasinglulu 251*91f16700Schasinglulu /* SCMI clock identifiers */ 252*91f16700Schasinglulu #define CK_SCMI0_HSE 0 253*91f16700Schasinglulu #define CK_SCMI0_HSI 1 254*91f16700Schasinglulu #define CK_SCMI0_CSI 2 255*91f16700Schasinglulu #define CK_SCMI0_LSE 3 256*91f16700Schasinglulu #define CK_SCMI0_LSI 4 257*91f16700Schasinglulu #define CK_SCMI0_PLL2_Q 5 258*91f16700Schasinglulu #define CK_SCMI0_PLL2_R 6 259*91f16700Schasinglulu #define CK_SCMI0_MPU 7 260*91f16700Schasinglulu #define CK_SCMI0_AXI 8 261*91f16700Schasinglulu #define CK_SCMI0_BSEC 9 262*91f16700Schasinglulu #define CK_SCMI0_CRYP1 10 263*91f16700Schasinglulu #define CK_SCMI0_GPIOZ 11 264*91f16700Schasinglulu #define CK_SCMI0_HASH1 12 265*91f16700Schasinglulu #define CK_SCMI0_I2C4 13 266*91f16700Schasinglulu #define CK_SCMI0_I2C6 14 267*91f16700Schasinglulu #define CK_SCMI0_IWDG1 15 268*91f16700Schasinglulu #define CK_SCMI0_RNG1 16 269*91f16700Schasinglulu #define CK_SCMI0_RTC 17 270*91f16700Schasinglulu #define CK_SCMI0_RTCAPB 18 271*91f16700Schasinglulu #define CK_SCMI0_SPI6 19 272*91f16700Schasinglulu #define CK_SCMI0_USART1 20 273*91f16700Schasinglulu 274*91f16700Schasinglulu #define CK_SCMI1_PLL3_Q 0 275*91f16700Schasinglulu #define CK_SCMI1_PLL3_R 1 276*91f16700Schasinglulu #define CK_SCMI1_MCU 2 277*91f16700Schasinglulu 278*91f16700Schasinglulu #endif /* _DT_BINDINGS_STM32MP1_CLKS_H_ */ 279