diff options
author | Haavard Skinnemoen <hskinnemoen@atmel.com> | 2006-12-08 14:37:35 +0100 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-12-11 09:31:28 -0500 |
commit | d836cae4f683211f14c1fd8184f478622b185164 (patch) | |
tree | 006f96c4099116b3b0e55311f8ff33915ec30932 | |
parent | 68dc44af632944dff6c8b36013d32a254fe62de4 (diff) |
[PATCH] MACB: Use struct delayed_work instead of struct work_struct
The macb driver calls schedule_delayed_work() and friends, so we need
to use a struct delayed_work along with it. The conversion was
explained by David Howells on lkml Dec 5 2006:
http://lkml.org/lkml/2006/12/5/269
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r-- | drivers/net/macb.c | 6 | ||||
-rw-r--r-- | drivers/net/macb.h | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/macb.c b/drivers/net/macb.c index bd0ce98c939..3496d19c55e 100644 --- a/drivers/net/macb.c +++ b/drivers/net/macb.c @@ -267,9 +267,9 @@ static void macb_update_stats(struct macb *bp) *p += readl(reg); } -static void macb_periodic_task(void *arg) +static void macb_periodic_task(struct work_struct *work) { - struct macb *bp = arg; + struct macb *bp = container_of(work, struct macb, periodic_task.work); macb_update_stats(bp); macb_check_media(bp, 1, 0); @@ -1088,7 +1088,7 @@ static int __devinit macb_probe(struct platform_device *pdev) dev->base_addr = regs->start; - INIT_WORK(&bp->periodic_task, macb_periodic_task, bp); + INIT_DELAYED_WORK(&bp->periodic_task, macb_periodic_task); mutex_init(&bp->mdio_mutex); init_completion(&bp->mdio_complete); diff --git a/drivers/net/macb.h b/drivers/net/macb.h index 8c253db6988..e3fcb2e06fd 100644 --- a/drivers/net/macb.h +++ b/drivers/net/macb.h @@ -377,7 +377,7 @@ struct macb { unsigned int rx_pending, tx_pending; - struct work_struct periodic_task; + struct delayed_work periodic_task; struct mutex mdio_mutex; struct completion mdio_complete; |