On Sunday 02 August 2009, Pavel Roskin wrote: > Unloading rt61pci can leave the device in such state that reloading > rt61pci would fail to reinitialize it. Bogus data would be read from > the EEPROM and the RF version won't be recognized. > > It appears that unloading rt61pci with power saving enabled would have > such effect. To initialize the device properly, SOFT_RESET_CSR should > be set to the same value as rt61pci_config_ps() uses to wake up the > device. > > Signed-off-by: Pavel Roskin <proski@xxxxxxx> I'm not really happy with the patch, but if it works, it works. I got no better alternative to fix this correctly so we might as well merge this into wireless-testing now. :) Thanks. Acked-by: Ivo van Doorn <IvDoorn@xxxxxxxxx> > --- > drivers/net/wireless/rt2x00/rt61pci.c | 5 +++++ > 1 files changed, 5 insertions(+), 0 deletions(-) > > diff --git a/drivers/net/wireless/rt2x00/rt61pci.c b/drivers/net/wireless/rt2x00/rt61pci.c > index fb95b8c..e20dd74 100644 > --- a/drivers/net/wireless/rt2x00/rt61pci.c > +++ b/drivers/net/wireless/rt2x00/rt61pci.c > @@ -2601,6 +2601,11 @@ static int rt61pci_probe_hw(struct rt2x00_dev *rt2x00dev) > int retval; > > /* > + * Disable power saving. > + */ > + rt2x00pci_register_write(rt2x00dev, SOFT_RESET_CSR, 0x00000007); > + > + /* > * Allocate eeprom data. > */ > retval = rt61pci_validate_eeprom(rt2x00dev); > -- > To unsubscribe from this list: send the line "unsubscribe linux-wireless" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html