#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

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:

wlans_rtwn0="wlan7"
ifconfig_wlan7="DHCP"

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: newaccepted

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)
Note: See TracTickets for help on using tickets.