summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Mauderer <Christian.Mauderer@embedded-brains.de>2017-11-08 12:43:39 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-11-10 13:33:03 +0100
commite5abb315777a16bf7608db713999124e57643d98 (patch)
treea48a86307cce57f62ae4670993f0ccc97792d202
parentbed8742caa074c8d0933ce733cc92c448b680dc0 (diff)
libbsd.txt: Describe current state of WLAN.
-rw-r--r--libbsd.txt52
1 files changed, 52 insertions, 0 deletions
diff --git a/libbsd.txt b/libbsd.txt
index f57faba3..71d5cc8d 100644
--- a/libbsd.txt
+++ b/libbsd.txt
@@ -1154,6 +1154,58 @@ The following is necessary to use PF on RTEMS:
systems (on FreeBSD that means systems with less than 100 MB RAM). This is
fixed in +pfctl_init_options()+.
+== Wireless Network (WLAN) ==
+
+The libbsd provides a basic support for WLAN. Note that currently this support
+is still in an early state. The following gives a rough overview over the
+necessary steps to connect to an encrypted network with an RTL8188EU based WiFi
+dongle:
+
+- Reference all necessary module for your BSP. For some BSPs this is already
+ done in the nexus-devices.h:
+
+----
+ SYSINIT_MODULE_REFERENCE(wlan_ratectl_none);
+ SYSINIT_MODULE_REFERENCE(wlan_sta);
+ SYSINIT_MODULE_REFERENCE(wlan_amrr);
+ SYSINIT_MODULE_REFERENCE(wlan_wep);
+ SYSINIT_MODULE_REFERENCE(wlan_tkip);
+ SYSINIT_MODULE_REFERENCE(wlan_ccmp);
+ SYSINIT_DRIVER_REFERENCE(rtwn_usb, uhub);
+ SYSINIT_REFERENCE(rtwn_rtl8188eufw);
+----
+
+- Create your wlan device using ifconfig:
+ +ifconfig wlan0 create wlandev rtwn0 up+
+
+- Start a wpa_supplicant instance for that device:
+ + wpa_supplicant_fork -Dbsd -iwlan0 -c/media/mmcsd-0-0/wpa_supplicant.conf+
+
+Note that the wpa_supplicant will only be active till the device goes down. A
+workaround is to just restart it every time it exits.
+
+=== Known restrictions ===
+
+- The network interface (e.g. wlan0) is currently not automatically created. It
+ would be nice, if some service would create it as soon as for example a USB
+ device is connected. In FreeBSD the names are assigned via rc.conf with lines
+ like +wlans_rtwn0="wlan0"+.
+
+- wpa_supplicant hast to be started after the device is created. It has to be
+ restarted every time the connection goes down. Instead of this behaviour,
+ there should be some service that starts and restarts wpa_supplicant
+ automatically if a interface is ready. Probably the dhcpcd hooks could be used
+ for that.
+
+- The current wpa_supplicant implementation is protected with a lock so it can't
+ be started more than one time. If multiple interface should be used, all have
+ to be handled by that single instance. That makes it hard to add interfaces
+ dynamically. wpa_supplicant should be reviewed thoroughly whether multiple
+ instances could be started in parallel.
+
+- The control interface of wpa_supplicant most likely doesn't work. The wpa_cli
+ application is not ported.
+
== Problems to report to FreeBSD ==
The MMAP_NOT_AVAILABLE define is inverted on its usage. When it is