diff --git a/arch/arm/soc/arm/mps2/soc_devices.h b/arch/arm/soc/arm/mps2/soc_devices.h index 5afa2b6171a..e87e0698986 100644 --- a/arch/arm/soc/arm/mps2/soc_devices.h +++ b/arch/arm/soc/arm/mps2/soc_devices.h @@ -58,6 +58,13 @@ #define CMSDK_APB_DUALTIMER_IRQ IRQ_DUAL_TIMER #endif /* CONFIG_COUNTER */ +#if defined(CONFIG_I2C_SBCON) +#define I2C_SBCON_0_BASE_ADDR I2C_TOUCH_BASE_ADDR +#define I2C_SBCON_1_BASE_ADDR I2C_AUDIO_CONF_BASE_ADDR +#define I2C_SBCON_2_BASE_ADDR I2C_SHIELD0_BASE_ADDR +#define I2C_SBCON_3_BASE_ADDR I2C_SHIELD1_BASE_ADDR +#endif + #ifndef _ASMLANGUAGE #include "soc_registers.h" diff --git a/arch/arm/soc/arm/mps2/soc_memory_map.h b/arch/arm/soc/arm/mps2/soc_memory_map.h index 4fd95234dad..a80ea8c19c6 100644 --- a/arch/arm/soc/arm/mps2/soc_memory_map.h +++ b/arch/arm/soc/arm/mps2/soc_memory_map.h @@ -35,6 +35,10 @@ #define UART_4_BASE_ADDR (MPS2_APB_BASE_ADDR + 0x9000) /* MPS2 peripherals in FPGA APB subsystem */ -#define FPGAIO_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x8000) +#define I2C_TOUCH_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x2000) +#define I2C_AUDIO_CONF_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x3000) +#define FPGAIO_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x8000) +#define I2C_SHIELD0_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0x9000) +#define I2C_SHIELD1_BASE_ADDR (MPS2_FPGA_APB_BASE_ADDR + 0xa000) #endif /* _SOC_MEMORY_MAP_H_ */ diff --git a/boards/arm/mps2_an385/Kconfig.defconfig b/boards/arm/mps2_an385/Kconfig.defconfig index 1ada42a1389..f8cf08b0d39 100644 --- a/boards/arm/mps2_an385/Kconfig.defconfig +++ b/boards/arm/mps2_an385/Kconfig.defconfig @@ -105,4 +105,35 @@ endif # TIMER_DTMR_CMSDK_APB endif # COUNTER +if I2C + +config I2C_SBCON + def_bool y + +config I2C_SBCON_0 + def_bool y + +config I2C_SBCON_0_NAME + default I2C_TOUCH + +config I2C_SBCON_1 + def_bool y + +config I2C_SBCON_1_NAME + default I2C_AUDIO_CONF + +config I2C_SBCON_2 + def_bool y + +config I2C_SBCON_2_NAME + default I2C_SHIELD0 + +config I2C_SBCON_3 + def_bool y + +config I2C_SBCON_3_NAME + default I2C_SHIELD1 + +endif # I2C + endif diff --git a/boards/arm/mps2_an385/mps2_an385_defconfig b/boards/arm/mps2_an385/mps2_an385_defconfig index 2a1485df4a8..427e50246df 100644 --- a/boards/arm/mps2_an385/mps2_an385_defconfig +++ b/boards/arm/mps2_an385/mps2_an385_defconfig @@ -28,3 +28,5 @@ CONFIG_UART_CONSOLE_ON_DEV_NAME="UART_0" # Watchdog CONFIG_WATCHDOG=y + +CONFIG_I2C=y \ No newline at end of file