wimax/i2400m: when bootstrap fails, reinitialize the bootrom
authorCindy H Kao <cindy.h.kao@intel.com>
Wed, 10 Jun 2009 23:52:10 +0000 (16:52 -0700)
committerInaky Perez-Gonzalez <inaky@linux.intel.com>
Thu, 11 Jun 2009 10:30:26 +0000 (03:30 -0700)
When a device reset happens during firmware load [in
i2400m_dev_bootstrap()], __i2400m_dev_start() will retry a number of
times. However, for those retries to be able to accomplish anything,
the device's bootrom has to be reinitialized.

Thus, on the retry path, pass the I2400M_MAC_REINIT to the firmware
load code.

Signed-off-by: Cindy H Kao <cindy.h.kao@intel.com>
drivers/net/wimax/i2400m/driver.c

index 8d8628e5af4421aa78ff212b471f67dd933448bb..2a093c5768cc15b0e524c32b291d45fde9d27035 100644 (file)
@@ -454,7 +454,7 @@ error_rx_setup:
 error_tx_setup:
 error_bootstrap:
        if (result == -ERESTARTSYS && times-- > 0) {
-               flags = I2400M_BRI_SOFT;
+               flags = I2400M_BRI_SOFT|I2400M_BRI_MAC_REINIT;
                goto retry;
        }
        d_fnend(3, dev, "(net_dev %p [i2400m %p]) = %d\n",