Search Linux Wireless

Re: iwl4965 - wpa_supplicant can't see 5Ghz frequencies - 2.6.26-rc1 kernel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 22, 2008 at 9:34 PM, Dan Williams <dcbw@xxxxxxxxxx> wrote:
> On Thu, 2008-05-22 at 19:56 +0200, Johannes Berg wrote:
>> >         memset(&iwe, 0, sizeof(iwe));
>> >         iwe.cmd = SIOCGIWFREQ;
>> > -       iwe.u.freq.m = bss->freq;
>> > -       iwe.u.freq.e = 6;
>> > +       iwe.u.freq.m = ieee80211_frequency_to_channel(bss->freq);
>> > +       iwe.u.freq.e = 0;
>> >         current_ev = iwe_stream_add_event(current_ev, end_buf, &iwe,
>> >                                           IW_EV_FREQ_LEN);
>> >
>> >         memset(&iwe, 0, sizeof(iwe));
>> >         iwe.cmd = SIOCGIWFREQ;
>> > -       iwe.u.freq.m = ieee80211_frequency_to_channel(bss->freq);
>> > -       iwe.u.freq.e = 0;
>> > +       iwe.u.freq.m = bss->freq;
>> > +       iwe.u.freq.e = 6;
>> >         current_ev = iwe_stream_add_event(current_ev, end_buf, &iwe,
>> >                                           IW_EV_FREQ_LEN);
>>
>> That doesn't make any sense, can you explain?
>
> Explanation:
>
> wpa_supplicant cannot handle A-band channel #s.  Thus, with the previous
> code, the FREQ+frequency was sent first, and the FREQ+channel was sent
> second.  Sending the FREQ+channel second made the supplicant overwrite
> the value it already parsed from the FREQ+frequency for that BSSID.  But
> since the supplicant can't handle A-band channel #s, you end up with 0.
>
> Reversing the order of these two makes it work, but it's a total hack.
> That may be what's needed right now though until everyone fixes their
> supplicant.  There's overlap on A-band channels 7 - 12 (5035MHz ->
> 5060MHz) with B/G band channel #s.  Obviously WEXT falls over here
> because the band isn't passed.
>
> But what's the best fix to the supplicant?  It could just parse A-band
> channels and where the numbers overlap, assume B/G band.  Or, it could
> be patched to prefer FREQ+frequency over FREQ+channel if it received
> both.  That's probably the best solution.
>
Thanks for clearing this fog.

Actually we've also tried to removing FREQ+channel part and it has
worked. So wpa_supplicant won't get into this dilemma. Although I have
never seen anyone used 7-12 channels in 5.2 band.
My patch just restored the code that was present before it has broken.
>From what you wrote it looks like the problem is rather in wext then
in wpa_supplicant.

I will sent and official patch if some more people confirms it solves
their problem.

Patch that broke it is below so  I guess the bug is in everything form
2.6.25 and up.
'
commit 8318d78a44d49ac1edf2bdec7299de3617c4232e
Author: Johannes Berg <johannes@xxxxxxxxxxxxxxxx>
Date:   Thu Jan 24 19:38:38 2008 +0100

    cfg80211 API for channels/bitrates, mac80211 and driver conversion
'

Tomas
--
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

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux