On Tuesday 17 March 2009, Johannes Berg wrote: > On Tue, 2009-03-17 at 22:50 +0100, Ivo van Doorn wrote: > > > > > > > Actually, it does, in ieee80211_start_mesh(). I have no idea then. > > > > I understood that in normal master mode rt73usb doesn't scan either, > > so my bet is that the bug is in rt2x00. :) > > But the bug seems to hit almost all other drivers too, which confuses > me. I'd double-check that the _start_mesh() call actually goes through > and a beacon is available at that point... I think I found something interesting in the log from Antonio which does suggest a mac80211 bug: > [108565.280398] phy3 -> rt73usb_config_intf: Error - TXRX_CSR9 WRITE: 0x000d0000, READ: 0x000d0000 > [108565.385291] phy3 -> rt73usb_write_beacon: Error - TXRX_CSR9 WRITE: 0x00040000, READ: 0x00040000 > [108565.492687] phy3 -> rt73usb_kick_tx_queue: Error - TXRX_CSR9 WRITE: 0x001d0000, READ: 0x001d0000 These 3 commands mean that mac80211 has send the beacon data. > [108565.603206] phy3 -> rt73usb_init_registers: Error - TXRX_CSR9 WRITE: 0x00000000, READ: 0x00000000 This command means that mac80211 uses the start() callback function. This triggers rt2x00 to initialize the registers which resets the beacon generation. So the problem seems to be that mac80211 first sends the beacon to the driver and then starts the interface in which case I bet most drivers/hardware reset beacon generation. So now the driver will be waiting for new beacons from mac80211 which probably won't provide that until a scan command is issued. Ivo -- 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