• Helmut Schaa's avatar
    ipw2200: fix scanning while associated · 14a4dfe2
    Helmut Schaa authored
    This patch fixes sporadic firmware restarts when scanning while associated.
    
    The firmware will quietly cancel a scan (while associated) if the dwell time
    for a channel to be scanned is larger than the time it may stay away from the
    operating channel (because of DTIM catching). Unfortunately the driver is not
    notified about the canceled scan and therefore the scan watchdog timeout will
    be hit and the driver causes a firmware restart which results in
    disassociation. This mainly happens on passive channels which use a dwell time
    of 120 whereas a typical beacon interval is around 100.
    
    The patch changes the dwell time for passive channels to be slightly smaller
    than the actual beacon interval to work around the firmware issue. Furthermore
    the number of allowed beacon misses is increased from one to three as otherwise
    most scans (while associated) won't complete successfully.
    
    However scanning while associated will still fail in corner cases such as a
    beacon intervals below 30.
    Signed-off-by: default avatarHelmut Schaa <helmut.schaa@googlemail.com>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    14a4dfe2
ipw2200.h 58.7 KB