Libertas Driver Locking Kernel
Nick Moszer
nick.moszer at packetdigital.com
Fri May 23 14:34:13 EDT 2008
Holger Schurig wrote:
>> Any chance you could try an updated driver? What's in kernel
>> git right now in wireless-testing should be able to be used
>> with 2.6.24 without much trouble.
>>
>
> I'm not sure, libertas got some unaligned-access patches. To use
> the wireless-testing libertas source with 2.6.25.4 on my
> embedded device, I also needed the following two patches from
> Linus' 2.6.25
>
> * 064106a91be5e76cb42c1ddf5d3871e3a1bd2a23
> kernel: add common infrastructure for unaligned access
>
> * 6510d41954dc6a9c8b1dbca7eaca0f23195ca727
> kernel: Move arches to use common unaligned access
>
> An other option would be to undo
>
> * 533dd1b0be103b0ff11da71152877e1ba530f1c2
> wireless: use get/put_unaligned_* helpers
>
I ended up add the unaligned-access patches to my 2.6.24 kernel to get
the wireless-testing code to work.
That along with some minor updates to the iw_range struct in
include/linux/wireless.h
Once those patches were added an incompatible pointer type came up when
compiling. The source was lbs_process_bss() in scan.c
code:
if (*bytesleft >= sizeof(beaconsize)) {
/* Extract & convert beacon size from the command buffer */
// beaconsize = get_unaligned_le16(*pbeaconinfo);
beaconsize = le16_to_cpu(get_unaligned((__le16
*)*pbeaconinfo));
Once I commented out the new get_unaligned_le16 and returned the code to
the old line it went away.
I was in a huge hurry when I did this so I didn't take the time to
figure out what the problem was and fix it correctly.
Once I did
More information about the libertas-dev
mailing list