xref: /openbmc/linux/drivers/net/ethernet/ti/cpsw.h (revision d2574c33)
1 /* Texas Instruments Ethernet Switch Driver
2  *
3  * Copyright (C) 2013 Texas Instruments
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * version 2 as published by the Free Software Foundation.
8  *
9  * This program is distributed "as is" WITHOUT ANY WARRANTY of any
10  * kind, whether express or implied; without even the implied warranty
11  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  */
14 #ifndef __CPSW_H__
15 #define __CPSW_H__
16 
17 #include <linux/if_ether.h>
18 #include <linux/phy.h>
19 
20 #define mac_hi(mac)	(((mac)[0] << 0) | ((mac)[1] << 8) |	\
21 			 ((mac)[2] << 16) | ((mac)[3] << 24))
22 #define mac_lo(mac)	(((mac)[4] << 0) | ((mac)[5] << 8))
23 
24 #if IS_ENABLED(CONFIG_TI_CPSW_PHY_SEL)
25 void cpsw_phy_sel(struct device *dev, phy_interface_t phy_mode, int slave);
26 #else
27 static inline
28 void cpsw_phy_sel(struct device *dev, phy_interface_t phy_mode, int slave)
29 {}
30 #endif
31 int ti_cm_get_macid(struct device *dev, int slave, u8 *mac_addr);
32 
33 #endif /* __CPSW_H__ */
34