From e44657ed744d1b4e216d8dda5d528ff0d0a6234e Mon Sep 17 00:00:00 2001 From: Christian Gmeiner Date: Fri, 3 Mar 2023 20:16:28 +0100 Subject: [PATCH] arm: mach-k3: introduce generic board detction kconfig option For non TI boards it is not possible to enable the do_board_detect() call as TI_I2C_BOARD_DETECT is defined in board/ti/common/Kconfig. I want to use do_board_detect() to dectect boards and properties based on some SPI communication with a FPGA. Signed-off-by: Christian Gmeiner Reviewed-by: Tom Rini --- arch/arm/mach-k3/Kconfig | 5 +++++ arch/arm/mach-k3/am642_init.c | 2 +- arch/arm/mach-k3/am654_init.c | 3 +-- arch/arm/mach-k3/j721e_init.c | 5 ++--- board/ti/common/Kconfig | 1 + 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/arch/arm/mach-k3/Kconfig b/arch/arm/mach-k3/Kconfig index a8c3a59..7edbac2 100644 --- a/arch/arm/mach-k3/Kconfig +++ b/arch/arm/mach-k3/Kconfig @@ -187,6 +187,11 @@ config K3_X509_SWRV help SWRV for X509 certificate used for boot images +config K3_BOARD_DETECT + bool "Support for Board detection" + help + Support for board detection. + source "board/ti/am65x/Kconfig" source "board/ti/am64x/Kconfig" source "board/ti/am62x/Kconfig" diff --git a/arch/arm/mach-k3/am642_init.c b/arch/arm/mach-k3/am642_init.c index 96f292e..1bf7e16 100644 --- a/arch/arm/mach-k3/am642_init.c +++ b/arch/arm/mach-k3/am642_init.c @@ -100,7 +100,7 @@ void do_dt_magic(void) { int ret, rescan; - if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) + if (IS_ENABLED(CONFIG_K3_BOARD_DETECT)) do_board_detect(); /* diff --git a/arch/arm/mach-k3/am654_init.c b/arch/arm/mach-k3/am654_init.c index 768fdd6..70059ed 100644 --- a/arch/arm/mach-k3/am654_init.c +++ b/arch/arm/mach-k3/am654_init.c @@ -245,8 +245,7 @@ void board_init_f(ulong dummy) /* Output System Firmware version info */ k3_sysfw_print_ver(); - /* Perform EEPROM-based board detection */ - if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) + if (IS_ENABLED(CONFIG_K3_BOARD_DETECT)) do_board_detect(); #if defined(CONFIG_CPU_V7R) && defined(CONFIG_K3_AVS0) diff --git a/arch/arm/mach-k3/j721e_init.c b/arch/arm/mach-k3/j721e_init.c index 276cbb5..9cae3ac 100644 --- a/arch/arm/mach-k3/j721e_init.c +++ b/arch/arm/mach-k3/j721e_init.c @@ -140,7 +140,7 @@ void do_dt_magic(void) int ret, rescan, mmc_dev = -1; static struct mmc *mmc; - if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) + if (IS_ENABLED(CONFIG_K3_BOARD_DETECT)) do_board_detect(); /* @@ -267,8 +267,7 @@ void board_init_f(ulong dummy) /* Output System Firmware version info */ k3_sysfw_print_ver(); - /* Perform EEPROM-based board detection */ - if (IS_ENABLED(CONFIG_TI_I2C_BOARD_DETECT)) + if (IS_ENABLED(CONFIG_K3_BOARD_DETECT)) do_board_detect(); #if defined(CONFIG_CPU_V7R) && defined(CONFIG_K3_AVS0) diff --git a/board/ti/common/Kconfig b/board/ti/common/Kconfig index 49edd98..f03357c 100644 --- a/board/ti/common/Kconfig +++ b/board/ti/common/Kconfig @@ -1,5 +1,6 @@ config TI_I2C_BOARD_DETECT bool "Support for Board detection for TI platforms" + select K3_BOARD_DETECT if ARCH_K3 help Support for detection board information on Texas Instrument's Evaluation Boards which have I2C based EEPROM detection -- 2.7.4