Some older DL10019 based cards need to setup
the auto-negotiation-advertisement register
to advertise 100Full,100Half,10Full and 10Half.
Signed-off-by: <komurojun-mbn@nifty.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
        } else {
            outb(full_duplex ? 4 : 0, nic_base + DLINK_DIAG);
        }
+    } else if (info->flags & IS_DL10019) {
+       /* Advertise 100F, 100H, 10F, 10H */
+       mdio_write(nic_base + DLINK_GPIO, info->eth_phy, 4, 0x01e1);
+       /* Restart MII autonegotiation */
+       mdio_write(nic_base + DLINK_GPIO, info->eth_phy, 0, 0x0000);
+       mdio_write(nic_base + DLINK_GPIO, info->eth_phy, 0, 0x1200);
     }
 }