]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - net/irda/irlmp.c
Merge branch 'master' of /home/sam/kernel/linux-2.6/
[mv-sheeva.git] / net / irda / irlmp.c
index c19e9ce05a3a117d9a404140c735ea8a5c766d47..129ad64c15bbcd069f6c61086e510b7b7e50907d 100644 (file)
@@ -24,7 +24,6 @@
  *
  ********************************************************************/
 
-#include <linux/config.h>
 #include <linux/module.h>
 #include <linux/slab.h>
 #include <linux/string.h>
@@ -44,6 +43,8 @@
 #include <net/irda/irlmp.h>
 #include <net/irda/irlmp_frame.h>
 
+#include <asm/unaligned.h>
+
 static __u8 irlmp_find_free_slsap(void);
 static int irlmp_slsap_inuse(__u8 slsap_sel);
 
@@ -840,6 +841,7 @@ void irlmp_do_expiry(void)
 void irlmp_do_discovery(int nslots)
 {
        struct lap_cb *lap;
+       __u16 *data_hintsp;
 
        /* Make sure the value is sane */
        if ((nslots != 1) && (nslots != 6) && (nslots != 8) && (nslots != 16)){
@@ -849,7 +851,8 @@ void irlmp_do_discovery(int nslots)
        }
 
        /* Construct new discovery info to be used by IrLAP, */
-       u16ho(irlmp->discovery_cmd.data.hints) = irlmp->hints.word;
+       data_hintsp = (__u16 *) irlmp->discovery_cmd.data.hints;
+       put_unaligned(irlmp->hints.word, data_hintsp);
 
        /*
         *  Set character set for device name (we use ASCII), and