summaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorOleksij Rempel <o.rempel@pengutronix.de>2020-06-16 10:41:32 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2020-06-17 10:38:07 +0200
commita5364fea692ecc49c5c987d1dfa22e9a262df7c0 (patch)
tree17f251dfa25d72a0b44a6d23a71973697c19d0ff /include/linux
parente53af5a8cbf5a7b416389761833b08c1440b065d (diff)
downloadbarebox-a5364fea692ecc49c5c987d1dfa22e9a262df7c0.tar.gz
barebox-a5364fea692ecc49c5c987d1dfa22e9a262df7c0.tar.xz
net: phy: port phy_interface_is_rgmii() from kernel
and remove duplicates from other drivers Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/phy.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/linux/phy.h b/include/linux/phy.h
index a9fdf44f1a..eec1332c9d 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -353,6 +353,27 @@ static inline int phy_clear_bits(struct phy_device *phydev, u32 regnum, u16 val)
return phy_modify(phydev, regnum, val, 0);
}
+/**
+ * phy_interface_mode_is_rgmii - Convenience function for testing if a
+ * PHY interface mode is RGMII (all variants)
+ * @mode: the phy_interface_t enum
+ */
+static inline bool phy_interface_mode_is_rgmii(phy_interface_t mode)
+{
+ return mode >= PHY_INTERFACE_MODE_RGMII &&
+ mode <= PHY_INTERFACE_MODE_RGMII_TXID;
+};
+
+/**
+ * phy_interface_is_rgmii - Convenience function for testing if a PHY interface
+ * is RGMII (all variants)
+ * @phydev: the phy_device struct
+ */
+static inline bool phy_interface_is_rgmii(struct phy_device *phydev)
+{
+ return phy_interface_mode_is_rgmii(phydev->interface);
+};
+
int phy_device_connect(struct eth_device *dev, struct mii_bus *bus, int addr,
void (*adjust_link) (struct eth_device *edev),
u32 flags, phy_interface_t interface);