Browse Source

Convert CONFIG LIB_HW_RAND to Kconfig

config_fallbacks.h had some logic to automatically select
LIB_RAND if RANDOM_UUID or CMD_UUID were set if LIB_HW_RAND wasn't
already selected.  By migrating LIB_HW_RAND to Kconfig, we can
remove this check from config_fallbacks.h and put it into Kconfig

Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
[trini: Turn into a choice, add NET_RANDOM_ETHADDR]
Signed-off-by: Tom Rini <trini@konsulko.com>
Adam Ford 6 years ago
parent
commit
a5a37567c4

+ 1 - 0
configs/ds414_defconfig

@@ -32,6 +32,7 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_JFFS2=y
 CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
+CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_SPL_OF_TRANSLATE=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y

+ 1 - 0
configs/odroid_defconfig

@@ -62,4 +62,5 @@ CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_FUNCTION_THOR=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_SMSC95XX=y
+CONFIG_LIB_HW_RAND=y
 CONFIG_ERRNO_STR=y

+ 1 - 0
configs/trats2_defconfig

@@ -54,3 +54,4 @@ CONFIG_USB_GADGET_PRODUCT_NUM=0x6601
 CONFIG_USB_GADGET_DWC2_OTG=y
 CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_FUNCTION_THOR=y
+CONFIG_LIB_HW_RAND=y

+ 1 - 0
configs/trats_defconfig

@@ -53,3 +53,4 @@ CONFIG_USB_GADGET_PRODUCT_NUM=0x6601
 CONFIG_USB_GADGET_DWC2_OTG=y
 CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_FUNCTION_THOR=y
+CONFIG_LIB_HW_RAND=y

+ 0 - 7
include/config_fallbacks.h

@@ -54,13 +54,6 @@
 #define CONFIG_LIB_UUID
 #endif
 
-#if (defined(CONFIG_RANDOM_UUID) || \
-	defined(CONFIG_CMD_UUID)) && \
-	(!defined(CONFIG_LIB_RAND) && \
-	!defined(CONFIG_LIB_HW_RAND))
-#define CONFIG_LIB_RAND
-#endif
-
 /* Console I/O Buffer Size */
 #ifndef CONFIG_SYS_CBSIZE
 #if defined(CONFIG_CMD_KGDB)

+ 0 - 4
include/configs/ds414.h

@@ -112,10 +112,6 @@
 /* DS414 bus width is 32bits */
 #define CONFIG_DDR_32BIT
 
-/* Use random ethernet address if not configured */
-#define CONFIG_LIB_RAND
-#define CONFIG_NET_RANDOM_ETHADDR
-
 /* Default Environment */
 #define CONFIG_BOOTCOMMAND	"sf read ${loadaddr} 0xd0000 0x700000; bootm"
 #define CONFIG_LOADADDR		0x80000

+ 0 - 1
include/configs/odroid.h

@@ -177,7 +177,6 @@
 
 /* Security subsystem - enable hw_rand() */
 #define CONFIG_EXYNOS_ACE_SHA
-#define CONFIG_LIB_HW_RAND
 
 /* USB */
 #define CONFIG_USB_EHCI_EXYNOS

+ 0 - 1
include/configs/thunderx_88xx.h

@@ -77,7 +77,6 @@
 #define CONFIG_CMDLINE_EDITING		1
 #define CONFIG_SYS_MAXARGS		64		/* max command args */
 #define CONFIG_NO_RELOCATION		1
-#define CONFIG_LIB_RAND
 #define PLL_REF_CLK			50000000	/* 50 MHz */
 #define NS_PER_REF_CLK_TICK		(1000000000/PLL_REF_CLK)
 

+ 0 - 1
include/configs/trats.h

@@ -171,7 +171,6 @@
 
 /* Security subsystem - enable hw_rand() */
 #define CONFIG_EXYNOS_ACE_SHA
-#define CONFIG_LIB_HW_RAND
 
 /* Common misc for Samsung */
 #define CONFIG_MISC_COMMON

+ 0 - 1
include/configs/trats2.h

@@ -153,7 +153,6 @@
 
 /* Security subsystem - enable hw_rand() */
 #define CONFIG_EXYNOS_ACE_SHA
-#define CONFIG_LIB_HW_RAND
 
 /* Common misc for Samsung */
 #define CONFIG_MISC_COMMON

+ 15 - 3
lib/Kconfig

@@ -65,10 +65,22 @@ config REGEX
 	  regex support to some commands, for example "env grep" and
 	  "setexpr".
 
-config LIB_RAND
-	bool "Pseudo-random library support "
+choice
+	prompt "Pseudo-random library support type"
+	depends on NET_RANDOM_ETHADDR || RANDOM_UUID || CMD_UUID
+	default LIB_RAND
 	help
-	  This library provides pseudo-random number generator functions.
+	  Select the library to provide pseudo-random number generator
+	  functions.  LIB_HW_RAND supports certain hardware engines that
+	  provide this functionality.  If in doubt, select LIB_RAND.
+
+config LIB_RAND
+	bool "Pseudo-random library support"
+
+config LIB_HW_RAND
+	bool "HW Engine for random libray support"
+
+endchoice
 
 config SPL_TINY_MEMSET
 	bool "Use a very small memset() in SPL"

+ 0 - 1
net/Kconfig

@@ -9,7 +9,6 @@ if NET
 
 config NET_RANDOM_ETHADDR
 	bool "Random ethaddr if unset"
-	select LIB_RAND
 	help
 	  Selecting this will allow the Ethernet interface to function
 	  even when the ethaddr variable for that interface is unset.

+ 0 - 1
scripts/config_whitelist.txt

@@ -1217,7 +1217,6 @@ CONFIG_LEGACY_BOOTCMD_ENV
 CONFIG_LG4573
 CONFIG_LG4573_BUS
 CONFIG_LG4573_CS
-CONFIG_LIB_HW_RAND
 CONFIG_LIB_UUID
 CONFIG_LINUX
 CONFIG_LINUX_RESET_VEC