mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-12-22 13:02:44 +01:00
134 lines
4.4 KiB
Plaintext
134 lines
4.4 KiB
Plaintext
|
Background
|
||
|
==========
|
||
|
|
||
|
- Priority scale: High, Medium and Low
|
||
|
|
||
|
- Complexity scale: C1, C2, C4 and C8. The complexity scale is exponential,
|
||
|
with complexity 1 being the lowest complexity. Complexity is a function
|
||
|
of both task 'complexity' and task 'scope'.
|
||
|
|
||
|
The general rule of thumb is that a complexity 1 task should take 1-2 weeks
|
||
|
for a person very familiar with the codebase. Higher complexity tasks
|
||
|
require more time and have higher uncertainty.
|
||
|
|
||
|
Higher complexity tasks should be refined into several lower complexity tasks
|
||
|
once the task is better understood.
|
||
|
|
||
|
|
||
|
mac80211_hwsim
|
||
|
==============
|
||
|
|
||
|
- Add support for returning HWSIM_ATTR_RADIO_ID from HWSIM_CMD_CREATE_RADIO
|
||
|
|
||
|
The HWSIM_CMD_CREATE_RADIO command should return HWSIM_CMD_CREATE_RADIO
|
||
|
on success so that the radio id for the created wiphy can be mapped by
|
||
|
test tools or when having to destroy that radio again.
|
||
|
|
||
|
Priority: High
|
||
|
Complexity: C1
|
||
|
|
||
|
- Add support for client tracking of HWSIM_CMD_CREATE_RADIO
|
||
|
|
||
|
When using HWSIM_CMD_CREATE_RADIO command the newly created radio is
|
||
|
not bound to the owner of the netlink socket. This means that the radio
|
||
|
stays around even after the client quits. For testing tools it would
|
||
|
be beneficial if the newly created radio could be bound to the lifetime
|
||
|
of the netlink socket.
|
||
|
|
||
|
Create a new HWSIM_ATTR_DESTROY_RADIO_ON_CLOSE (netlink flag attribute)
|
||
|
that can be given to HWSIM_CMD_CREATE_RADIO to indicate this behavior.
|
||
|
|
||
|
Priority: High
|
||
|
Complexity: C1
|
||
|
|
||
|
- Rename HWSIM_CMD_CREATE_RADIO into HWSIM_CMD_NEW_RADIO
|
||
|
|
||
|
Using the name HWSIM_CMD_NEW_RADIO is more fitting on how other pieces
|
||
|
of the wireless system work.
|
||
|
|
||
|
Rename the HWSIM_CMD_CREATE_RADIO entry in the enum and provde a define
|
||
|
for source level comaptiblity.
|
||
|
|
||
|
Priority: Medium
|
||
|
Complexity: C1
|
||
|
|
||
|
- Rename HWSIM_CMD_DESTROY_RADIO into HWSIM_CMD_DEL_RADIO
|
||
|
|
||
|
Using the name HWSIM_CMD_DEL_RADIO is more fitting on how other pieces
|
||
|
of the wireless system work.
|
||
|
|
||
|
Rename the HWSIM_CMD_DESTROY_RADIO entry in the enum and provde a define
|
||
|
for source level comaptiblity.
|
||
|
|
||
|
Priority: Medium
|
||
|
Complexity: C1
|
||
|
|
||
|
- Provide multicast events for HWSIM_CMD_NEW_RADIO and HWSIM_CMD_DEL_RADIO
|
||
|
|
||
|
When adding new radios via HWSIM_CMD_NEW_RADIO then listeners on the
|
||
|
multicast group "config" should be informed. Same as when an existing
|
||
|
radio gets removed via HWSIM_CMD_DEL_RADIO, send event to "config"
|
||
|
multicast group.
|
||
|
|
||
|
The multicast group "config" does not exist at the moment and needs
|
||
|
be introduced as well.
|
||
|
|
||
|
Priority: Medium
|
||
|
Complexity: C1
|
||
|
|
||
|
- Add support for HWSIM_CMD_GET_RADIO command
|
||
|
|
||
|
Currently it is not possible to list the existing radio created by
|
||
|
mac80211_hwsim. Use the command to dump a list of radios where each
|
||
|
radio at minimum containts the HWSIM_ATTR_RADIO_ID.
|
||
|
|
||
|
For the result HWSIM_CMD_NEW_RADIO (previously HWSIM_CMD_CREATE_RADIO)
|
||
|
should be used.
|
||
|
|
||
|
The dump version should not require any attributes and list all radios
|
||
|
while otherwise the HWSIM_ATTR_RADIO_ID is required to provide details
|
||
|
of a specific radio.
|
||
|
|
||
|
Priority: Medium
|
||
|
Complexity: C1
|
||
|
|
||
|
- Add support for HWSIM_CMD_SET_RADIO command
|
||
|
|
||
|
To allow modifying an existing radio, add the HWSIM_CMD_SET_RADIO. The
|
||
|
first possible feature should be to emulate the hardware RFKILL switch.
|
||
|
|
||
|
It might be required to add a HWSIM_ATTR_RADIO_HW_RFKILL attribute flag
|
||
|
to the HWSIM_CMD_NEW_RADIO to enable virtual radios with a hardware
|
||
|
level RFKILL switch.
|
||
|
|
||
|
Priority: Medium
|
||
|
Complexity: C1
|
||
|
|
||
|
- Provide kernel option to allow defining the number of initial radios
|
||
|
|
||
|
By default the mac80211_hwsim modules creates 2 radios by default unless
|
||
|
it is overwritten with the radios=x module parameter.
|
||
|
|
||
|
To allow loading the mac80211_hwsim by default and even with accidental
|
||
|
loading of the module, it would be good to provide a kernel configuration
|
||
|
option that allows changing the default value here.
|
||
|
|
||
|
For our testing we want to load mac80211_hwsim without any radios. Maybe
|
||
|
this should be the default for the new kernel option.
|
||
|
|
||
|
Priority: Low
|
||
|
Complexity: C1
|
||
|
|
||
|
- New configuration options for radios
|
||
|
|
||
|
At the moment the radios created are all equal and feature rich. However
|
||
|
for testing we want to create radios with different emulated hardware
|
||
|
capabilities. Provide new attributes or flags that allow enabling or
|
||
|
disabling certain mac80211 features.
|
||
|
|
||
|
For example AP mode, P2P mode, number of interface combinations, TDLS
|
||
|
support, number of Scan SSIDs, supported ciphers and so on.
|
||
|
|
||
|
Priority: Low
|
||
|
Complexity: C2
|