1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-26 21:11:18 +02:00
- DM9000 DM support
- tftp server bug fix
- mdio ofnode support functions
- Various phy fixes and improvements.

[trini: Fixup merge conflicts in drivers/net/phy/ethernet_id.c
drivers/net/phy/phy.c include/phy.h]
This commit is contained in:
Tom Rini
2022-04-15 08:09:52 -04:00
109 changed files with 1338 additions and 1113 deletions

View File

@@ -359,18 +359,6 @@ static inline int phy_clear_bits_mmd(struct phy_device *phydev, int devad,
#ifdef CONFIG_PHYLIB_10G
extern struct phy_driver gen10g_driver;
/*
* List all 10G interfaces here, the assumption being that PHYs on these
* interfaces are C45
*/
static inline int is_10g_interface(phy_interface_t interface)
{
return interface == PHY_INTERFACE_MODE_XGMII ||
interface == PHY_INTERFACE_MODE_USXGMII ||
interface == PHY_INTERFACE_MODE_10GBASER;
}
#endif
/**
@@ -400,11 +388,9 @@ int phy_reset(struct phy_device *phydev);
*
* @bus: MII/MDIO bus to scan
* @phy_mask: bitmap of PYH addresses to scan
* @interface: type of MAC-PHY interface
* @return: pointer to phy_device if a PHY is found, or NULL otherwise
*/
struct phy_device *phy_find_by_mask(struct mii_dev *bus, unsigned phy_mask,
phy_interface_t interface);
struct phy_device *phy_find_by_mask(struct mii_dev *bus, unsigned phy_mask);
#ifdef CONFIG_PHY_FIXED
@@ -433,8 +419,10 @@ static inline struct phy_device *fixed_phy_create(ofnode node)
* phy_connect_dev() - Associates the given pair of PHY and Ethernet devices
* @phydev: PHY device
* @dev: Ethernet device
* @interface: type of MAC-PHY interface
*/
void phy_connect_dev(struct phy_device *phydev, struct udevice *dev);
void phy_connect_dev(struct phy_device *phydev, struct udevice *dev,
phy_interface_t interface);
/**
* phy_connect() - Creates a PHY device for the Ethernet interface
@@ -461,12 +449,10 @@ struct phy_device *phy_connect(struct mii_dev *bus, int addr,
* @addr: PHY address on MDIO bus
* @phy_id: where to store the ID retrieved
* @is_c45: Device Identifiers if is_c45
* @interface: interface between the MAC and PHY
* @return: pointer to phy_device if a PHY is found, or NULL otherwise
*/
struct phy_device *phy_device_create(struct mii_dev *bus, int addr,
u32 phy_id, bool is_c45,
phy_interface_t interface);
u32 phy_id, bool is_c45);
/**
* phy_connect_phy_id() - Connect to phy device by reading PHY id
@@ -474,12 +460,11 @@ struct phy_device *phy_device_create(struct mii_dev *bus, int addr,
*
* @bus: MII/MDIO bus that hosts the PHY
* @dev: Ethernet device to associate to the PHY
* @interface: Interface between the MAC and PHY
* @return: pointer to phy_device if a PHY is found,
* or NULL otherwise
*/
struct phy_device *phy_connect_phy_id(struct mii_dev *bus, struct udevice *dev,
int phyaddr, phy_interface_t interface);
int phyaddr);
static inline ofnode phy_get_ofnode(struct phy_device *phydev)
{
@@ -494,8 +479,10 @@ static inline ofnode phy_get_ofnode(struct phy_device *phydev)
* phy_connect_dev() - Associates the given pair of PHY and Ethernet devices
* @phydev: PHY device
* @dev: Ethernet device
* @interface: type of MAC-PHY interface
*/
void phy_connect_dev(struct phy_device *phydev, struct eth_device *dev);
void phy_connect_dev(struct phy_device *phydev, struct eth_device *dev,
phy_interface_t interface);
/**
* phy_connect() - Creates a PHY device for the Ethernet interface
@@ -542,6 +529,7 @@ int gen10g_discover_mmds(struct phy_device *phydev);
int phy_b53_init(void);
int phy_mv88e61xx_init(void);
int phy_adin_init(void);
int phy_aquantia_init(void);
int phy_atheros_init(void);
int phy_broadcom_init(void);
@@ -571,14 +559,6 @@ int phy_xilinx_gmii2rgmii_init(void);
int board_phy_config(struct phy_device *phydev);
int get_phy_id(struct mii_dev *bus, int addr, int devad, u32 *phy_id);
/**
* phy_get_interface_by_name() - Look up a PHY interface name
*
* @str: PHY interface name, e.g. "mii"
* @return: PHY_INTERFACE_MODE_... value, or -1 if not found
*/
int phy_get_interface_by_name(const char *str);
/**
* phy_interface_is_rgmii - Convenience function for testing if a PHY interface
* is RGMII (all variants)