aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mvebu/patches-3.10/0080-of-provide-a-binding-for-the-fixed-link-property.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/mvebu/patches-3.10/0080-of-provide-a-binding-for-the-fixed-link-property.patch')
-rw-r--r--target/linux/mvebu/patches-3.10/0080-of-provide-a-binding-for-the-fixed-link-property.patch132
1 files changed, 0 insertions, 132 deletions
diff --git a/target/linux/mvebu/patches-3.10/0080-of-provide-a-binding-for-the-fixed-link-property.patch b/target/linux/mvebu/patches-3.10/0080-of-provide-a-binding-for-the-fixed-link-property.patch
deleted file mode 100644
index 76105b39fc..0000000000
--- a/target/linux/mvebu/patches-3.10/0080-of-provide-a-binding-for-the-fixed-link-property.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From 5378928ebac13756fc13d0b2de8dd45ace8026aa Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Mon, 15 Jul 2013 17:34:08 +0200
-Subject: [PATCH 080/203] of: provide a binding for the 'fixed-link' property
-
-Some Ethernet MACs have a "fixed link", and are not connected to a
-normal MDIO-managed PHY device. For those situations, a Device Tree
-binding allows to describe a "fixed link", as a "fixed-link" property
-of the Ethernet device Device Tree node.
-
-This patch adds:
-
- * A documentation for the Device Tree property "fixed-link".
-
- * A of_phy_register_fixed_link() OF helper, which provided an OF node
- that contains a "fixed-link" property, registers the corresponding
- fixed PHY.
-
- * Removes the warning on the of_phy_connect_fixed_link() that says
- new drivers should not use it, since Grant Likely indicated that
- this "fixed-link" property is indeed the way to go.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- .../devicetree/bindings/net/fixed-link.txt | 26 ++++++++++++++++
- drivers/of/of_mdio.c | 36 +++++++++++++++++++---
- include/linux/of_mdio.h | 10 ++++++
- 3 files changed, 68 insertions(+), 4 deletions(-)
- create mode 100644 Documentation/devicetree/bindings/net/fixed-link.txt
-
---- /dev/null
-+++ b/Documentation/devicetree/bindings/net/fixed-link.txt
-@@ -0,0 +1,26 @@
-+Fixed link Device Tree binding
-+------------------------------
-+
-+Some Ethernet MACs have a "fixed link", and are not connected to a
-+normal MDIO-managed PHY device. For those situations, a Device Tree
-+binding allows to describe a "fixed link".
-+
-+Such a fixed link situation is described within an Ethernet device
-+Device Tree node using a 'fixed-link' property, composed of 5
-+elements:
-+
-+ 1. A fake PHY ID, which must be unique accross all fixed-link PHYs in
-+ the system.
-+ 2. The duplex (1 for full-duplex, 0 for half-duplex)
-+ 3. The speed (10, 100, 1000)
-+ 4. The pause setting (1 for enabled, 0 for disabled)
-+ 5. The asym pause setting (1 for enabled, 0 for disabled)
-+
-+Example:
-+
-+ethernet@0 {
-+ ...
-+ fixed-link = <1 1 1000 0 0>;
-+ ...
-+};
-+
---- a/drivers/of/of_mdio.c
-+++ b/drivers/of/of_mdio.c
-@@ -14,6 +14,7 @@
- #include <linux/netdevice.h>
- #include <linux/err.h>
- #include <linux/phy.h>
-+#include <linux/phy_fixed.h>
- #include <linux/of.h>
- #include <linux/of_irq.h>
- #include <linux/of_mdio.h>
-@@ -215,10 +216,6 @@ EXPORT_SYMBOL(of_phy_connect);
- * @dev: pointer to net_device claiming the phy
- * @hndlr: Link state callback for the network device
- * @iface: PHY data interface type
-- *
-- * This function is a temporary stop-gap and will be removed soon. It is
-- * only to support the fs_enet, ucc_geth and gianfar Ethernet drivers. Do
-- * not call this function from new drivers.
- */
- struct phy_device *of_phy_connect_fixed_link(struct net_device *dev,
- void (*hndlr)(struct net_device *),
-@@ -247,3 +244,34 @@ struct phy_device *of_phy_connect_fixed_
- return IS_ERR(phy) ? NULL : phy;
- }
- EXPORT_SYMBOL(of_phy_connect_fixed_link);
-+
-+#if defined(CONFIG_FIXED_PHY)
-+/**
-+ * of_phy_register_fixed_link - Parse fixed-link property and register a dummy phy
-+ * @np: pointer to the OF device node that contains the "fixed-link"
-+ * property for which a dummy phy should be registered.
-+ */
-+#define FIXED_LINK_PROPERTIES_COUNT 5
-+int of_phy_register_fixed_link(struct device_node *np)
-+{
-+ struct fixed_phy_status status = {};
-+ u32 fixed_link_props[FIXED_LINK_PROPERTIES_COUNT];
-+ int ret;
-+
-+ ret = of_property_read_u32_array(np, "fixed-link",
-+ fixed_link_props,
-+ FIXED_LINK_PROPERTIES_COUNT);
-+ if (ret < 0)
-+ return ret;
-+
-+ status.link = 1;
-+ status.duplex = fixed_link_props[1];
-+ status.speed = fixed_link_props[2];
-+ status.pause = fixed_link_props[3];
-+ status.asym_pause = fixed_link_props[4];
-+
-+ return fixed_phy_add(PHY_POLL, fixed_link_props[0],
-+ &status);
-+}
-+EXPORT_SYMBOL(of_phy_register_fixed_link);
-+#endif
---- a/include/linux/of_mdio.h
-+++ b/include/linux/of_mdio.h
-@@ -57,4 +57,14 @@ static inline struct mii_bus *of_mdio_fi
- }
- #endif /* CONFIG_OF */
-
-+#if defined(CONFIG_OF) && defined(CONFIG_FIXED_PHY)
-+extern int of_phy_register_fixed_link(struct device_node *np);
-+#else
-+static inline int of_phy_register_fixed_link(struct device_node *np)
-+{
-+ return -ENOSYS;
-+}
-+#endif
-+
-+
- #endif /* __LINUX_OF_MDIO_H */