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