[rtems-libbsd commit] Port IEEE 802.11.

Sebastian Huber sebh at rtems.org
Mon Jan 30 08:44:54 UTC 2017


Module:    rtems-libbsd
Branch:    master
Commit:    efc782bd1cf91e5441935c5f3a990c340c9660df
Changeset: http://git.rtems.org/rtems-libbsd/commit/?id=efc782bd1cf91e5441935c5f3a990c340c9660df

Author:    Christian Mauderer <Christian.Mauderer at embedded-brains.de>
Date:      Mon Dec 12 12:31:33 2016 +0100

Port IEEE 802.11.

---

 libbsd.py                                       |  7 +++--
 libbsd_waf.py                                   | 39 +++++++++++++++++++++++++
 rtemsbsd/include/rtems/bsd/local/opt_platform.h |  0
 rtemsbsd/include/rtems/bsd/sys/param.h          |  8 +++++
 rtemsbsd/rtems/rtems-kernel-init.c              |  4 +++
 5 files changed, 56 insertions(+), 2 deletions(-)

diff --git a/libbsd.py b/libbsd.py
index 53461fa..b00e573 100755
--- a/libbsd.py
+++ b/libbsd.py
@@ -1514,12 +1514,13 @@ def net80211(mm):
             'sys/net80211/ieee80211_action.h',
             'sys/net80211/ieee80211_adhoc.h',
             'sys/net80211/ieee80211_ageq.h',
+            'sys/net80211/ieee80211_alq.h',
             'sys/net80211/ieee80211_amrr.h',
             'sys/net80211/ieee80211_crypto.h',
             'sys/net80211/ieee80211_dfs.h',
             'sys/net80211/ieee80211_freebsd.h',
-            'sys/net80211/_ieee80211.h',
             'sys/net80211/ieee80211.h',
+            'sys/net80211/_ieee80211.h',
             'sys/net80211/ieee80211_hostap.h',
             'sys/net80211/ieee80211_ht.h',
             'sys/net80211/ieee80211_input.h',
@@ -1535,6 +1536,7 @@ def net80211(mm):
             'sys/net80211/ieee80211_regdomain.h',
             'sys/net80211/ieee80211_rssadapt.h',
             'sys/net80211/ieee80211_scan.h',
+            'sys/net80211/ieee80211_scan_sw.h',
             'sys/net80211/ieee80211_sta.h',
             'sys/net80211/ieee80211_superg.h',
             'sys/net80211/ieee80211_tdma.h',
@@ -1577,6 +1579,7 @@ def net80211(mm):
             'sys/net80211/ieee80211_rssadapt.c',
             'sys/net80211/ieee80211_scan.c',
             'sys/net80211/ieee80211_scan_sta.c',
+            'sys/net80211/ieee80211_scan_sw.c',
             'sys/net80211/ieee80211_sta.c',
             'sys/net80211/ieee80211_superg.c',
             'sys/net80211/ieee80211_tdma.c',
@@ -2768,7 +2771,7 @@ def sources(mm):
     mm.addModule(netinet(mm))
     mm.addModule(netinet6(mm))
     #mm.addModule(netipsec(mm))
-    #mm.addModule(net80211(mm))
+    mm.addModule(net80211(mm))
     mm.addModule(opencrypto(mm))
     mm.addModule(crypto(mm))
     mm.addModule(altq(mm))
diff --git a/libbsd_waf.py b/libbsd_waf.py
index 899b8e8..9849ab5 100644
--- a/libbsd_waf.py
+++ b/libbsd_waf.py
@@ -898,6 +898,45 @@ def build(bld):
               'freebsd/sys/net/route.c',
               'freebsd/sys/net/rtsock.c',
               'freebsd/sys/net/slcompress.c',
+              'freebsd/sys/net80211/ieee80211.c',
+              'freebsd/sys/net80211/ieee80211_acl.c',
+              'freebsd/sys/net80211/ieee80211_action.c',
+              'freebsd/sys/net80211/ieee80211_adhoc.c',
+              'freebsd/sys/net80211/ieee80211_ageq.c',
+              'freebsd/sys/net80211/ieee80211_amrr.c',
+              'freebsd/sys/net80211/ieee80211_crypto.c',
+              'freebsd/sys/net80211/ieee80211_crypto_ccmp.c',
+              'freebsd/sys/net80211/ieee80211_crypto_none.c',
+              'freebsd/sys/net80211/ieee80211_crypto_tkip.c',
+              'freebsd/sys/net80211/ieee80211_crypto_wep.c',
+              'freebsd/sys/net80211/ieee80211_ddb.c',
+              'freebsd/sys/net80211/ieee80211_dfs.c',
+              'freebsd/sys/net80211/ieee80211_freebsd.c',
+              'freebsd/sys/net80211/ieee80211_hostap.c',
+              'freebsd/sys/net80211/ieee80211_ht.c',
+              'freebsd/sys/net80211/ieee80211_hwmp.c',
+              'freebsd/sys/net80211/ieee80211_input.c',
+              'freebsd/sys/net80211/ieee80211_ioctl.c',
+              'freebsd/sys/net80211/ieee80211_mesh.c',
+              'freebsd/sys/net80211/ieee80211_monitor.c',
+              'freebsd/sys/net80211/ieee80211_node.c',
+              'freebsd/sys/net80211/ieee80211_output.c',
+              'freebsd/sys/net80211/ieee80211_phy.c',
+              'freebsd/sys/net80211/ieee80211_power.c',
+              'freebsd/sys/net80211/ieee80211_proto.c',
+              'freebsd/sys/net80211/ieee80211_radiotap.c',
+              'freebsd/sys/net80211/ieee80211_ratectl.c',
+              'freebsd/sys/net80211/ieee80211_ratectl_none.c',
+              'freebsd/sys/net80211/ieee80211_regdomain.c',
+              'freebsd/sys/net80211/ieee80211_rssadapt.c',
+              'freebsd/sys/net80211/ieee80211_scan.c',
+              'freebsd/sys/net80211/ieee80211_scan_sta.c',
+              'freebsd/sys/net80211/ieee80211_scan_sw.c',
+              'freebsd/sys/net80211/ieee80211_sta.c',
+              'freebsd/sys/net80211/ieee80211_superg.c',
+              'freebsd/sys/net80211/ieee80211_tdma.c',
+              'freebsd/sys/net80211/ieee80211_wds.c',
+              'freebsd/sys/net80211/ieee80211_xauth.c',
               'freebsd/sys/netinet/accf_data.c',
               'freebsd/sys/netinet/accf_dns.c',
               'freebsd/sys/netinet/accf_http.c',
diff --git a/rtemsbsd/include/rtems/bsd/local/opt_platform.h b/rtemsbsd/include/rtems/bsd/local/opt_platform.h
new file mode 100644
index 0000000..e69de29
diff --git a/rtemsbsd/include/rtems/bsd/sys/param.h b/rtemsbsd/include/rtems/bsd/sys/param.h
index fb9b80c..8042746 100644
--- a/rtemsbsd/include/rtems/bsd/sys/param.h
+++ b/rtemsbsd/include/rtems/bsd/sys/param.h
@@ -177,6 +177,14 @@
 #endif
 
 /*
+ * ALIGNED_POINTER is a boolean macro that checks whether an address
+ * is valid to fetch data elements of type t from on this architecture.
+ * This does not reflect the optimal alignment, just the possibility
+ * (within reasonable limits).
+ */
+#define	ALIGNED_POINTER(p, t)	((((u_long)(p)) & (sizeof(t) - 1)) == 0)
+
+/*
  * Some macros for units conversion
  */
 
diff --git a/rtemsbsd/rtems/rtems-kernel-init.c b/rtemsbsd/rtems/rtems-kernel-init.c
index d6ba174..6b37ad1 100644
--- a/rtemsbsd/rtems/rtems-kernel-init.c
+++ b/rtemsbsd/rtems/rtems-kernel-init.c
@@ -50,6 +50,8 @@
 #include <sys/proc.h>
 #include <sys/stat.h>
 
+#include <net80211/ieee80211_freebsd.h>
+
 #include <rtems/bsd/bsd.h>
 
 SYSINIT_REFERENCE(configure1);
@@ -61,6 +63,8 @@ SYSINIT_DRIVER_REFERENCE(nexus, root);
 
 RTEMS_BSD_DEFINE_SET(modmetadata_set, struct mod_metadata *);
 RTEMS_BSD_DEFINE_SET(sysctl_set, struct sysctl_oid *);
+RTEMS_BSD_DEFINE_SET(ieee80211_ioctl_getset, ieee80211_ioctl_getfunc *);
+RTEMS_BSD_DEFINE_SET(ieee80211_ioctl_setset, ieee80211_ioctl_setfunc *);
 
 RTEMS_BSD_DEFINE_RWSET(sysinit_set, struct sysinit *);
 



More information about the vc mailing list