Without this patch, mainline via-rhine cannot wake the chip if some other
driver puts it to D3. The problem has hit quite a few people already.
This is a fix for the heisenbug with via-rhine refusing to work
sometimes. Patch "[9/9] Restructure reset code" contained a change made
necessary by patch [8/9]. Mainline merged [8/9] for 2.6.8 and is still
missing the fix, while -mm got it with [9/9].
Jesper Juhl provided crucial test data when no one else was able to
reproduce the symptoms.
Signed-off-by: Roger Luethi <rl@hellgate.ch>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
}
#endif /* USE_MMIO */
dev->base_addr = ioaddr;
+ rp = netdev_priv(dev);
+ rp->quirks = quirks;
rhine_power_init(dev);
dev->irq = pdev->irq;
- rp = netdev_priv(dev);
spin_lock_init(&rp->lock);
rp->pdev = pdev;
- rp->quirks = quirks;
rp->mii_if.dev = dev;
rp->mii_if.mdio_read = mdio_read;
rp->mii_if.mdio_write = mdio_write;