diff --git a/include/configs/a3m071.h b/include/configs/a3m071.h
index d23d2c4cc5dafd9ebb61f981e056c4d5339fd786..f8cea62b5962fc76b65fd20fe318602a9f9af41b 100644
--- a/include/configs/a3m071.h
+++ b/include/configs/a3m071.h
@@ -60,7 +60,6 @@
 #define CONFIG_BOOTP_SERVERIP
 #define CONFIG_NET_RETRY_COUNT 3
 #define CONFIG_CMD_LINK_LOCAL
-#define CONFIG_LIB_RAND
 #define CONFIG_NETCONSOLE
 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
 #define CONFIG_CMD_PING
diff --git a/include/configs/bct-brettl2.h b/include/configs/bct-brettl2.h
index 0d9fe57ba95652195219a220c2138873aeab94b1..36637aef95e9d78cc6a01a6ef392af50ced5b103 100644
--- a/include/configs/bct-brettl2.h
+++ b/include/configs/bct-brettl2.h
@@ -73,7 +73,6 @@
 #define CONFIG_GATEWAYIP	192.168.233.1
 #define CONFIG_SERVERIP		192.168.233.53
 #define CONFIG_ROOTPATH		"/romfs/brettl2"
-#define CONFIG_LIB_RAND
 #endif
 
 
diff --git a/include/configs/bf518f-ezbrd.h b/include/configs/bf518f-ezbrd.h
index dcd19e4db8a94fe940d4af5f7e33b4e8ba0471a6..0df463f5b6562b5e32149fe6536e5736c7649935 100644
--- a/include/configs/bf518f-ezbrd.h
+++ b/include/configs/bf518f-ezbrd.h
@@ -87,7 +87,6 @@
 #endif
 #define CONFIG_HOSTNAME		bf518f-ezbrd
 #define CONFIG_PHY_ADDR		3
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/bf526-ezbrd.h b/include/configs/bf526-ezbrd.h
index ad5fa53160043b74a68e8f3d194405fbe03eb132..83f57cdcf954aa29e4be417c6104bed2b915f6d8 100644
--- a/include/configs/bf526-ezbrd.h
+++ b/include/configs/bf526-ezbrd.h
@@ -85,7 +85,6 @@
 #define CONFIG_NETCONSOLE	1
 #endif
 #define CONFIG_HOSTNAME		bf526-ezbrd
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/bf527-ezkit.h b/include/configs/bf527-ezkit.h
index b23a250e0aee9d43c58e02e738d20e28c66c506b..32ac961b67386cc45366b651e106791d46986ff7 100644
--- a/include/configs/bf527-ezkit.h
+++ b/include/configs/bf527-ezkit.h
@@ -83,7 +83,6 @@
 #define CONFIG_NETCONSOLE	1
 #endif
 #define CONFIG_HOSTNAME		bf527-ezkit
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/bf537-minotaur.h b/include/configs/bf537-minotaur.h
index 9c7c969e2dcc89686ba870406a9794f75b2e8c44..53b7ab51b8e5a1fcee8a5c90b6afbc93c63dc30c 100644
--- a/include/configs/bf537-minotaur.h
+++ b/include/configs/bf537-minotaur.h
@@ -87,7 +87,6 @@
 #define CONFIG_SYS_AUTOLOAD	"no"
 #define CONFIG_ROOTPATH		"/romfs"
 
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/bf537-pnav.h b/include/configs/bf537-pnav.h
index be11a85bc0067945177fb6af8be09cef59349748..850c5164dacd3a05122a734a577c3028c13bdea8 100644
--- a/include/configs/bf537-pnav.h
+++ b/include/configs/bf537-pnav.h
@@ -65,7 +65,6 @@
 #define CONFIG_RMII
 #endif
 #define CONFIG_HOSTNAME		bf537-pnav
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/bf537-srv1.h b/include/configs/bf537-srv1.h
index 8c9e54d12c3c69f4ad5ec154e03b8e35c0d86c7d..2da5d293028694a2e2c6f2deb81da03c2c795d88 100644
--- a/include/configs/bf537-srv1.h
+++ b/include/configs/bf537-srv1.h
@@ -86,7 +86,6 @@
 
 #define CONFIG_SYS_AUTOLOAD	"no"
 #define CONFIG_ROOTPATH		"/romfs"
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/bf537-stamp.h b/include/configs/bf537-stamp.h
index 41f1b1f071c7847ca4b8c8eee4ec16da68576acd..84ef4ed4c2878d8b7f07e89bd23511009055203d 100644
--- a/include/configs/bf537-stamp.h
+++ b/include/configs/bf537-stamp.h
@@ -65,7 +65,6 @@
 #define CONFIG_NETCONSOLE	1
 #endif
 #define CONFIG_HOSTNAME		bf537-stamp
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/bfin_adi_common.h b/include/configs/bfin_adi_common.h
index b475b169fe2708cacca24936efc531c52dc9a988..1c9d58457843bccaaa7548b32ed72631d912260a 100644
--- a/include/configs/bfin_adi_common.h
+++ b/include/configs/bfin_adi_common.h
@@ -17,7 +17,6 @@
 #  define CONFIG_BOOTP_DNS
 #  define CONFIG_BOOTP_NTPSERVER
 #  define CONFIG_BOOTP_RANDOM_DELAY
-#  define CONFIG_LIB_RAND
 #  define CONFIG_KEEP_SERVERADDR
 #  define CONFIG_CMD_DNS
 #  define CONFIG_CMD_PING
diff --git a/include/configs/cm-bf527.h b/include/configs/cm-bf527.h
index 387f1cb767438a47fbb4a0b5af65154a41605966..e9e4e1414a942ab9d81cc9138f81c0c339193b94 100644
--- a/include/configs/cm-bf527.h
+++ b/include/configs/cm-bf527.h
@@ -83,7 +83,6 @@
 #define CONFIG_NETCONSOLE	1
 #endif
 #define CONFIG_HOSTNAME		cm-bf527
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/cm-bf537e.h b/include/configs/cm-bf537e.h
index 95afd512171f0c5b12fcc7c5952c1c76a0f8d46b..0eebe56503138cf0657097102a6c54026ece005f 100644
--- a/include/configs/cm-bf537e.h
+++ b/include/configs/cm-bf537e.h
@@ -71,7 +71,6 @@
 #define CONFIG_NETCONSOLE	1
 #endif
 #define CONFIG_HOSTNAME		cm-bf537e
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/cm-bf537u.h b/include/configs/cm-bf537u.h
index 4df4a05c7ddaeb00393b2443d2147bafb83e9a68..3a2d72626c726c51973786d22051b380ddc4f444 100644
--- a/include/configs/cm-bf537u.h
+++ b/include/configs/cm-bf537u.h
@@ -69,7 +69,6 @@
 #define CONFIG_NETCONSOLE	1
 #endif
 #define CONFIG_HOSTNAME		cm-bf537u
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/dnp5370.h b/include/configs/dnp5370.h
index 69a26869ab3b09d317aaeba3f799443be2774b1e..3cbd67f6b02ad96576a264f3e2373a5f2bd6d389 100644
--- a/include/configs/dnp5370.h
+++ b/include/configs/dnp5370.h
@@ -56,7 +56,6 @@
 #define CONFIG_CMD_MII
 #define CONFIG_CMD_PING
 
-#define CONFIG_LIB_RAND
 #endif
 
 /*
diff --git a/include/configs/ip04.h b/include/configs/ip04.h
index 2bd81fc5cf2b1f4bf5e9e8b892f1cda63329ca47..73bbcb6b69cf5921cecb2603d2fae5faeba899bb 100644
--- a/include/configs/ip04.h
+++ b/include/configs/ip04.h
@@ -77,7 +77,6 @@
 #define DM9000_IO		CONFIG_DM9000_BASE
 #define DM9000_DATA		(CONFIG_DM9000_BASE + 2)
 
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/lsxl.h b/include/configs/lsxl.h
index 490f84eb7528eb582268952e7755a0bec9855a08..7d22173943b3509555d14f2fbfffdccba19b6770 100644
--- a/include/configs/lsxl.h
+++ b/include/configs/lsxl.h
@@ -37,7 +37,6 @@
 #define CONFIG_MISC_INIT_R
 #define CONFIG_SHOW_BOOT_PROGRESS
 
-#define CONFIG_LIB_RAND
 #define CONFIG_KIRKWOOD_GPIO
 #define CONFIG_OF_LIBFDT
 
diff --git a/include/configs/tcm-bf518.h b/include/configs/tcm-bf518.h
index e726b29da561c2be88ea340812b75e8337b6650d..1e74535b5c9e13548b491e6777f2b18822a6e767 100644
--- a/include/configs/tcm-bf518.h
+++ b/include/configs/tcm-bf518.h
@@ -66,7 +66,6 @@
 #define CONFIG_NETCONSOLE	1
 #endif
 #define CONFIG_HOSTNAME		tcm-bf518
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/include/configs/tcm-bf537.h b/include/configs/tcm-bf537.h
index 33265801a6bbbe98c84f6019f00a046f60cb7969..a8947c5934917933f9673333cc8c3de73571ea84 100644
--- a/include/configs/tcm-bf537.h
+++ b/include/configs/tcm-bf537.h
@@ -71,7 +71,6 @@
 #define CONFIG_NETCONSOLE	1
 #endif
 #define CONFIG_HOSTNAME		tcm-bf537
-#define CONFIG_LIB_RAND
 
 /*
  * Flash Settings
diff --git a/lib/Kconfig b/lib/Kconfig
index 5b6cf3d68df15f7e70d7ae0c5eb9b86d633316d4..3c8de869b1f63fa42390abd4463e65505a5a18f4 100644
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -44,6 +44,9 @@ config REGEX
 	  regex support to some commands, for example "env grep" and
 	  "setexpr".
 
+config LIB_RAND
+	bool
+
 source lib/rsa/Kconfig
 
 menu "Hashing Support"
diff --git a/net/Kconfig b/net/Kconfig
index 524b7e4da23b838033521cdee470864c117f572d..9a9846e187449c5dcda44e7c84de6b12add05640 100644
--- a/net/Kconfig
+++ b/net/Kconfig
@@ -10,6 +10,7 @@ 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.