From 9925f1dbc38c0ef7220c6fca5968c708b8e48764 Mon Sep 17 00:00:00 2001 From: Alex Kiernan Date: Sun, 1 Apr 2018 09:22:38 +0000 Subject: net: Move enetaddr env access code to env config instead of net config In order that we can use eth_env_* even when CONFIG_NET isn't set, move these functions to environment code from net code. This fixes failures such as: board/ti/am335x/built-in.o: In function `board_late_init': board/ti/am335x/board.c:752: undefined reference to `eth_env_set_enetaddr' u-boot/board/ti/am335x/board.c:766: undefined reference to `eth_env_set_enetaddr' which caters for use cases such as: commit f411b5cca48f ("board: am335x: Always set eth/eth1addr environment variable") when Ethernet is required in Linux, but not U-Boot. Signed-off-by: Alex Kiernan --- net/eth_common.c | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) (limited to 'net') diff --git a/net/eth_common.c b/net/eth_common.c index 66d0d22966..0af91a9642 100644 --- a/net/eth_common.c +++ b/net/eth_common.c @@ -8,40 +8,11 @@ #include #include +#include #include #include #include "eth_internal.h" -void eth_parse_enetaddr(const char *addr, uchar *enetaddr) -{ - char *end; - int i; - - for (i = 0; i < 6; ++i) { - enetaddr[i] = addr ? simple_strtoul(addr, &end, 16) : 0; - if (addr) - addr = (*end) ? end + 1 : end; - } -} - -int eth_env_get_enetaddr(const char *name, uchar *enetaddr) -{ - eth_parse_enetaddr(env_get(name), enetaddr); - return is_valid_ethaddr(enetaddr); -} - -int eth_env_set_enetaddr(const char *name, const uchar *enetaddr) -{ - char buf[ARP_HLEN_ASCII + 1]; - - if (eth_env_get_enetaddr(name, (uchar *)buf)) - return -EEXIST; - - sprintf(buf, "%pM", enetaddr); - - return env_set(name, buf); -} - int eth_env_get_enetaddr_by_index(const char *base_name, int index, uchar *enetaddr) { -- cgit v1.2.1