#ifndef _USER_BK3231SF_H_ #define _USER_BK3231SF_H_ #include "t_define.h" /******************************** * reg base addr ********************************/ #define ADDR_ROM_START 0x00000000ul #define ADDR_RAM_START 0x00400000ul #define REG_ICU_BASE 0x00800000ul #define REG_BK24_BASE 0x00810000ul #define REG_FLASH_BASE 0x00820000ul #define REG_AHB2APB_BASE 0x00F00000ul #define REG_WDT_BASE 0x00F00000ul #define REG_PWM_BASE 0x00F00100ul #define REG_SPI_BASE 0x00F00200ul #define REG_UART_BASE 0x00F00300ul #define REG_I2C_BASE 0x00F00400ul #define REG_GPIO_BASE 0x00F00500ul #define REG_RTC_BASE 0x00F00600ul #define REG_ADC_BASE 0x00F00700ul #define REG_3DS_BASE 0x00F00800ul #define REG_I2C1_BASE 0x00F00900ul #define REG_TIMER_BASE 0x00F00A00ul #define REG_XVER_BASE 0x00F10000ul #define REG_CEVA_BASE 0x00F20000ul /******************************** * ICU - reg bitoffset bitmask ********************************/ #define REG_ICU_MCU_CLKSRC_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x00ul))) #define REG_ICU_CORE_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x04ul))) #define REG_ICU_ADC_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x08ul))) #define REG_ICU_UART_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x0cul))) #define REG_ICU_I2C_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x10ul))) #define REG_ICU_SPI_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x14ul))) #define REG_ICU_CEVA_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x18ul))) #define REG_ICU_WD_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x1cul))) #define REG_ICU_BK24_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x20ul))) #define REG_ICU_LPO_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x24ul))) #define REG_ICU_RTC_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x28ul))) #define REG_ICU_PWM0_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x2Cul))) #define REG_ICU_PWM1_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x30ul))) #define REG_ICU_PWM2_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x34ul))) #define REG_ICU_PWM3_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x38ul))) #define REG_ICU_PWM4_CLK_CFG (*((volatile uint32 *) (REG_ICU_BASE + 0x3Cul))) #define REG_ICU_PPH_INT_EN (*((volatile uint32 *) (REG_ICU_BASE + 0x40ul))) #define REG_ICU_FIQ_IRQ_EN (*((volatile uint32 *) (REG_ICU_BASE + 0x44ul))) #define REG_ICU_PPH_INT_STA (*((volatile uint32 *) (REG_ICU_BASE + 0x48ul))) //#define REG_ICU_PERI_2ND_EN (*((volatile uint32 *) (REG_ICU_BASE + 0x4cul))) //#define REG_ICU_ANALOG_MODE (*((volatile uint32 *) (REG_ICU_BASE + 0x50ul))) //#define REG_ICU_ANALOG0_PWD (*((volatile uint32 *) (REG_ICU_BASE + 0x54ul))) //#define REG_ICU_ANALOG1_PWD (*((volatile uint32 *) (REG_ICU_BASE + 0x58ul))) //#define REG_ICU_DIGITAL_PWD (*((volatile uint32 *) (REG_ICU_BASE + 0x5cul))) #define REG_ICU_GPIO0T3_DEEP_WAKEUP_EN (*((volatile uint32 *) (REG_ICU_BASE + 0x60ul))) #define REG_ICU_GPIO4_DEEP_WAKEUP_EN (*((volatile uint32 *) (REG_ICU_BASE + 0x64ul))) //#define REG_ICU_RC32K_CONFG (*((volatile uint32 *) (REG_ICU_BASE + 0x68ul))) //#define REG_ICU_SLEEP_TIME (*((volatile uint32 *) (REG_ICU_BASE + 0x6Cul))) //#define REG_ICU_BOOST_READY_DLY (*((volatile uint32 *) (REG_ICU_BASE + 0x70ul))) //#define REG_ICU_RSTNREG_LATCH (*((volatile uint32 *) (REG_ICU_BASE + 0x74ul))) //#define REG_ICU_EXT_TIMER_CTRL (*((volatile uint32 *) (REG_ICU_BASE + 0x78ul))) #define REG_ICU_PPH_INT_FIQ_PRIORITY_EN (*((volatile uint32 *) (REG_ICU_BASE + 0x7Cul))) //#define REG_ICU_DCO16M_PWD (*((volatile uint32 *) (REG_ICU_BASE + 0x80ul))) //#define REG_ICU_OTP_PWD (*((volatile uint32 *) (REG_ICU_BASE + 0x84ul))) //#define REG_ICU_OTP_CSTM_CFG0 (*((volatile uint32 *) (REG_ICU_BASE + 0x88ul))) //#define REG_ICU_OTP_CSTM_CFG1 (*((volatile uint32 *) (REG_ICU_BASE + 0x8Cul))) //#define REG_ICU_OTP_CSTM_CFG2 (*((volatile uint32 *) (REG_ICU_BASE + 0x90ul))) //#define REG_ICU_OTP_CSTM_CFG3 (*((volatile uint32 *) (REG_ICU_BASE + 0x94ul))) //#define REG_ICU_JTAG_MODE (*((volatile uint32 *) (REG_ICU_BASE + 0x98ul))) #define BO_ICU_MCU_CLKSRC_SEL 0 #define BM_ICU_MCU_CLKSRC_SEL (0x03ul<