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 | ||
