summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2016-06-20 23:16:28 +0200
committerTom Rini <trini@konsulko.com>2016-06-20 21:30:13 -0400
commit9f823615af919c6b89f0b80197f009f78299dcde (patch)
tree1e952c22f008b9d9bcf69a9c236247dbcab6f5d5
parent4257f5f8f631147803cdc6693b5046deb1a57be6 (diff)
downloadtalos-obmc-uboot-9f823615af919c6b89f0b80197f009f78299dcde.tar.gz
talos-obmc-uboot-9f823615af919c6b89f0b80197f009f78299dcde.zip
Kconfig: Add a new DISTRO_DEFAULTS Kconfig option
DISTRO_DEFAULTS is intended to mirror / replace include/config_distro_defaults.h. The intend is for boards which include this file to select this from their Kconfig files and when moving setting to Kconfig which are #define-ed in config_distro_defaults.h to select this from DISTRO_DEFAULTS so that boards which have selected DISTRO_DEFAULTS will keep the same configuration as before without needing any defconfig file changes. The initial list of selected things matches all settings recently removed from config_distro_defaults.h because they have been converted to Kconfig, with the exception of CMD_ELF and CMD_NET, which have a default of y, if the default of these ever changes they should be selected by DISTRO_DEFAULTS too. For testing and example purposes this commit also converts ARCH_SUNXI to use DISTRO_DEFAULT instead of selecting everything it needs itself. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-rw-r--r--Kconfig17
-rw-r--r--arch/arm/Kconfig9
-rw-r--r--doc/README.distro6
3 files changed, 23 insertions, 9 deletions
diff --git a/Kconfig b/Kconfig
index 817f4f08a0..3ceff25032 100644
--- a/Kconfig
+++ b/Kconfig
@@ -53,6 +53,23 @@ config CC_OPTIMIZE_FOR_SIZE
This option is enabled by default for U-Boot.
+config DISTRO_DEFAULTS
+ bool "Select defaults suitable for booting general purpose Linux distributions"
+ default y if ARCH_SUNXI
+ default n
+ select CMD_BOOTZ
+ select CMD_DHCP
+ select CMD_EXT2
+ select CMD_EXT4
+ select CMD_FAT
+ select CMD_FS_GENERIC
+ select CMD_MII
+ select CMD_PING
+ select HUSH_PARSER
+ help
+ Select this to enable various options and commands which are suitable
+ for building u-boot for booting general purpose Linux distributions.
+
config SYS_MALLOC_F
bool "Enable malloc() pool before relocation"
default y if DM
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index f48be96928..e9d2fc9845 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -610,16 +610,8 @@ config TARGET_CM_T43
config ARCH_SUNXI
bool "Support sunxi (Allwinner) SoCs"
- select CMD_BOOTZ
- select CMD_DHCP
- select CMD_EXT2
- select CMD_EXT4
- select CMD_FAT
- select CMD_FS_GENERIC
select CMD_GPIO
- select CMD_MII
select CMD_MMC if MMC
- select CMD_PING
select CMD_USB
select DM
select DM_ETH
@@ -627,7 +619,6 @@ config ARCH_SUNXI
select DM_KEYBOARD
select DM_SERIAL
select DM_USB
- select HUSH_PARSER
select OF_BOARD_SETUP
select OF_CONTROL
select OF_SEPARATE
diff --git a/doc/README.distro b/doc/README.distro
index e1b7216152..77d5c6d4d5 100644
--- a/doc/README.distro
+++ b/doc/README.distro
@@ -162,6 +162,12 @@ U-Boot Implementation
Enabling the distro options
---------------------------
+In your board's defconfig, enable the DISTRO_DEFAULTS option by adding
+a line with "CONFIG_DISTRO_DEFAULTS=y". If you want to enable this
+from Kconfig itself, for e.g. all boards using a specific SoC then
+add a "default y if ARCH_FOO" to the DISTRO_DEFAULTS section of
+the Kconfig file in the root of the u-boot sources.
+
In your board configuration file, include the following:
------------------------------------------------------------
OpenPOWER on IntegriCloud