[PATCH 3/3] libertas: fix memory alignment problems on the blackfin

Ihar Hrachyshka ihar.hrachyshka at promwad.com
Thu Jan 24 13:52:17 EST 2008


Fixing  unaligned memory access  on the blackfin architecture (maybe on the 
ARM also).

Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka at promwad.com>

---

diff --git a/drivers/net/wireless/libertas/scan.c b/drivers/net/wireless/libertas/scan.c
index 9a61188..9e45ba8 100644
--- a/drivers/net/wireless/libertas/scan.c
+++ b/drivers/net/wireless/libertas/scan.c
@@ -755,11 +755,11 @@ static int lbs_process_bss(struct bss_descriptor
*bss,
        pos += 8;
 
        /* beacon interval is 2 bytes long */
-       bss->beaconperiod = le16_to_cpup((void *) pos);
+       bss->beaconperiod = le16_to_cpu(get_unaligned((u16 *)pos));
        pos += 2;
 
        /* capability information is 2 bytes long */
-       bss->capability = le16_to_cpup((void *) pos);
+       bss->capability = le16_to_cpu(get_unaligned((u16 *)pos));
        lbs_deb_scan("process_bss: capabilities 0x%04x\n",
bss->capability);
        pos += 2; 



-- 
Ihar Hrachyshka
Software Developer
Promwad Innovation Company
19, Sharangovicha Str.
220018, Minsk, Belarus
Phone/Fax: +375 (17) 211-5826
Web: www.promwad.com




More information about the libertas-dev mailing list