Opened on 11/09/17 at 09:35:39
Last modified on 02/25/22 at 18:13:00
#3222 accepted enhancement
libbsd: WiFi Support needs rc.conf integration
Reported by: | Christian Mauderer | Owned by: | Christian Mauderer |
---|---|---|---|
Priority: | normal | Milestone: | Indefinite |
Component: | network/libbsd | Version: | 5 |
Severity: | normal | Keywords: | SoC, libbsd, WiFi, WLAN, large |
Cc: | Blocked By: | ||
Blocking: |
Description (last modified by Gedare Bloom)
Currently WLAN is still only poorly integrated into libbsd. A number of manual commands are necessary to create a WLAN device.
FreeBSD supports rc.conf lines like the following one for setting up a WLAN device (see rc.conf(5) section ''network_interfaces''):
wlans_rtwn0="wlan0" ifconfig_wlan0="DHCP"
The rtems-libbsd should support this notation too.
Problematic in this context is that all currently supported WLAN devices are USB devices. These devices need some time to enumerate or can even be hot plugged. Therefore they might not be available during the first parsing of rc.conf.
We need a method to handle such hot plugged events. For that it will be necessary to keep relevant information from the rc.conf available.
Possible Approach
The way freebsd handles hot-plug events in general or network device
events in special should be analyzed. If possible, a similar method
should be implemented in rtems-libbsd.
Necessary Hardware
Some board which is supported in rtems-libbsd and has a (supported) USB host connection and a (supported) USB-WiFi?? interface is necessary. A known working board is the Beagle Bone Black with a RTL8188 USB dongle. Some kind of hardware debugger (Segger J-Link, Flyswatter 2, something supported by OpenOCD, ...) is strongly recommended.
Related projects
#3223 will need some WiFi?? related rc.conf integration too and maybe depends on some of the functionality here (creating interfaces).
Skills
C and low-level programming skills are needed.
This is a large (350-hour) project of hard difficulty.
Change History (8)
comment:1 Changed on 11/10/17 at 07:02:54 by Christian Mauderer
comment:2 Changed on 01/03/18 at 20:28:09 by Christian Mauderer
Keywords: | SoC added |
---|
comment:3 Changed on 01/18/18 at 19:54:01 by Christian Mauderer
Owner: | set to Christian Mauderer |
---|---|
Status: | new → accepted |
comment:4 Changed on 01/18/18 at 20:01:00 by Christian Mauderer
Possible Approach
The way freebsd handles hot-plug events in general or network device
events in special should be analyzed. If possible, a similar method
should be implemented in rtems-libbsd.
Necessary Hardware
Some board which is supported in rtems-libbsd and has a (supported) USB host connection and a (supported) USB-WiFi? interface is necessary. A known working board is the Beagle Bone Black with a RTL8188 USB dongle. Some kind of hardware debugger (Segger J-Link, Flyswatter 2, something supported by OpenOCD, ...) is strongly recommended.
Related projects
#3223 will need some WiFi? related rc.conf integration too and maybe depends on some of the functionality here (creating interfaces).
comment:5 Changed on 02/03/22 at 20:16:18 by Gedare Bloom
Keywords: | large added |
---|
comment:6 Changed on 02/25/22 at 18:08:42 by Gedare Bloom
Description: | modified (diff) |
---|
comment:7 Changed on 02/25/22 at 18:11:08 by Gedare Bloom
Description: | modified (diff) |
---|
comment:8 Changed on 02/25/22 at 18:13:00 by Gedare Bloom
Description: | modified (diff) |
---|
On FreeBSD, the configuration is used during hot-plug events. For example with the following configuration a hot-plugged RTL8188 based USB WiFi? adapter creates a new wlan7 device: