spl: Rework and tighten some dependencies
- In a few places, add missing "depends on" that can be implied from the
option name (i.e. SPL_DM_xxx depends on SPL_DM).
- Make less use of "if SPL_xxx ... endif" clauses as most of the time
this reads better as depends on. In the case of UBI however, move it
all to a sub-menu.
- Rework SPL_NO_CPU_SUPPORT as it's very specific to the
non-SPL_FRAMEWORK implementation used on those platforms, and a
tangent to how CONFIG_SPL_START_S_PATH was used.
Signed-off-by: Tom Rini <trini@konsulko.com>
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 9952a9b..2ad2351 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -750,6 +750,7 @@
config SPL_DM_MAILBOX
bool "Support Mailbox"
+ depends on SPL_DM
help
Enable support for Mailbox within SPL. This enable the inter
processor communication protocols tobe used within SPL. Enable
@@ -874,19 +875,9 @@
Enable support for loading payloads from UBI. See
README.ubispl for more info.
-if SPL_DM
-config SPL_DM_SPI
- bool "Support SPI DM drivers in SPL"
- help
- Enable support for SPI DM drivers in SPL.
+menu "UBI configuration for SPL"
+ depends on SPL_UBI
-config SPL_DM_SPI_FLASH
- bool "Support SPI DM FLASH drivers in SPL"
- help
- Enable support for SPI DM flash drivers in SPL.
-
-endif
-if SPL_UBI
config SPL_UBI_LOAD_BY_VOLNAME
bool "Support loading volumes by name"
help
@@ -896,58 +887,49 @@
config SPL_UBI_MAX_VOL_LEBS
int "Maximum number of LEBs per volume"
- depends on SPL_UBI
help
The maximum number of logical eraseblocks which a static volume
to load can contain. Used for sizing the scan data structure.
config SPL_UBI_MAX_PEB_SIZE
int "Maximum PEB size"
- depends on SPL_UBI
help
The maximum physical erase block size.
config SPL_UBI_MAX_PEBS
int "Maximum number of PEBs"
- depends on SPL_UBI
help
The maximum physical erase block size. If not overridden by
board code, this value will be used as the actual number of PEBs.
config SPL_UBI_PEB_OFFSET
int "Offset to first UBI PEB"
- depends on SPL_UBI
help
The offset in number of PEBs from the start of flash to the first
PEB part of the UBI image.
config SPL_UBI_VID_OFFSET
int "Offset to VID header"
- depends on SPL_UBI
config SPL_UBI_LEB_START
int "Offset to LEB in PEB"
- depends on SPL_UBI
help
The offset in bytes to the LEB within a PEB.
config SPL_UBI_INFO_ADDR
hex "Address to place UBI scan info"
- depends on SPL_UBI
help
Address for ubispl to place the scan info. Read README.ubispl to
determine the required size
config SPL_UBI_VOL_IDS
int "Maximum volume id"
- depends on SPL_UBI
help
The maximum volume id which can be loaded. Used for sizing the
scan data structure.
config SPL_UBI_LOAD_MONITOR_ID
int "id of U-Boot volume"
- depends on SPL_UBI
help
The UBI volume id from which to load U-Boot
@@ -959,13 +941,13 @@
config SPL_UBI_LOAD_KERNEL_ID
int "id of kernel volume"
- depends on SPL_OS_BOOT && SPL_UBI
+ depends on SPL_OS_BOOT
help
The UBI volume id from which to load the kernel
config SPL_UBI_LOAD_ARGS_ID
int "id of kernel args volume"
- depends on SPL_OS_BOOT && SPL_UBI
+ depends on SPL_OS_BOOT
help
The UBI volume id from which to load the device tree
@@ -975,7 +957,19 @@
Disable messages from UBI SPL. This leaves warnings
and errors enabled.
-endif # if SPL_UBI
+endmenu
+
+config SPL_DM_SPI
+ bool "Support SPI DM drivers in SPL"
+ depends on SPL_DM
+ help
+ Enable support for SPI DM drivers in SPL.
+
+config SPL_DM_SPI_FLASH
+ bool "Support SPI DM FLASH drivers in SPL"
+ depends on SPL_DM
+ help
+ Enable support for SPI DM flash drivers in SPL.
config SPL_NET
bool "Support networking"
@@ -986,19 +980,19 @@
the network stack uses a number of environment variables. See also
SPL_ETH.
-if SPL_NET
config SPL_NET_VCI_STRING
string "BOOTP Vendor Class Identifier string sent by SPL"
+ depends on SPL_NET
help
As defined by RFC 2132 the vendor class identifier field can be
sent by the client to identify the vendor type and configuration
of a client. This is often used in practice to allow for the DHCP
server to specify different files to load depending on if the ROM,
SPL or U-Boot itself makes the request
-endif # if SPL_NET
config SPL_NO_CPU_SUPPORT
- bool "Drop CPU code in SPL"
+ def_bool y
+ depends on (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
help
This is specific to the ARM926EJ-S CPU. It disables the standard
start.S start-up code, presumably so that a replacement can be
@@ -1048,16 +1042,13 @@
hex "Address in memory to load the OS file for Falcon mode to"
depends on SPL_OS_BOOT && SPL_NAND_SUPPORT
-if SPL_OS_BOOT
config SYS_OS_BASE
hex "addr, where OS is found"
- depends on SPL_NOR_SUPPORT
+ depends on SPL_OS_BOOT && SPL_NOR_SUPPORT
help
Specify the address, where the OS image is found, which
gets booted.
-endif # SPL_OS_BOOT
-
config SPL_FALCON_BOOT_MMCSD
bool "Enable Falcon boot from MMC or SD media"
depends on SPL_OS_BOOT && SPL_MMC
@@ -1125,6 +1116,7 @@
config SPL_DM_RESET
bool "Support reset drivers"
+ depends on SPL_DM
help
Enable support for reset control in SPL.
That can be useful in SPL to handle IP reset in driver, as in U-Boot,
@@ -1427,6 +1419,7 @@
config SPL_AM33XX_ENABLE_RTC32K_OSC
bool "Enable the RTC32K OSC on AM33xx based platforms"
+ depends on AM33XX
default y if AM33XX
help
Enable access to the AM33xx RTC and select the external 32kHz clock