Merge tag 'next-20220328' of https://source.denx.de/u-boot/custodians/u-boot-video...
[platform/kernel/u-boot.git] / include / phy.h
index c66fd43..9ea4bd4 100644 (file)
@@ -454,6 +454,32 @@ void phy_connect_dev(struct phy_device *phydev, struct udevice *dev);
 struct phy_device *phy_connect(struct mii_dev *bus, int addr,
                                struct udevice *dev,
                                phy_interface_t interface);
+/**
+ * phy_device_create() - Create a PHY device
+ *
+ * @bus:               MII/MDIO bus that hosts the PHY
+ * @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);
+
+/**
+ * phy_connect_phy_id() - Connect to phy device by reading PHY id
+ *                       from phy node.
+ *
+ * @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,
+                                     phy_interface_t interface);
 
 static inline ofnode phy_get_ofnode(struct phy_device *phydev)
 {