staging: et131x: Remove adapter->bmsr, replace with phydev equivalents
authorMark Einon <mark.einon@gmail.com>
Sat, 1 Oct 2011 10:14:12 +0000 (11:14 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 4 Oct 2011 17:43:13 +0000 (10:43 -0700)
adapter->bmsr is no longer being updated, but is also used to check the link state in places.

Remove bmsr from adapter, and replace link state checks with phydev->link check.

Signed-off-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/et131x/et1310_phy.c
drivers/staging/et131x/et131x_adapter.h
drivers/staging/et131x/et131x_initpci.c

index fc37b18..a72046b 100644 (file)
@@ -337,9 +337,6 @@ void et131x_xcvr_init(struct et131x_adapter *adapter)
        u16 isr;
        u16 lcr2;
 
-       /* Zero out the adapter structure variable representing BMSR */
-       adapter->bmsr = 0;
-
        et131x_mii_read(adapter, PHY_INTERRUPT_STATUS, &isr);
        et131x_mii_read(adapter, PHY_INTERRUPT_MASK, &imr);
 
index fabc2c5..b5195ef 100644 (file)
@@ -201,9 +201,6 @@ struct et131x_adapter {
        u16 pdown_speed;
        u8 pdown_duplex;
 
-       /* Xcvr status at last poll */
-       u16 bmsr;
-
        /* Tx Memory Variables */
        struct tx_ring tx_ring;
 
index 667ab80..10283a3 100644 (file)
@@ -239,19 +239,18 @@ static int et131x_pci_init(struct et131x_adapter *adapter,
 void et131x_error_timer_handler(unsigned long data)
 {
        struct et131x_adapter *adapter = (struct et131x_adapter *) data;
+       struct phy_device *phydev = adapter->phydev;
 
        if (!et1310_in_phy_coma(adapter))
                et1310_update_macstat_host_counters(adapter);
        else
                dev_err(&adapter->pdev->dev, "No interrupts, in PHY coma\n");
 
-       if (!(adapter->bmsr & BMSR_LSTATUS) &&
-           adapter->boot_coma < 11) {
+       if (!phydev->link && adapter->boot_coma < 11)
                adapter->boot_coma++;
-       }
 
        if (adapter->boot_coma == 10) {
-               if (!(adapter->bmsr & BMSR_LSTATUS)) {
+               if (!phydev->link) {
                        if (!et1310_in_phy_coma(adapter)) {
                                /* NOTE - This was originally a 'sync with
                                 *  interrupt'. How to do that under Linux?