diff --git a/arch/arm/dts/imx8_nmhw23.dts b/arch/arm/dts/imx8_nmhw23.dts index 289776a20f..6bb18e891d 100644 --- a/arch/arm/dts/imx8_nmhw23.dts +++ b/arch/arm/dts/imx8_nmhw23.dts @@ -86,6 +86,13 @@ >; }; + pinctrl_i2c3: i2c3_grp { + fsl,pins = < + SC_P_CSI_EN_ADMA_I2C3_SCL 0x00000060 + SC_P_CSI_RESET_ADMA_I2C3_SDA 0x00000060 + >; + }; + pinctrl_lpuart0: lpuart0_grp { fsl,pins = < SC_P_UART0_RX_ADMA_UART0_RX 0x06000020 @@ -197,6 +204,20 @@ }; }; +&i2c3 { + #address-cells = <1>; + #size-cells = <0>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c3>; + status = "okay"; + + eeprom@50 { + compatible = "atmel,24c64"; + reg = <0x50>; + u-boot,i2c-offset-len = <2>; + }; +}; + &gpio0 { status = "okay"; }; diff --git a/configs/imx8_nmhw23_defconfig b/configs/imx8_nmhw23_defconfig index e951747105..7987509909 100644 --- a/configs/imx8_nmhw23_defconfig +++ b/configs/imx8_nmhw23_defconfig @@ -17,11 +17,25 @@ CONFIG_CMD_CACHE=y CONFIG_DM_SERIAL=y CONFIG_FSL_LPUART=y CONFIG_OF_CONTROL=y + CONFIG_DM_I2C=y +CONFIG_DM_I2C_COMPAT=y CONFIG_SYS_I2C_IMX_LPI2C=y CONFIG_CMD_I2C=y CONFIG_I2C_MUX=y CONFIG_I2C_MUX_PCA954x=y +CONFIG_I2C_SET_DEFAULT_BUS_NUM=y +CONFIG_I2C_DEFAULT_BUS_NUMBER=3 +CONFIG_I2C_EEPROM=y +CONFIG_CMD_EEPROM=y +CONFIG_SYS_I2C_EEPROM_BUS=3 +CONFIG_SYS_I2C_EEPROM_ADDR=0x50 +CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2 +CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW=0 +CONFIG_SYS_EEPROM_SIZE=8192 +CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=5 +CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=5 + CONFIG_USB_XHCI_HCD=y CONFIG_USB_XHCI_IMX8=y diff --git a/include/configs/imx8_nmhw23.h b/include/configs/imx8_nmhw23.h index f840e2369f..be349d6648 100644 --- a/include/configs/imx8_nmhw23.h +++ b/include/configs/imx8_nmhw23.h @@ -271,6 +271,11 @@ /* Serial */ #define CONFIG_BAUDRATE 115200 +/* EEPROM */ +#define CONFIG_ID_EEPROM +#define CONFIG_SYS_I2C_EEPROM_NXID +#define CONFIG_SYS_EEPROM_BUS_NUM 3 + /* Monitor Command Prompt */ #define CONFIG_HUSH_PARSER #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "