blob: e7191b428af20a0934752c296782d3a5722c66a7 [file] [log] [blame]
/* SPDX-License-Identifier: GPL-2.0-or-later OR BSD-3-Clause */
/*
* Copyright (C) 2022, STMicroelectronics - All Rights Reserved
*
* Configuration settings for the STM32MP13x CPU
*/
#ifndef STM32MP13_RCC_H
#define STM32MP13_RCC_H
/* RCC registers */
#define RCC_SECCFGR 0x0
#define RCC_MP_SREQSETR 0x100
#define RCC_MP_SREQCLRR 0x104
#define RCC_MP_APRSTCR 0x108
#define RCC_MP_APRSTSR 0x10c
#define RCC_PWRLPDLYCR 0x110
#define RCC_MP_GRSTCSETR 0x114
#define RCC_BR_RSTSCLRR 0x118
#define RCC_MP_RSTSSETR 0x11c
#define RCC_MP_RSTSCLRR 0x120
#define RCC_MP_IWDGFZSETR 0x124
#define RCC_MP_IWDGFZCLRR 0x128
#define RCC_MP_CIER 0x200
#define RCC_MP_CIFR 0x204
#define RCC_BDCR 0x400
#define RCC_RDLSICR 0x404
#define RCC_OCENSETR 0x420
#define RCC_OCENCLRR 0x424
#define RCC_OCRDYR 0x428
#define RCC_HSICFGR 0x440
#define RCC_CSICFGR 0x444
#define RCC_MCO1CFGR 0x460
#define RCC_MCO2CFGR 0x464
#define RCC_DBGCFGR 0x468
#define RCC_RCK12SELR 0x480
#define RCC_RCK3SELR 0x484
#define RCC_RCK4SELR 0x488
#define RCC_PLL1CR 0x4a0
#define RCC_PLL1CFGR1 0x4a4
#define RCC_PLL1CFGR2 0x4a8
#define RCC_PLL1FRACR 0x4ac
#define RCC_PLL1CSGR 0x4b0
#define RCC_PLL2CR 0x4d0
#define RCC_PLL2CFGR1 0x4d4
#define RCC_PLL2CFGR2 0x4d8
#define RCC_PLL2FRACR 0x4dc
#define RCC_PLL2CSGR 0x4e0
#define RCC_PLL3CR 0x500
#define RCC_PLL3CFGR1 0x504
#define RCC_PLL3CFGR2 0x508
#define RCC_PLL3FRACR 0x50c
#define RCC_PLL3CSGR 0x510
#define RCC_PLL4CR 0x520
#define RCC_PLL4CFGR1 0x524
#define RCC_PLL4CFGR2 0x528
#define RCC_PLL4FRACR 0x52c
#define RCC_PLL4CSGR 0x530
#define RCC_MPCKSELR 0x540
#define RCC_ASSCKSELR 0x544
#define RCC_MSSCKSELR 0x548
#define RCC_CPERCKSELR 0x54c
#define RCC_RTCDIVR 0x560
#define RCC_MPCKDIVR 0x564
#define RCC_AXIDIVR 0x568
#define RCC_MLAHBDIVR 0x56c
#define RCC_APB1DIVR 0x570
#define RCC_APB2DIVR 0x574
#define RCC_APB3DIVR 0x578
#define RCC_APB4DIVR 0x57c
#define RCC_APB5DIVR 0x580
#define RCC_APB6DIVR 0x584
#define RCC_TIMG1PRER 0x5a0
#define RCC_TIMG2PRER 0x5a4
#define RCC_TIMG3PRER 0x5a8
#define RCC_DDRITFCR 0x5c0
#define RCC_I2C12CKSELR 0x600
#define RCC_I2C345CKSELR 0x604
#define RCC_SPI2S1CKSELR 0x608
#define RCC_SPI2S23CKSELR 0x60c
#define RCC_SPI45CKSELR 0x610
#define RCC_UART12CKSELR 0x614
#define RCC_UART35CKSELR 0x618
#define RCC_UART4CKSELR 0x61c
#define RCC_UART6CKSELR 0x620
#define RCC_UART78CKSELR 0x624
#define RCC_LPTIM1CKSELR 0x628
#define RCC_LPTIM23CKSELR 0x62c
#define RCC_LPTIM45CKSELR 0x630
#define RCC_SAI1CKSELR 0x634
#define RCC_SAI2CKSELR 0x638
#define RCC_FDCANCKSELR 0x63c
#define RCC_SPDIFCKSELR 0x640
#define RCC_ADC12CKSELR 0x644
#define RCC_SDMMC12CKSELR 0x648
#define RCC_ETH12CKSELR 0x64c
#define RCC_USBCKSELR 0x650
#define RCC_QSPICKSELR 0x654
#define RCC_FMCCKSELR 0x658
#define RCC_RNG1CKSELR 0x65c
#define RCC_STGENCKSELR 0x660
#define RCC_DCMIPPCKSELR 0x664
#define RCC_SAESCKSELR 0x668
#define RCC_APB1RSTSETR 0x6a0
#define RCC_APB1RSTCLRR 0x6a4
#define RCC_APB2RSTSETR 0x6a8
#define RCC_APB2RSTCLRR 0x6ac
#define RCC_APB3RSTSETR 0x6b0
#define RCC_APB3RSTCLRR 0x6b4
#define RCC_APB4RSTSETR 0x6b8
#define RCC_APB4RSTCLRR 0x6bc
#define RCC_APB5RSTSETR 0x6c0
#define RCC_APB5RSTCLRR 0x6c4
#define RCC_APB6RSTSETR 0x6c8
#define RCC_APB6RSTCLRR 0x6cc
#define RCC_AHB2RSTSETR 0x6d0
#define RCC_AHB2RSTCLRR 0x6d4
#define RCC_AHB4RSTSETR 0x6e0
#define RCC_AHB4RSTCLRR 0x6e4
#define RCC_AHB5RSTSETR 0x6e8
#define RCC_AHB5RSTCLRR 0x6ec
#define RCC_AHB6RSTSETR 0x6f0
#define RCC_AHB6RSTCLRR 0x6f4
#define RCC_MP_APB1ENSETR 0x700
#define RCC_MP_APB1ENCLRR 0x704
#define RCC_MP_APB2ENSETR 0x708
#define RCC_MP_APB2ENCLRR 0x70c
#define RCC_MP_APB3ENSETR 0x710
#define RCC_MP_APB3ENCLRR 0x714
#define RCC_MP_S_APB3ENSETR 0x718
#define RCC_MP_S_APB3ENCLRR 0x71c
#define RCC_MP_NS_APB3ENSETR 0x720
#define RCC_MP_NS_APB3ENCLRR 0x724
#define RCC_MP_APB4ENSETR 0x728
#define RCC_MP_APB4ENCLRR 0x72c
#define RCC_MP_S_APB4ENSETR 0x730
#define RCC_MP_S_APB4ENCLRR 0x734
#define RCC_MP_NS_APB4ENSETR 0x738
#define RCC_MP_NS_APB4ENCLRR 0x73c
#define RCC_MP_APB5ENSETR 0x740
#define RCC_MP_APB5ENCLRR 0x744
#define RCC_MP_APB6ENSETR 0x748
#define RCC_MP_APB6ENCLRR 0x74c
#define RCC_MP_AHB2ENSETR 0x750
#define RCC_MP_AHB2ENCLRR 0x754
#define RCC_MP_AHB4ENSETR 0x760
#define RCC_MP_AHB4ENCLRR 0x764
#define RCC_MP_S_AHB4ENSETR 0x768
#define RCC_MP_S_AHB4ENCLRR 0x76c
#define RCC_MP_NS_AHB4ENSETR 0x770
#define RCC_MP_NS_AHB4ENCLRR 0x774
#define RCC_MP_AHB5ENSETR 0x778
#define RCC_MP_AHB5ENCLRR 0x77c
#define RCC_MP_AHB6ENSETR 0x780
#define RCC_MP_AHB6ENCLRR 0x784
#define RCC_MP_S_AHB6ENSETR 0x788
#define RCC_MP_S_AHB6ENCLRR 0x78c
#define RCC_MP_NS_AHB6ENSETR 0x790
#define RCC_MP_NS_AHB6ENCLRR 0x794
#define RCC_MP_APB1LPENSETR 0x800
#define RCC_MP_APB1LPENCLRR 0x804
#define RCC_MP_APB2LPENSETR 0x808
#define RCC_MP_APB2LPENCLRR 0x80c
#define RCC_MP_APB3LPENSETR 0x810
#define RCC_MP_APB3LPENCLRR 0x814
#define RCC_MP_S_APB3LPENSETR 0x818
#define RCC_MP_S_APB3LPENCLRR 0x81c
#define RCC_MP_NS_APB3LPENSETR 0x820
#define RCC_MP_NS_APB3LPENCLRR 0x824
#define RCC_MP_APB4LPENSETR 0x828
#define RCC_MP_APB4LPENCLRR 0x82c
#define RCC_MP_S_APB4LPENSETR 0x830
#define RCC_MP_S_APB4LPENCLRR 0x834
#define RCC_MP_NS_APB4LPENSETR 0x838
#define RCC_MP_NS_APB4LPENCLRR 0x83c
#define RCC_MP_APB5LPENSETR 0x840
#define RCC_MP_APB5LPENCLRR 0x844
#define RCC_MP_APB6LPENSETR 0x848
#define RCC_MP_APB6LPENCLRR 0x84c
#define RCC_MP_AHB2LPENSETR 0x850
#define RCC_MP_AHB2LPENCLRR 0x854
#define RCC_MP_AHB4LPENSETR 0x858
#define RCC_MP_AHB4LPENCLRR 0x85c
#define RCC_MP_S_AHB4LPENSETR 0x868
#define RCC_MP_S_AHB4LPENCLRR 0x86c
#define RCC_MP_NS_AHB4LPENSETR 0x870
#define RCC_MP_NS_AHB4LPENCLRR 0x874
#define RCC_MP_AHB5LPENSETR 0x878
#define RCC_MP_AHB5LPENCLRR 0x87c
#define RCC_MP_AHB6LPENSETR 0x880
#define RCC_MP_AHB6LPENCLRR 0x884
#define RCC_MP_S_AHB6LPENSETR 0x888
#define RCC_MP_S_AHB6LPENCLRR 0x88c
#define RCC_MP_NS_AHB6LPENSETR 0x890
#define RCC_MP_NS_AHB6LPENCLRR 0x894
#define RCC_MP_S_AXIMLPENSETR 0x898
#define RCC_MP_S_AXIMLPENCLRR 0x89c
#define RCC_MP_NS_AXIMLPENSETR 0x8a0
#define RCC_MP_NS_AXIMLPENCLRR 0x8a4
#define RCC_MP_MLAHBLPENSETR 0x8a8
#define RCC_MP_MLAHBLPENCLRR 0x8ac
#define RCC_APB3SECSR 0x8c0
#define RCC_APB4SECSR 0x8c4
#define RCC_APB5SECSR 0x8c8
#define RCC_APB6SECSR 0x8cc
#define RCC_AHB2SECSR 0x8d0
#define RCC_AHB4SECSR 0x8d4
#define RCC_AHB5SECSR 0x8d8
#define RCC_AHB6SECSR 0x8dc
#define RCC_VERR 0xff4
#define RCC_IDR 0xff8
#define RCC_SIDR 0xffc
/* RCC_SECCFGR register fields */
#define RCC_SECCFGR_MCO1SECF 22
#define RCC_SECCFGR_MCO2SECF 23
/* RCC_APB3SECSR register fields */
#define RCC_APB3SECSR_LPTIM2SECF 0
#define RCC_APB3SECSR_LPTIM3SECF 1
#define RCC_APB3SECSR_VREFSECF 13
/* RCC_APB4SECSR register fields */
#define RCC_APB4SECSR_DCMIPPSECF 1
#define RCC_APB4SECSR_USBPHYSECF 16
/* RCC_APB5SECSR register fields */
#define RCC_APB5SECSR_RTCSECF 8
#define RCC_APB5SECSR_TZCSECF 11
#define RCC_APB5SECSR_ETZPCSECF 13
#define RCC_APB5SECSR_IWDG1SECF 15
#define RCC_APB5SECSR_BSECSECF 16
#define RCC_APB5SECSR_STGENCSECF 20
#define RCC_APB5SECSR_STGENROSECF 21
/* RCC_APB6SECSR register fields */
#define RCC_APB6SECSR_USART1SECF 0
#define RCC_APB6SECSR_USART2SECF 1
#define RCC_APB6SECSR_SPI4SECF 2
#define RCC_APB6SECSR_SPI5SECF 3
#define RCC_APB6SECSR_I2C3SECF 4
#define RCC_APB6SECSR_I2C4SECF 5
#define RCC_APB6SECSR_I2C5SECF 6
#define RCC_APB6SECSR_TIM12SECF 7
#define RCC_APB6SECSR_TIM13SECF 8
#define RCC_APB6SECSR_TIM14SECF 9
#define RCC_APB6SECSR_TIM15SECF 10
#define RCC_APB6SECSR_TIM16SECF 11
#define RCC_APB6SECSR_TIM17SECF 12
/* RCC_AHB2SECSR register fields */
#define RCC_AHB2SECSR_DMA3SECF 3
#define RCC_AHB2SECSR_DMAMUX2SECF 4
#define RCC_AHB2SECSR_ADC1SECF 5
#define RCC_AHB2SECSR_ADC2SECF 6
#define RCC_AHB2SECSR_USBOSECF 8
/* RCC_AHB4SECSR register fields */
#define RCC_AHB4SECSR_TSCSECF 15
/* RCC_AHB5SECSR register fields */
#define RCC_AHB5SECSR_PKASECF 2
#define RCC_AHB5SECSR_SAESSECF 3
#define RCC_AHB5SECSR_CRYP1SECF 4
#define RCC_AHB5SECSR_HASH1SECF 5
#define RCC_AHB5SECSR_RNG1SECF 6
#define RCC_AHB5SECSR_BKPSRAMSECF 8
/* RCC_AHB6SECSR register fields */
#define RCC_AHB6SECSR_MCESECF 1
#define RCC_AHB6SECSR_FMCSECF 12
#define RCC_AHB6SECSR_QSPISECF 14
#define RCC_AHB6SECSR_SDMMC1SECF 16
#define RCC_AHB6SECSR_SDMMC2SECF 17
#define RCC_AHB6SECSR_ETH1CKSECF 7
#define RCC_AHB6SECSR_ETH1TXSECF 8
#define RCC_AHB6SECSR_ETH1RXSECF 9
#define RCC_AHB6SECSR_ETH1MACSECF 10
#define RCC_AHB6SECSR_ETH1STPSECF 11
#define RCC_AHB6SECSR_ETH2CKSECF 27
#define RCC_AHB6SECSR_ETH2TXSECF 28
#define RCC_AHB6SECSR_ETH2RXSECF 29
#define RCC_AHB6SECSR_ETH2MACSECF 30
#define RCC_AHB6SECSR_ETH2STPSECF 31
#endif /* STM32MP13_RCC_H */