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