summaryrefslogtreecommitdiffstats
path: root/drivers/net/ucc_geth.c
diff options
context:
space:
mode:
authorAnton Vorontsov <avorontsov@ru.mvista.com>2008-12-23 06:59:25 +0000
committerDavid S. Miller <davem@davemloft.net>2008-12-26 01:28:43 -0800
commitfdb614c28487df41f7bf2c98e85f29f31885561e (patch)
treece56491da727d14d109f4664d931f39a86a843ba /drivers/net/ucc_geth.c
parent9c54004ea717116a10886e254e26502ffb1136e9 (diff)
downloadop-kernel-dev-fdb614c28487df41f7bf2c98e85f29f31885561e.zip
op-kernel-dev-fdb614c28487df41f7bf2c98e85f29f31885561e.tar.gz
ucc_geth: Eliminate the need for forward references
This patch simply reorders some functions to eliminate the need for forward references. No other changes than that. Suggested-by: Timur Tabi <timur@freescale.com> Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ucc_geth.c')
-rw-r--r--drivers/net/ucc_geth.c81
1 files changed, 39 insertions, 42 deletions
diff --git a/drivers/net/ucc_geth.c b/drivers/net/ucc_geth.c
index 78a2ede..7d5a130 100644
--- a/drivers/net/ucc_geth.c
+++ b/drivers/net/ucc_geth.c
@@ -3072,48 +3072,6 @@ static int ucc_geth_startup(struct ucc_geth_private *ugeth)
return 0;
}
-static int ucc_geth_close(struct net_device *dev);
-static int ucc_geth_open(struct net_device *dev);
-
-/* Reopen device. This will reset the MAC and PHY. */
-static void ucc_geth_timeout_work(struct work_struct *work)
-{
- struct ucc_geth_private *ugeth;
- struct net_device *dev;
-
- ugeth = container_of(work, struct ucc_geth_private, timeout_work);
- dev = ugeth->dev;
-
- ugeth_vdbg("%s: IN", __func__);
-
- dev->stats.tx_errors++;
-
- ugeth_dump_regs(ugeth);
-
- if (dev->flags & IFF_UP) {
- /*
- * Must reset MAC *and* PHY. This is done by reopening
- * the device.
- */
- ucc_geth_close(dev);
- ucc_geth_open(dev);
- }
-
- netif_tx_schedule_all(dev);
-}
-
-/*
- * ucc_geth_timeout gets called when a packet has not been
- * transmitted after a set amount of time.
- */
-static void ucc_geth_timeout(struct net_device *dev)
-{
- struct ucc_geth_private *ugeth = netdev_priv(dev);
-
- netif_carrier_off(dev);
- schedule_work(&ugeth->timeout_work);
-}
-
/* This is called by the kernel when a frame is ready for transmission. */
/* It is pointed to by the dev->hard_start_xmit function pointer */
static int ucc_geth_start_xmit(struct sk_buff *skb, struct net_device *dev)
@@ -3524,6 +3482,45 @@ static int ucc_geth_close(struct net_device *dev)
return 0;
}
+/* Reopen device. This will reset the MAC and PHY. */
+static void ucc_geth_timeout_work(struct work_struct *work)
+{
+ struct ucc_geth_private *ugeth;
+ struct net_device *dev;
+
+ ugeth = container_of(work, struct ucc_geth_private, timeout_work);
+ dev = ugeth->dev;
+
+ ugeth_vdbg("%s: IN", __func__);
+
+ dev->stats.tx_errors++;
+
+ ugeth_dump_regs(ugeth);
+
+ if (dev->flags & IFF_UP) {
+ /*
+ * Must reset MAC *and* PHY. This is done by reopening
+ * the device.
+ */
+ ucc_geth_close(dev);
+ ucc_geth_open(dev);
+ }
+
+ netif_tx_schedule_all(dev);
+}
+
+/*
+ * ucc_geth_timeout gets called when a packet has not been
+ * transmitted after a set amount of time.
+ */
+static void ucc_geth_timeout(struct net_device *dev)
+{
+ struct ucc_geth_private *ugeth = netdev_priv(dev);
+
+ netif_carrier_off(dev);
+ schedule_work(&ugeth->timeout_work);
+}
+
static phy_interface_t to_phy_interface(const char *phy_connection_type)
{
if (strcasecmp(phy_connection_type, "mii") == 0)
OpenPOWER on IntegriCloud