diff options
Diffstat (limited to 'drivers/net/gianfar.c')
-rw-r--r-- | drivers/net/gianfar.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/net/gianfar.c b/drivers/net/gianfar.c index 032073d1e3d2..5267c27e3174 100644 --- a/drivers/net/gianfar.c +++ b/drivers/net/gianfar.c | |||
@@ -558,12 +558,8 @@ static int gfar_parse_group(struct device_node *np, | |||
558 | struct gfar_private *priv, const char *model) | 558 | struct gfar_private *priv, const char *model) |
559 | { | 559 | { |
560 | u32 *queue_mask; | 560 | u32 *queue_mask; |
561 | u64 addr, size; | ||
562 | |||
563 | addr = of_translate_address(np, | ||
564 | of_get_address(np, 0, &size, NULL)); | ||
565 | priv->gfargrp[priv->num_grps].regs = ioremap(addr, size); | ||
566 | 561 | ||
562 | priv->gfargrp[priv->num_grps].regs = of_iomap(np, 0); | ||
567 | if (!priv->gfargrp[priv->num_grps].regs) | 563 | if (!priv->gfargrp[priv->num_grps].regs) |
568 | return -ENOMEM; | 564 | return -ENOMEM; |
569 | 565 | ||
@@ -1571,9 +1567,9 @@ static void gfar_halt_nodisable(struct net_device *dev) | |||
1571 | tempval |= (DMACTRL_GRS | DMACTRL_GTS); | 1567 | tempval |= (DMACTRL_GRS | DMACTRL_GTS); |
1572 | gfar_write(®s->dmactrl, tempval); | 1568 | gfar_write(®s->dmactrl, tempval); |
1573 | 1569 | ||
1574 | while (!(gfar_read(®s->ievent) & | 1570 | spin_event_timeout(((gfar_read(®s->ievent) & |
1575 | (IEVENT_GRSC | IEVENT_GTSC))) | 1571 | (IEVENT_GRSC | IEVENT_GTSC)) == |
1576 | cpu_relax(); | 1572 | (IEVENT_GRSC | IEVENT_GTSC)), -1, 0); |
1577 | } | 1573 | } |
1578 | } | 1574 | } |
1579 | 1575 | ||