On Saturday 31 October 2009 15:11:37 James Grossmann wrote: > [ 4200.794299] cfg80211: Calling CRDA to update world regulatory > domain > [ 4200.857330] p54pci 0000:03:00.0: PCI INT A -> Link[LNKA] -> GSI 11 > (level, low) -> IRQ 11 > [ 4200.857408] p54pci 0000:03:00.0: firmware: requesting isl3886pci > [ 4201.432596] phy0: p54 detected a LM86 firmware > [ 4201.432604] p54: rx_mtu reduced from 3240 to 2376 > [ 4201.432610] phy0: FW rev 2.13.12.0 - Softmac protocol 5.9 > [ 4201.432616] phy0: cryptographic accelerator WEP:YES, TKIP:YES, > CCMP:YES > [ 4202.293254] phy0: EEPROM is damaged... you may not be able to use > all channels with this device. ^^^ = that's the culprit. do you think, you can get this EEPROM dump? Just move the attach _patch_ into your compat-wireless' main directory. Afterward, you have to execute: patch -p1 < p54-dump-eeprom-to-dmesg.diff and rebuild & reload the driver and retrieve the data from dmesg. > [ 4202.293286] phy0: [iqauto calibration data] is/are missing for > channel:2 [2417 MHz]. > [ 4202.293293] phy0: [iqauto calibration data] is/are missing for > channel:3 [2422 MHz]. > [ 4202.293300] phy0: [iqauto calibration data] is/are missing for > channel:4 [2427 MHz]. > [ 4202.293306] phy0: [iqauto calibration data] is/are missing for > channel:5 [2432 MHz]. > [ 4202.293313] phy0: [iqauto calibration data] is/are missing for > channel:6 [2437 MHz]. > [ 4202.293320] phy0: [iqauto calibration data] is/are missing for > channel:8 [2447 MHz]. > [ 4202.293326] phy0: [iqauto calibration data] is/are missing for > channel:9 [2452 MHz]. > [ 4202.293333] phy0: [iqauto calibration data] is/are missing for > channel:10 [2457 MHz]. > [ 4202.293340] phy0: [iqauto calibration data] is/are missing for > channel:11 [2462 MHz]. > [ 4202.293346] phy0: [iqauto calibration data] is/are missing for > channel:12 [2467 MHz]. > [ 4202.293356] phy0: hwaddr 00:xx:xx:xx:xx:xx, MAC:isl3880 RF:Frisbee > [ 4202.293787] phy0: Selected rate control algorithm 'minstrel' > [ 4202.295616] Registered led device: p54-phy0::assoc > [ 4202.295657] Registered led device: p54-phy0::tx > [ 4202.295703] Registered led device: p54-phy0::rx > [ 4202.295744] Registered led device: p54-phy0::radio > [ 4202.295758] p54pci 0000:03:00.0: is registered as 'phy0' > [ 4202.378618] udev: renamed network interface wlan0 to wlan1 > [ 4202.509483] ADDRCONF(NETDEV_UP): wlan1: link is not ready > [ 4202.724125] phy0: frequency change to channel 2 failed. > [ 4202.724138] phy0: frequency change to channel 3 failed. > [ 4202.724145] phy0: frequency change to channel 4 failed. > [ 4202.724151] phy0: frequency change to channel 5 failed. > [ 4202.724157] phy0: frequency change to channel 6 failed. > [ 4202.780179] phy0: frequency change to channel 8 failed. > [ 4202.780193] phy0: frequency change to channel 9 failed. > [ 4202.780199] phy0: frequency change to channel 10 failed. > [ 4202.780206] phy0: frequency change to channel 11 failed. > [ 4202.780212] phy0: frequency change to channel 12 failed. > [ 4208.212168] phy0: frequency change to channel 2 failed. > [ 4208.212180] phy0: frequency change to channel 3 failed. > [ 4208.212187] phy0: frequency change to channel 4 failed. > [ 4208.212193] phy0: frequency change to channel 5 failed. > [ 4208.212199] phy0: frequency change to channel 6 failed. > [ 4208.276097] phy0: frequency change to channel 8 failed. > [ 4208.276112] phy0: frequency change to channel 9 failed. > [ 4208.276119] phy0: frequency change to channel 10 failed. > [ 4208.276125] phy0: frequency change to channel 11 failed. > [ 4208.276132] phy0: frequency change to channel 12 failed. > [ 4208.524788] phy0: frequency change to channel 6 failed. > [ 4208.524949] wlan1: deauthenticating from 00:xx:xx:xx:xx:xx by local > choice (reason=3) > [ 4208.525084] wlan1: direct probe to AP 00:xx:xx:xx:xx:xx (try 1) > [ 4208.724191] wlan1: direct probe to AP 00:xx:xx:xx:xx:xx (try 2) [...] Regards, Chr
diff --git a/drivers/net/wireless/p54/eeprom.c b/drivers/net/wireless/p54/eeprom.c index 8dfe815..7504588 100644 --- a/drivers/net/wireless/p54/eeprom.c +++ b/drivers/net/wireless/p54/eeprom.c @@ -540,6 +540,8 @@ int p54_parse_eeprom(struct ieee80211_hw *dev, void *eeprom, int len) wrap = (struct eeprom_pda_wrap *) eeprom; entry = (void *)wrap->data + le16_to_cpu(wrap->len); + print_hex_dump_bytes("EEPROM:", DUMP_PREFIX_OFFSET, eeprom, len); + /* verify that at least the entry length/code fits */ while ((u8 *)entry <= end - sizeof(*entry)) { entry_len = le16_to_cpu(entry->len);