Hey there, Am Dienstag, 24. Juli 2012, 19:33:34 schrieb Andreas Messer: > Hello Again, > > Am Dienstag, 26. Juni 2012, 13:18:35 schrieb John W. Linville: > > On Tue, Jun 26, 2012 at 06:03:56PM +0200, Andreas Messer wrote: > > > Dear all, > > > > > > updating my pc from linux kernel 3.3 to linux kernel 3.4 broke my wlan. I have spent some more time on investigating the cause of the bug and found the problem. Actually I'm not sure which is the right solution. The problem is caused by the following points: 1) The rt73 hardware registers are not initialized before bringing the corresponding network interface up ('ifconfig wlan0 up') 2) Bringing the interface up is not possible because of the kill switch 3) The GPIO input pin for the kill switch is still in 'output mode' (the default power on value), therefore the register will always read 'killswitch on' So something like a deadlock. While looking through the code, I have seen, that the whole rt2xx driver uses here the same concept, that the hardware register initialization and firmware-download does not happen before the interface is brought up. Im not sure if that is the right concept, shouldn't be the hardware initialized properly on loading the driver already? I mean, if values are read from the hardware in order to e.g. read the kill switch state shouldn't bethe hardware in a defined state before that? Anyway, it would be possible to solve this bug easily by only setting up the correct value of the CSR13 register right after reading the eeprom. For simple testing I have written the correct gpio mask to CSR13 using the debugfs interface and the wlan interface immediately was brought up and connected successfully with my Network. So which is the right solution? I could make & test a patch for the simple solution easily. Cheers Andreas
Attachment:
signature.asc
Description: This is a digitally signed message part.