|
@@ -39,10 +39,11 @@ static int dwmac1000_dma_init(void __iomem *ioaddr, int pbl, u32 dma_tx,
|
|
/* DMA SW reset */
|
|
/* DMA SW reset */
|
|
value |= DMA_BUS_MODE_SFT_RESET;
|
|
value |= DMA_BUS_MODE_SFT_RESET;
|
|
writel(value, ioaddr + DMA_BUS_MODE);
|
|
writel(value, ioaddr + DMA_BUS_MODE);
|
|
- limit = 15000;
|
|
|
|
|
|
+ limit = 10;
|
|
while (limit--) {
|
|
while (limit--) {
|
|
if (!(readl(ioaddr + DMA_BUS_MODE) & DMA_BUS_MODE_SFT_RESET))
|
|
if (!(readl(ioaddr + DMA_BUS_MODE) & DMA_BUS_MODE_SFT_RESET))
|
|
break;
|
|
break;
|
|
|
|
+ mdelay(10);
|
|
}
|
|
}
|
|
if (limit < 0)
|
|
if (limit < 0)
|
|
return -EBUSY;
|
|
return -EBUSY;
|