arm: mach-k3: am6_init: Use CONFIG_TI_I2C_BOARD_DETECT
authorChristian Gmeiner <christian.gmeiner@gmail.com>
Tue, 15 Feb 2022 06:47:55 +0000 (07:47 +0100)
committerTom Rini <trini@konsulko.com>
Fri, 4 Mar 2022 20:20:06 +0000 (15:20 -0500)
We only want to call do_board_detect() if CONFIG_TI_I2C_BOARD_DETECT
is set. Same as done for am64.

This makes it possible to add a custom am65 based board design to
U-Boot that does not use this board detection mechanism.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
arch/arm/mach-k3/am6_init.c
board/ti/am65x/evm.c

index ffb7aad..8a6b1de 100644 (file)
@@ -251,7 +251,8 @@ void board_init_f(ulong dummy)
        k3_sysfw_print_ver();
 
        /* Perform EEPROM-based board detection */
-       do_board_detect();
+       if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT))
+               do_board_detect();
 
 #if defined(CONFIG_CPU_V7R) && defined(CONFIG_K3_AVS0)
        ret = uclass_get_device_by_driver(UCLASS_MISC, DM_DRIVER_GET(k3_avs),
index fbe33cb..7182a8c 100644 (file)
@@ -129,6 +129,7 @@ int ft_board_setup(void *blob, struct bd_info *bd)
 }
 #endif
 
+#ifdef CONFIG_TI_I2C_BOARD_DETECT
 int do_board_detect(void)
 {
        int ret;
@@ -353,23 +354,26 @@ static int probe_daughtercards(void)
 
        return 0;
 }
+#endif
 
 int board_late_init(void)
 {
-       struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
+       if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) {
+               struct ti_am6_eeprom *ep = TI_AM6_EEPROM_DATA;
 
-       setup_board_eeprom_env();
+               setup_board_eeprom_env();
 
-       /*
-        * The first MAC address for ethernet a.k.a. ethernet0 comes from
-        * efuse populated via the am654 gigabit eth switch subsystem driver.
-        * All the other ones are populated via EEPROM, hence continue with
-        * an index of 1.
-        */
-       board_ti_am6_set_ethaddr(1, ep->mac_addr_cnt);
+               /*
+                * The first MAC address for ethernet a.k.a. ethernet0 comes from
+                * efuse populated via the am654 gigabit eth switch subsystem driver.
+                * All the other ones are populated via EEPROM, hence continue with
+                * an index of 1.
+                */
+               board_ti_am6_set_ethaddr(1, ep->mac_addr_cnt);
 
-       /* Check for and probe any plugged-in daughtercards */
-       probe_daughtercards();
+               /* Check for and probe any plugged-in daughtercards */
+               probe_daughtercards();
+       }
 
        return 0;
 }