Update ucc_geth.c for new workqueue structure
Subsystems (2)
PATCH 1/1 Update ucc_geth.c for new workqueue structure
From: Timur Tabi <[email protected]>
The workqueue interface changed with David Howell's patch on 11/22/2006 (SHA 65f27f38446e1976cc98fd3004b110fedcddd189). Several drivers were updated with that patch to handle the new interface, but ucc_geth.c was not one of them. This patch updates ucc_geth.c to support the new model.
A compiler warning in set_mac_addr() was also fixed.
--- drivers/net/ucc_geth.c | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-)
drivers/net/ucc_geth.c +7 -5
@@ -29,6 +29,7 @@#include <linux/fsl_devices.h> #include <linux/ethtool.h> #include <linux/mii.h> +#include <linux/workqueue.h> #include <asm/of_platform.h> #include <asm/uaccess.h>
@@ -472,7 +473,7 @@ static void put_enet_addr_container(strukfree (enet_addr_cont); } -static int set_mac_addr (__be16 __iomem *reg,u8 *mac) +static void set_mac_addr (__be16 __iomem *reg,u8 *mac) {out_be16 (®[0 ], ((u16 )mac[5 ] <<8 ) | mac[4 ]);out_be16 (®[1 ], ((u16 )mac[3 ] <<8 ) | mac[2 ]);
@@ -3918,10 +3919,11 @@ static irqreturn_t phy_interrupt(int irq }/* Scheduled by the phy_interrupt/timer to handle PHY changes */ -static void ugeth_phy_change (void *data) +static void ugeth_phy_change (struct work_struct *work) { -struct net_device *dev = (struct net_device *)data; -struct ucc_geth_private *ugeth =netdev_priv (dev); +struct ucc_geth_private *ugeth = + container_of(work, struct ucc_geth_private, tq); +struct net_device *dev = ugeth->dev;struct ucc_geth *ug_regs;int result =0 ;
@@ -4078,7 +4080,7 @@ static int ucc_geth_open(struct net_devi#endif /* CONFIG_UGETH_NAPI */ /* Set up the PHY change work queue */ -INIT_WORK (&ugeth->tq, ugeth_phy_change, dev); +INIT_WORK (&ugeth->tq, ugeth_phy_change);init_timer (&ugeth->phy_info_timer); ugeth->phy_info_timer.function = &ugeth_phy_startup_timer;
Signature · 1 line
1.4.4
Jeff Garzik
AppliedQuoted 8 lines · [email protected] wrote:
From: Timur Tabi <[email protected]>
The workqueue interface changed with David Howell's patch on 11/22/2006 (SHA
65f27f38446e1976cc98fd3004b110fedcddd189). Several drivers were updated with that patch to handle the new interface, butucc_geth.cwas not one of them. This patch updatesucc_geth.cto support the new model.
Quoted 8 lines
A compiler warning in
set_mac_addr()was also fixed.Signed-off-by Timur Tabi <[email protected]>Signed-off-by Kumar Gala <[email protected]>--- drivers/net/ucc_geth.c | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-)
applied