config: falcon: move CFG_SYS_SPI_* to Kconfig
authorAnshul Dalal <anshuld@ti.com>
Tue, 11 Mar 2025 04:44:12 +0000 (10:14 +0530)
committerTom Rini <trini@konsulko.com>
Sun, 30 Mar 2025 15:15:31 +0000 (09:15 -0600)
CFG_SYS_SPI_* are used in falcon boot to specify the offsets and size of
the respective payloads. This patch moves them to Kconfig keeping the
values consistent for each of the affected boards.

Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Anshul Dalal <anshuld@ti.com>
20 files changed:
common/spl/Kconfig
common/spl/spl_spi.c
configs/am57xx_evm_defconfig
configs/am57xx_hs_evm_defconfig
configs/am57xx_hs_evm_usb_defconfig
configs/display5_defconfig
configs/display5_factory_defconfig
configs/dra7xx_evm_defconfig
configs/dra7xx_hs_evm_defconfig
configs/dra7xx_hs_evm_usb_defconfig
configs/imx28_xea_defconfig
configs/xilinx_zynq_virt_defconfig
configs/xilinx_zynqmp_kria_defconfig
configs/xilinx_zynqmp_virt_defconfig
include/configs/am57xx_evm.h
include/configs/display5.h
include/configs/dra7xx_evm.h
include/configs/xea.h
include/configs/xilinx_zynqmp.h
include/configs/zynq-common.h

index 36dd064..c08045f 100644 (file)
@@ -1449,6 +1449,24 @@ config SYS_SPI_U_BOOT_OFFS
         Address within SPI-Flash from where the u-boot payload is fetched
         from.
 
+config SYS_SPI_KERNEL_OFFS
+       hex "Falcon mode: address of kernel payload in SPI flash"
+       depends on SPL_SPI_FLASH_SUPPORT && SPL_OS_BOOT
+       help
+        Address within SPI-Flash from where the kernel payload is fetched
+        in falcon boot.
+
+config SYS_SPI_ARGS_OFFS
+       hex "Falcon mode: address of args payload in SPI flash"
+       depends on SPL_SPI_FLASH_SUPPORT && SPL_OS_BOOT
+       help
+        Address within SPI-Flash from where the args payload (usually the
+        dtb) is fetched in falcon boot.
+
+config SYS_SPI_ARGS_SIZE
+       hex "Falcon mode: size of args payload in SPI flash"
+       depends on SPL_SPI_FLASH_SUPPORT && SPL_OS_BOOT
+
 config SPL_THERMAL
        bool "Driver support for thermal devices"
        help
index 691a431..00dbd30 100644 (file)
@@ -82,13 +82,14 @@ static int spl_spi_load_image(struct spl_image_info *spl_image,
 #if CONFIG_IS_ENABLED(OS_BOOT)
        if (spl_start_uboot()) {
                int err = spl_load(spl_image, bootdev, &load, 0,
-                                  CFG_SYS_SPI_KERNEL_OFFS);
+                                  CONFIG_SYS_SPI_KERNEL_OFFS);
 
                if (!err)
                        /* Read device tree. */
-                       return spi_flash_read(flash, CFG_SYS_SPI_ARGS_OFFS,
-                                             CFG_SYS_SPI_ARGS_SIZE,
-                                             (void *)CONFIG_SPL_PAYLOAD_ARGS_ADDR);
+                       return spi_flash_read(
+                               flash, CONFIG_SYS_SPI_ARGS_OFFS,
+                               CONFIG_SYS_SPI_ARGS_SIZE,
+                               (void *)CONFIG_SPL_PAYLOAD_ARGS_ADDR);
        }
 #endif
 
index 13260ed..2421208 100644 (file)
@@ -40,6 +40,9 @@ CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
 CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x1E0000
+CONFIG_SYS_SPI_ARGS_OFFS=0x140000
+CONFIG_SYS_SPI_ARGS_SIZE=0x80000
 CONFIG_SPL_YMODEM_SUPPORT=y
 CONFIG_CMD_ADTIMG=y
 CONFIG_CMD_ABOOTIMG=y
index a406e89..2fc5e35 100644 (file)
@@ -38,6 +38,9 @@ CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x1E0000
+CONFIG_SYS_SPI_ARGS_OFFS=0x140000
+CONFIG_SYS_SPI_ARGS_SIZE=0x80000
 CONFIG_SPL_YMODEM_SUPPORT=y
 CONFIG_CMD_ADTIMG=y
 CONFIG_CMD_ABOOTIMG=y
index d865b12..634294e 100644 (file)
@@ -41,6 +41,9 @@ CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x1E0000
+CONFIG_SYS_SPI_ARGS_OFFS=0x140000
+CONFIG_SYS_SPI_ARGS_SIZE=0x80000
 CONFIG_SPL_YMODEM_SUPPORT=y
 CONFIG_CMD_ADTIMG=y
 CONFIG_CMD_ABOOTIMG=y
index 55f9bba..a00a042 100644 (file)
@@ -53,6 +53,9 @@ CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x3F00
 CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x150000
+CONFIG_SYS_SPI_ARGS_OFFS=0x140000
+CONFIG_SYS_SPI_ARGS_SIZE=0x10000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="display5 > "
 CONFIG_SYS_MAXARGS=32
index 4007c89..9965e00 100644 (file)
@@ -48,6 +48,9 @@ CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x3F00
 CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x10
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x20000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x150000
+CONFIG_SYS_SPI_ARGS_OFFS=0x140000
+CONFIG_SYS_SPI_ARGS_SIZE=0x10000
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="display5 factory > "
 CONFIG_SYS_MAXARGS=32
index 2448bef..f9cb732 100644 (file)
@@ -43,6 +43,9 @@ CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x1500
 CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x200
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x1E0000
+CONFIG_SYS_SPI_ARGS_OFFS=0x140000
+CONFIG_SYS_SPI_ARGS_SIZE=0x80000
 CONFIG_CMD_SPL=y
 CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
 CONFIG_CMD_NAND=y
index f6f0045..81da64b 100644 (file)
@@ -40,6 +40,9 @@ CONFIG_SPL_NAND_ECC=y
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x1E0000
+CONFIG_SYS_SPI_ARGS_OFFS=0x140000
+CONFIG_SYS_SPI_ARGS_SIZE=0x80000
 CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
 CONFIG_CMD_NAND=y
 CONFIG_BOOTP_DNS2=y
index 850ccd9..1d099a5 100644 (file)
@@ -39,6 +39,9 @@ CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
 CONFIG_SPL_DM_SPI_FLASH=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x40000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x1E0000
+CONFIG_SYS_SPI_ARGS_OFFS=0x140000
+CONFIG_SYS_SPI_ARGS_SIZE=0x80000
 CONFIG_SPL_YMODEM_SUPPORT=y
 CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
 # CONFIG_CMD_SETEXPR is not set
index d1f6eef..bf80a19 100644 (file)
@@ -63,6 +63,9 @@ CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR=0x400
 CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS=0x40
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x10000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x100000
+CONFIG_SYS_SPI_ARGS_OFFS=0x80000
+CONFIG_SYS_SPI_ARGS_SIZE=0x8000
 CONFIG_SPL_YMODEM_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_MAXARGS=32
index 1578edf..6859e24 100644 (file)
@@ -51,6 +51,9 @@ CONFIG_SPL_OS_BOOT=y
 CONFIG_SPL_PAYLOAD_ARGS_ADDR=0x10000000
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x100000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x280000
+CONFIG_SYS_SPI_ARGS_OFFS=0x200000
+CONFIG_SYS_SPI_ARGS_SIZE=0x80000
 CONFIG_SYS_MAXARGS=32
 # CONFIG_BOOTM_NETBSD is not set
 CONFIG_CMD_IMLS=y
index 6f86873..1f8e8c3 100644 (file)
@@ -58,6 +58,9 @@ CONFIG_SPL_PAYLOAD_ARGS_ADDR=0x8000000
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x80000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x80000
+CONFIG_SYS_SPI_ARGS_OFFS=0xa0000
+CONFIG_SYS_SPI_ARGS_SIZE=0xa0000
 CONFIG_SPL_ATF=y
 CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
 CONFIG_CMD_SMBIOS=y
index 9641998..abd1e1b 100644 (file)
@@ -56,6 +56,9 @@ CONFIG_SPL_PAYLOAD_ARGS_ADDR=0x8000000
 CONFIG_SPL_RAM_DEVICE=y
 CONFIG_SPL_SPI_LOAD=y
 CONFIG_SYS_SPI_U_BOOT_OFFS=0x100000
+CONFIG_SYS_SPI_KERNEL_OFFS=0x80000
+CONFIG_SYS_SPI_ARGS_OFFS=0xa0000
+CONFIG_SYS_SPI_ARGS_SIZE=0xa0000
 CONFIG_SPL_ATF=y
 CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
 CONFIG_CMD_SMBIOS=y
index aa31f3b..266b77f 100644 (file)
 
 /* CPSW Ethernet */
 
-/*
- * Default to using SPI for environment, etc.
- * 0x000000 - 0x040000 : QSPI.SPL (256KiB)
- * 0x040000 - 0x140000 : QSPI.u-boot (1MiB)
- * 0x140000 - 0x1C0000 : QSPI.u-boot-spl-os (512KiB)
- * 0x1C0000 - 0x1D0000 : QSPI.u-boot-env (64KiB)
- * 0x1D0000 - 0x1E0000 : QSPI.u-boot-env.backup1 (64KiB)
- * 0x1E0000 - 0x9E0000 : QSPI.kernel (8MiB)
- * 0x9E0000 - 0x2000000 : USERLAND
- */
-#define CFG_SYS_SPI_KERNEL_OFFS      0x1E0000
-#define CFG_SYS_SPI_ARGS_OFFS        0x140000
-#define CFG_SYS_SPI_ARGS_SIZE        0x80000
-
-/* SPI SPL */
-
 #endif /* __CONFIG_AM57XX_EVM_H */
index 98b1e5a..19d71d6 100644 (file)
  * 0x1F00000 - 0x2000000 : SPI.factory  (1MiB)
  */
 
-/* Below values are "dummy" - only to avoid build break */
-#define CFG_SYS_SPI_KERNEL_OFFS      0x150000
-#define CFG_SYS_SPI_ARGS_OFFS        0x140000
-#define CFG_SYS_SPI_ARGS_SIZE        0x10000
-
 #define CFG_MXC_UART_BASE              UART5_BASE
 
 /* MMC Configs */
index 96dcd73..3c960ca 100644 (file)
 
 #include <configs/ti_omap5_common.h>
 
-/*
- * Default to using SPI for environment, etc.
- * 0x000000 - 0x040000 : QSPI.SPL (256KiB)
- * 0x040000 - 0x140000 : QSPI.u-boot (1MiB)
- * 0x140000 - 0x1C0000 : QSPI.u-boot-spl-os (512KiB)
- * 0x1C0000 - 0x1D0000 : QSPI.u-boot-env (64KiB)
- * 0x1D0000 - 0x1E0000 : QSPI.u-boot-env.backup1 (64KiB)
- * 0x1E0000 - 0x9E0000 : QSPI.kernel (8MiB)
- * 0x9E0000 - 0x2000000 : USERLAND
- */
-#define CFG_SYS_SPI_KERNEL_OFFS        0x1E0000
-#define CFG_SYS_SPI_ARGS_OFFS  0x140000
-#define CFG_SYS_SPI_ARGS_SIZE  0x80000
-
-/* SPI SPL */
-
 /* NAND support */
 #ifdef CONFIG_MTD_RAW_NAND
 /* NAND: device related configs */
index 00d6274..21454d1 100644 (file)
 #ifndef __CONFIGS_XEA_H__
 #define __CONFIGS_XEA_H__
 
-#include <linux/sizes.h>
-
-/* SPL */
-
-#define CFG_SYS_SPI_KERNEL_OFFS        SZ_1M
-#define CFG_SYS_SPI_ARGS_OFFS  SZ_512K
-#define CFG_SYS_SPI_ARGS_SIZE  SZ_32K
-
 /* Memory configuration */
 #define PHYS_SDRAM_1                   0x40000000      /* Base address */
 #define PHYS_SDRAM_1_SIZE              0x10000000      /* Max 256 MB RAM */
index 13941ba..ec78f2e 100644 (file)
        "dfu_bufsiz=0x1000\0"
 #endif
 
-#if defined(CONFIG_SPL_SPI_FLASH_SUPPORT)
-# define CFG_SYS_SPI_KERNEL_OFFS       0x80000
-# define CFG_SYS_SPI_ARGS_OFFS 0xa0000
-# define CFG_SYS_SPI_ARGS_SIZE 0xa0000
-#endif
-
 #ifdef CONFIG_SPL_SYS_MALLOC_SIMPLE
 # error "Disable CONFIG_SPL_SYS_MALLOC_SIMPLE. Full malloc needs to be used"
 #endif
index 37c77aa..93ae589 100644 (file)
 
 /* Not using MMC raw mode - just for compilation purpose */
 
-/* qspi mode is working fine */
-#ifdef CONFIG_ZYNQ_QSPI
-#define CFG_SYS_SPI_ARGS_OFFS  0x200000
-#define CFG_SYS_SPI_ARGS_SIZE  0x80000
-#define CFG_SYS_SPI_KERNEL_OFFS        (CFG_SYS_SPI_ARGS_OFFS + \
-                                       CFG_SYS_SPI_ARGS_SIZE)
-#endif
-
 /* SP location before relocation, must use scratch RAM */
 
 /* 3 * 64kB blocks of OCM - one is on the top because of bootrom */