1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * (C) Copyright 2001-2015
4  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5  * Joe Hershberger, National Instruments
6  */
7 
8 #ifndef __ETH_INTERNAL_H
9 #define __ETH_INTERNAL_H
10 
11 /* Do init that is common to driver model and legacy networking */
12 void eth_common_init(void);
13 
14 /**
15  * eth_env_set_enetaddr_by_index() - set the MAC address environment variable
16  *
17  * This sets up an environment variable with the given MAC address (@enetaddr).
18  * The environment variable to be set is defined by <@base_name><@index>addr.
19  * If @index is 0 it is omitted. For common Ethernet this means ethaddr,
20  * eth1addr, etc.
21  *
22  * @base_name:	Base name for variable, typically "eth"
23  * @index:	Index of interface being updated (>=0)
24  * @enetaddr:	Pointer to MAC address to put into the variable
25  * @return 0 if OK, other value on error
26  */
27 int eth_env_set_enetaddr_by_index(const char *base_name, int index,
28 				 uchar *enetaddr);
29 
30 int eth_mac_skip(int index);
31 void eth_current_changed(void);
32 #ifdef CONFIG_DM_ETH
33 void eth_set_dev(struct udevice *dev);
34 #else
35 void eth_set_dev(struct eth_device *dev);
36 #endif
37 void eth_set_current_to_next(void);
38 
39 #endif
40