All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] board: am62x: Add support for reading eeprom data
@ 2025-10-17  6:24 Guillaume La Roque (TI.com)
  2025-10-21  7:52 ` Mattijs Korpershoek
  0 siblings, 1 reply; 3+ messages in thread
From: Guillaume La Roque (TI.com) @ 2025-10-17  6:24 UTC (permalink / raw)
  To: u-boot
  Cc: Tom Rini, Bryan Brattlof, Garrett Giordano, Wadim Egorov,
	Neha Malcom Francis, Mattijs Korpershoek, Ilias Apalodimas,
	Santhosh Kumar K, Jonathan Humphreys, Sam Protsenko,
	Devarsh Thakkar, Anshul Dalal, Prasanth Babu Mantena,
	Judith Mendez, Marek Vasut, Guillaume La Roque (TI.com)

I2C EEPROM data contains the board name and its revision.
Add support for:
- Reading EEPROM data and store a copy at end of SRAM
- Updating env variable with relevant board info
- Printing board info during boot.

Signed-off-by: Guillaume La Roque (TI.com) <glaroque@baylibre.com>
---
 arch/arm/mach-k3/am62x/Kconfig |  3 ++
 board/ti/am62x/evm.c           | 95 +++++++++++++++++++++++++++++++++++++++++-
 configs/am62x_evm_r5_defconfig |  1 +
 3 files changed, 98 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-k3/am62x/Kconfig b/arch/arm/mach-k3/am62x/Kconfig
index 81199ada3a1..f7ad52db7d8 100644
--- a/arch/arm/mach-k3/am62x/Kconfig
+++ b/arch/arm/mach-k3/am62x/Kconfig
@@ -14,6 +14,8 @@ config TARGET_AM625_A53_EVM
 	select ARM64
 	select BINMAN
 	select OF_SYSTEM_SETUP
+	imply TI_COMMON_CMD_OPTIONS
+	imply TI_I2C_BOARD_DETECT
 
 config TARGET_AM625_R5_EVM
 	bool "TI K3 based AM625 EVM running on R5"
@@ -25,6 +27,7 @@ config TARGET_AM625_R5_EVM
 	select K3_DDRSS
 	select BINMAN
 	imply SYS_K3_SPL_ATF
+	imply TI_I2C_BOARD_DETECT
 
 config TARGET_PHYCORE_AM62X_A53
 	bool "PHYTEC phyCORE-AM62x running on A53"
diff --git a/board/ti/am62x/evm.c b/board/ti/am62x/evm.c
index d7b07a0d34d..fbd45608efa 100644
--- a/board/ti/am62x/evm.c
+++ b/board/ti/am62x/evm.c
@@ -22,8 +22,18 @@
 #include <dm/uclass.h>
 #include <asm/arch/k3-ddr.h>
 
+#include "../common/board_detect.h"
 #include "../common/fdt_ops.h"
 
+#include "../common/k3-ddr.h"
+
+#define board_is_am62x_skevm()  (board_ti_k3_is("AM62-SKEVM") || \
+				 board_ti_k3_is("AM62B-SKEVM"))
+#define board_is_am62b_p1_skevm() board_ti_k3_is("AM62B-SKEVM-P1")
+#define board_is_am62x_lp_skevm()  board_ti_k3_is("AM62-LP-SKEVM")
+#define board_is_am62x_sip_skevm()  board_ti_k3_is("AM62SIP-SKEVM")
+#define board_is_am62x_play()	board_ti_k3_is("BEAGLEPLAY-A0-")
+
 DECLARE_GLOBAL_DATA_PTR;
 
 #if CONFIG_IS_ENABLED(SPLASH_SCREEN)
@@ -74,9 +84,92 @@ struct efi_capsule_update_info update_info = {
 	.images = fw_images,
 };
 
-#ifdef CONFIG_BOARD_LATE_INIT
+#if CONFIG_IS_ENABLED(TI_I2C_BOARD_DETECT)
+int do_board_detect(void)
+{
+	int ret;
+
+	ret = ti_i2c_eeprom_am6_get_base(CONFIG_EEPROM_BUS_ADDRESS,
+					 CONFIG_EEPROM_CHIP_ADDRESS);
+	if (ret) {
+		printf("EEPROM not available at 0x%02x, trying to read at 0x%02x\n",
+		       CONFIG_EEPROM_CHIP_ADDRESS, CONFIG_EEPROM_CHIP_ADDRESS + 1);
+		ret = ti_i2c_eeprom_am6_get_base(CONFIG_EEPROM_BUS_ADDRESS,
+						 CONFIG_EEPROM_CHIP_ADDRESS + 1);
+		if (ret)
+			pr_err("Reading on-board EEPROM at 0x%02x failed %d\n",
+			       CONFIG_EEPROM_CHIP_ADDRESS + 1, ret);
+	}
+
+	return ret;
+}
+
+int checkboard(void)
+{
+	struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
+
+	if (!do_board_detect())
+		printf("Board: %s rev %s\n", ep->name, ep->version);
+
+	return 0;
+}
+
+#if CONFIG_IS_ENABLED(BOARD_LATE_INIT)
+static void setup_board_eeprom_env(void)
+{
+	char *name = "am62x_skevm";
+
+	if (do_board_detect())
+		goto invalid_eeprom;
+
+	if (board_is_am62x_skevm())
+		name = "am62x_skevm";
+	else if (board_is_am62b_p1_skevm())
+		name = "am62b_p1_skevm";
+	else if (board_is_am62x_lp_skevm())
+		name = "am62x_lp_skevm";
+	else if (board_is_am62x_sip_skevm())
+		name = "am62x_sip_skevm";
+	else if (board_is_am62x_play())
+		name = "am62x_beagleplay";
+	else
+		printf("Unidentified board claims %s in eeprom header\n",
+		       board_ti_get_name());
+
+invalid_eeprom:
+	set_board_info_env_am6(name);
+}
+
+static void setup_serial(void)
+{
+	struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
+	unsigned long board_serial;
+	char *endp;
+	char serial_string[17] = { 0 };
+
+	if (env_get("serial#"))
+		return;
+
+	board_serial = simple_strtoul(ep->serial, &endp, 16);
+	if (*endp != '\0') {
+		pr_err("Error: Can't set serial# to %s\n", ep->serial);
+		return;
+	}
+
+	snprintf(serial_string, sizeof(serial_string), "%016lx", board_serial);
+	env_set("serial#", serial_string);
+}
+#endif
+#endif
+
+#if CONFIG_IS_ENABLED(BOARD_LATE_INIT)
 int board_late_init(void)
 {
+	if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) {
+		setup_board_eeprom_env();
+		setup_serial();
+	}
+
 	ti_set_fdt_env(NULL, NULL);
 	return 0;
 }
diff --git a/configs/am62x_evm_r5_defconfig b/configs/am62x_evm_r5_defconfig
index 18ffc991b25..d42bdf1f074 100644
--- a/configs/am62x_evm_r5_defconfig
+++ b/configs/am62x_evm_r5_defconfig
@@ -85,6 +85,7 @@ CONFIG_SPL_CLK_K3_PLL=y
 CONFIG_SPL_CLK_K3=y
 CONFIG_TI_SCI_PROTOCOL=y
 CONFIG_DA8XX_GPIO=y
+CONFIG_DM_I2C=y
 CONFIG_DM_MAILBOX=y
 CONFIG_K3_SEC_PROXY=y
 CONFIG_SPL_MISC=y

---
base-commit: 2ba64e303b2706e5c42a6bf982326d632342ca66
change-id: 20251016-am62xeeprom-41a1920b8bd2

Best regards,
-- 
Guillaume La Roque (TI.com) <glaroque@baylibre.com>


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] board: am62x: Add support for reading eeprom data
  2025-10-17  6:24 [PATCH] board: am62x: Add support for reading eeprom data Guillaume La Roque (TI.com)
@ 2025-10-21  7:52 ` Mattijs Korpershoek
  2025-10-21 11:47   ` Guillaume La Roque
  0 siblings, 1 reply; 3+ messages in thread
From: Mattijs Korpershoek @ 2025-10-21  7:52 UTC (permalink / raw)
  To: Guillaume La Roque (TI.com), u-boot
  Cc: Tom Rini, Bryan Brattlof, Garrett Giordano, Wadim Egorov,
	Neha Malcom Francis, Mattijs Korpershoek, Ilias Apalodimas,
	Santhosh Kumar K, Jonathan Humphreys, Sam Protsenko,
	Devarsh Thakkar, Anshul Dalal, Prasanth Babu Mantena,
	Judith Mendez, Marek Vasut, Guillaume La Roque (TI.com)

Hi Guillaume,

Thank you for the patch.

On Fri, Oct 17, 2025 at 08:24, "Guillaume La Roque (TI.com)" <glaroque@baylibre.com> wrote:

> I2C EEPROM data contains the board name and its revision.
> Add support for:
> - Reading EEPROM data and store a copy at end of SRAM
> - Updating env variable with relevant board info
> - Printing board info during boot.
>
> Signed-off-by: Guillaume La Roque (TI.com) <glaroque@baylibre.com>
> ---
>  arch/arm/mach-k3/am62x/Kconfig |  3 ++
>  board/ti/am62x/evm.c           | 95 +++++++++++++++++++++++++++++++++++++++++-
>  configs/am62x_evm_r5_defconfig |  1 +
>  3 files changed, 98 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/mach-k3/am62x/Kconfig b/arch/arm/mach-k3/am62x/Kconfig
> index 81199ada3a1..f7ad52db7d8 100644
> --- a/arch/arm/mach-k3/am62x/Kconfig
> +++ b/arch/arm/mach-k3/am62x/Kconfig
> @@ -14,6 +14,8 @@ config TARGET_AM625_A53_EVM
>  	select ARM64
>  	select BINMAN
>  	select OF_SYSTEM_SETUP
> +	imply TI_COMMON_CMD_OPTIONS
> +	imply TI_I2C_BOARD_DETECT
>  
>  config TARGET_AM625_R5_EVM
>  	bool "TI K3 based AM625 EVM running on R5"
> @@ -25,6 +27,7 @@ config TARGET_AM625_R5_EVM
>  	select K3_DDRSS
>  	select BINMAN
>  	imply SYS_K3_SPL_ATF
> +	imply TI_I2C_BOARD_DETECT
>  
>  config TARGET_PHYCORE_AM62X_A53
>  	bool "PHYTEC phyCORE-AM62x running on A53"
> diff --git a/board/ti/am62x/evm.c b/board/ti/am62x/evm.c
> index d7b07a0d34d..fbd45608efa 100644
> --- a/board/ti/am62x/evm.c
> +++ b/board/ti/am62x/evm.c
> @@ -22,8 +22,18 @@
>  #include <dm/uclass.h>
>  #include <asm/arch/k3-ddr.h>
>  
> +#include "../common/board_detect.h"
>  #include "../common/fdt_ops.h"
>  
> +#include "../common/k3-ddr.h"
> +
> +#define board_is_am62x_skevm()  (board_ti_k3_is("AM62-SKEVM") || \
> +				 board_ti_k3_is("AM62B-SKEVM"))
> +#define board_is_am62b_p1_skevm() board_ti_k3_is("AM62B-SKEVM-P1")
> +#define board_is_am62x_lp_skevm()  board_ti_k3_is("AM62-LP-SKEVM")
> +#define board_is_am62x_sip_skevm()  board_ti_k3_is("AM62SIP-SKEVM")
> +#define board_is_am62x_play()	board_ti_k3_is("BEAGLEPLAY-A0-")
> +
>  DECLARE_GLOBAL_DATA_PTR;
>  
>  #if CONFIG_IS_ENABLED(SPLASH_SCREEN)
> @@ -74,9 +84,92 @@ struct efi_capsule_update_info update_info = {
>  	.images = fw_images,
>  };
>  
> -#ifdef CONFIG_BOARD_LATE_INIT
> +#if CONFIG_IS_ENABLED(TI_I2C_BOARD_DETECT)
> +int do_board_detect(void)

Can't this be static?

> +{
> +	int ret;
> +
> +	ret = ti_i2c_eeprom_am6_get_base(CONFIG_EEPROM_BUS_ADDRESS,
> +					 CONFIG_EEPROM_CHIP_ADDRESS);
> +	if (ret) {
> +		printf("EEPROM not available at 0x%02x, trying to read at 0x%02x\n",
> +		       CONFIG_EEPROM_CHIP_ADDRESS, CONFIG_EEPROM_CHIP_ADDRESS + 1);
> +		ret = ti_i2c_eeprom_am6_get_base(CONFIG_EEPROM_BUS_ADDRESS,
> +						 CONFIG_EEPROM_CHIP_ADDRESS + 1);
> +		if (ret)
> +			pr_err("Reading on-board EEPROM at 0x%02x failed %d\n",
> +			       CONFIG_EEPROM_CHIP_ADDRESS + 1, ret);
> +	}
> +
> +	return ret;
> +}

This code seems very close to what's already in board/ti/am64x/evm.c
Maybe it's not needed before merging this patch, but should we consider
reducing code duplication and move this to a common place?

> +
> +int checkboard(void)
> +{
> +	struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
> +
> +	if (!do_board_detect())
> +		printf("Board: %s rev %s\n", ep->name, ep->version);
> +
> +	return 0;
> +}
> +
> +#if CONFIG_IS_ENABLED(BOARD_LATE_INIT)
> +static void setup_board_eeprom_env(void)
> +{
> +	char *name = "am62x_skevm";
> +
> +	if (do_board_detect())
> +		goto invalid_eeprom;
> +
> +	if (board_is_am62x_skevm())
> +		name = "am62x_skevm";
> +	else if (board_is_am62b_p1_skevm())
> +		name = "am62b_p1_skevm";
> +	else if (board_is_am62x_lp_skevm())
> +		name = "am62x_lp_skevm";
> +	else if (board_is_am62x_sip_skevm())
> +		name = "am62x_sip_skevm";
> +	else if (board_is_am62x_play())
> +		name = "am62x_beagleplay";
> +	else
> +		printf("Unidentified board claims %s in eeprom header\n",
> +		       board_ti_get_name());
> +
> +invalid_eeprom:
> +	set_board_info_env_am6(name);
> +}
> +
> +static void setup_serial(void)
> +{
> +	struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
> +	unsigned long board_serial;
> +	char *endp;
> +	char serial_string[17] = { 0 };
> +
> +	if (env_get("serial#"))
> +		return;
> +
> +	board_serial = simple_strtoul(ep->serial, &endp, 16);
> +	if (*endp != '\0') {
> +		pr_err("Error: Can't set serial# to %s\n", ep->serial);
> +		return;
> +	}
> +
> +	snprintf(serial_string, sizeof(serial_string), "%016lx", board_serial);
> +	env_set("serial#", serial_string);
> +}
> +#endif
> +#endif
> +
> +#if CONFIG_IS_ENABLED(BOARD_LATE_INIT)
>  int board_late_init(void)
>  {
> +	if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) {
> +		setup_board_eeprom_env();
> +		setup_serial();
> +	}
> +
>  	ti_set_fdt_env(NULL, NULL);
>  	return 0;
>  }
> diff --git a/configs/am62x_evm_r5_defconfig b/configs/am62x_evm_r5_defconfig
> index 18ffc991b25..d42bdf1f074 100644
> --- a/configs/am62x_evm_r5_defconfig
> +++ b/configs/am62x_evm_r5_defconfig
> @@ -85,6 +85,7 @@ CONFIG_SPL_CLK_K3_PLL=y
>  CONFIG_SPL_CLK_K3=y
>  CONFIG_TI_SCI_PROTOCOL=y
>  CONFIG_DA8XX_GPIO=y
> +CONFIG_DM_I2C=y
>  CONFIG_DM_MAILBOX=y
>  CONFIG_K3_SEC_PROXY=y
>  CONFIG_SPL_MISC=y
>
> ---
> base-commit: 2ba64e303b2706e5c42a6bf982326d632342ca66
> change-id: 20251016-am62xeeprom-41a1920b8bd2
>
> Best regards,
> -- 
> Guillaume La Roque (TI.com) <glaroque@baylibre.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] board: am62x: Add support for reading eeprom data
  2025-10-21  7:52 ` Mattijs Korpershoek
@ 2025-10-21 11:47   ` Guillaume La Roque
  0 siblings, 0 replies; 3+ messages in thread
From: Guillaume La Roque @ 2025-10-21 11:47 UTC (permalink / raw)
  To: Mattijs Korpershoek, u-boot
  Cc: Tom Rini, Bryan Brattlof, Garrett Giordano, Wadim Egorov,
	Neha Malcom Francis, Ilias Apalodimas, Santhosh Kumar K,
	Jonathan Humphreys, Sam Protsenko, Devarsh Thakkar, Anshul Dalal,
	Prasanth Babu Mantena, Judith Mendez, Marek Vasut

Le 21/10/2025 à 09:52, Mattijs Korpershoek a écrit :
> Hi Guillaume,
>
> Thank you for the patch.


Hi,


>
> On Fri, Oct 17, 2025 at 08:24, "Guillaume La Roque (TI.com)" <glaroque@baylibre.com> wrote:
>
>> I2C EEPROM data contains the board name and its revision.
>> Add support for:
>> - Reading EEPROM data and store a copy at end of SRAM
>> - Updating env variable with relevant board info
>> - Printing board info during boot.
>>
>> Signed-off-by: Guillaume La Roque (TI.com) <glaroque@baylibre.com>
>> ---
>>   arch/arm/mach-k3/am62x/Kconfig |  3 ++
>>   board/ti/am62x/evm.c           | 95 +++++++++++++++++++++++++++++++++++++++++-
>>   configs/am62x_evm_r5_defconfig |  1 +
>>   3 files changed, 98 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/mach-k3/am62x/Kconfig b/arch/arm/mach-k3/am62x/Kconfig
>> index 81199ada3a1..f7ad52db7d8 100644
>> --- a/arch/arm/mach-k3/am62x/Kconfig
>> +++ b/arch/arm/mach-k3/am62x/Kconfig
>> @@ -14,6 +14,8 @@ config TARGET_AM625_A53_EVM
>>   	select ARM64
>>   	select BINMAN
>>   	select OF_SYSTEM_SETUP
>> +	imply TI_COMMON_CMD_OPTIONS
>> +	imply TI_I2C_BOARD_DETECT
>>   
>>   config TARGET_AM625_R5_EVM
>>   	bool "TI K3 based AM625 EVM running on R5"
>> @@ -25,6 +27,7 @@ config TARGET_AM625_R5_EVM
>>   	select K3_DDRSS
>>   	select BINMAN
>>   	imply SYS_K3_SPL_ATF
>> +	imply TI_I2C_BOARD_DETECT
>>   
>>   config TARGET_PHYCORE_AM62X_A53
>>   	bool "PHYTEC phyCORE-AM62x running on A53"
>> diff --git a/board/ti/am62x/evm.c b/board/ti/am62x/evm.c
>> index d7b07a0d34d..fbd45608efa 100644
>> --- a/board/ti/am62x/evm.c
>> +++ b/board/ti/am62x/evm.c
>> @@ -22,8 +22,18 @@
>>   #include <dm/uclass.h>
>>   #include <asm/arch/k3-ddr.h>
>>   
>> +#include "../common/board_detect.h"
>>   #include "../common/fdt_ops.h"
>>   
>> +#include "../common/k3-ddr.h"
>> +
>> +#define board_is_am62x_skevm()  (board_ti_k3_is("AM62-SKEVM") || \
>> +				 board_ti_k3_is("AM62B-SKEVM"))
>> +#define board_is_am62b_p1_skevm() board_ti_k3_is("AM62B-SKEVM-P1")
>> +#define board_is_am62x_lp_skevm()  board_ti_k3_is("AM62-LP-SKEVM")
>> +#define board_is_am62x_sip_skevm()  board_ti_k3_is("AM62SIP-SKEVM")
>> +#define board_is_am62x_play()	board_ti_k3_is("BEAGLEPLAY-A0-")
>> +
>>   DECLARE_GLOBAL_DATA_PTR;
>>   
>>   #if CONFIG_IS_ENABLED(SPLASH_SCREEN)
>> @@ -74,9 +84,92 @@ struct efi_capsule_update_info update_info = {
>>   	.images = fw_images,
>>   };
>>   
>> -#ifdef CONFIG_BOARD_LATE_INIT
>> +#if CONFIG_IS_ENABLED(TI_I2C_BOARD_DETECT)
>> +int do_board_detect(void)
> Can't this be static?
yes
>> +{
>> +	int ret;
>> +
>> +	ret = ti_i2c_eeprom_am6_get_base(CONFIG_EEPROM_BUS_ADDRESS,
>> +					 CONFIG_EEPROM_CHIP_ADDRESS);
>> +	if (ret) {
>> +		printf("EEPROM not available at 0x%02x, trying to read at 0x%02x\n",
>> +		       CONFIG_EEPROM_CHIP_ADDRESS, CONFIG_EEPROM_CHIP_ADDRESS + 1);
>> +		ret = ti_i2c_eeprom_am6_get_base(CONFIG_EEPROM_BUS_ADDRESS,
>> +						 CONFIG_EEPROM_CHIP_ADDRESS + 1);
>> +		if (ret)
>> +			pr_err("Reading on-board EEPROM at 0x%02x failed %d\n",
>> +			       CONFIG_EEPROM_CHIP_ADDRESS + 1, ret);
>> +	}
>> +
>> +	return ret;
>> +}
> This code seems very close to what's already in board/ti/am64x/evm.c
> Maybe it's not needed before merging this patch, but should we consider
> reducing code duplication and move this to a common place?
it's possible but not sure all am6X board can use same function for 
board_detect and serial , i'll check with TI if yes i will do rework, if 
not do a common function in board/ti/common for only this two boards not 
sure it's relevant.

Guillaume
>> +
>> +int checkboard(void)
>> +{
>> +	struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
>> +
>> +	if (!do_board_detect())
>> +		printf("Board: %s rev %s\n", ep->name, ep->version);
>> +
>> +	return 0;
>> +}
>> +
>> +#if CONFIG_IS_ENABLED(BOARD_LATE_INIT)
>> +static void setup_board_eeprom_env(void)
>> +{
>> +	char *name = "am62x_skevm";
>> +
>> +	if (do_board_detect())
>> +		goto invalid_eeprom;
>> +
>> +	if (board_is_am62x_skevm())
>> +		name = "am62x_skevm";
>> +	else if (board_is_am62b_p1_skevm())
>> +		name = "am62b_p1_skevm";
>> +	else if (board_is_am62x_lp_skevm())
>> +		name = "am62x_lp_skevm";
>> +	else if (board_is_am62x_sip_skevm())
>> +		name = "am62x_sip_skevm";
>> +	else if (board_is_am62x_play())
>> +		name = "am62x_beagleplay";
>> +	else
>> +		printf("Unidentified board claims %s in eeprom header\n",
>> +		       board_ti_get_name());
>> +
>> +invalid_eeprom:
>> +	set_board_info_env_am6(name);
>> +}
>> +
>> +static void setup_serial(void)
>> +{
>> +	struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
>> +	unsigned long board_serial;
>> +	char *endp;
>> +	char serial_string[17] = { 0 };
>> +
>> +	if (env_get("serial#"))
>> +		return;
>> +
>> +	board_serial = simple_strtoul(ep->serial, &endp, 16);
>> +	if (*endp != '\0') {
>> +		pr_err("Error: Can't set serial# to %s\n", ep->serial);
>> +		return;
>> +	}
>> +
>> +	snprintf(serial_string, sizeof(serial_string), "%016lx", board_serial);
>> +	env_set("serial#", serial_string);
>> +}
>> +#endif
>> +#endif
>> +
>> +#if CONFIG_IS_ENABLED(BOARD_LATE_INIT)
>>   int board_late_init(void)
>>   {
>> +	if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) {
>> +		setup_board_eeprom_env();
>> +		setup_serial();
>> +	}
>> +
>>   	ti_set_fdt_env(NULL, NULL);
>>   	return 0;
>>   }
>> diff --git a/configs/am62x_evm_r5_defconfig b/configs/am62x_evm_r5_defconfig
>> index 18ffc991b25..d42bdf1f074 100644
>> --- a/configs/am62x_evm_r5_defconfig
>> +++ b/configs/am62x_evm_r5_defconfig
>> @@ -85,6 +85,7 @@ CONFIG_SPL_CLK_K3_PLL=y
>>   CONFIG_SPL_CLK_K3=y
>>   CONFIG_TI_SCI_PROTOCOL=y
>>   CONFIG_DA8XX_GPIO=y
>> +CONFIG_DM_I2C=y
>>   CONFIG_DM_MAILBOX=y
>>   CONFIG_K3_SEC_PROXY=y
>>   CONFIG_SPL_MISC=y
>>
>> ---
>> base-commit: 2ba64e303b2706e5c42a6bf982326d632342ca66
>> change-id: 20251016-am62xeeprom-41a1920b8bd2
>>
>> Best regards,
>> -- 
>> Guillaume La Roque (TI.com) <glaroque@baylibre.com>



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-10-21 11:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-17  6:24 [PATCH] board: am62x: Add support for reading eeprom data Guillaume La Roque (TI.com)
2025-10-21  7:52 ` Mattijs Korpershoek
2025-10-21 11:47   ` Guillaume La Roque

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.