History

cfg80211: Add support for QoS mapping

This allows QoS mapping from external networks to be implemented as defined in IEEE Std 802.11-2012, 10.24.9. APs can use this to advertise DSCP ranges and exceptions for mapping frames to a specific UP over Wi-Fi. The payload of the QoS Map Set element (IEEE Std 802.11-2012, 8.4.2.97) is sent to the driver through the new NL80211_ATTR_QOS_MAP attribute to configure the local behavior either on the AP (based on local configuration) or on a station (based on information received from the AP).

Kyeyoon Park committed 12 years ago

Commit fa9ffc71 parent 567ffc313 files · +210 −5Browse files

Showing the changes to include/uapi/linux (1 of 13 files). Show all

Unified · Split

include/uapi/linux/nl80211.h+14−0
@@ -702,6 +702,12 @@ · 701 unmodified lines
702 * (&struct nl80211_vendor_cmd_info) of the supported vendor commands.702 * (&struct nl80211_vendor_cmd_info) of the supported vendor commands.
703 * This may also be sent as an event with the same attributes.703 * This may also be sent as an event with the same attributes.
704 *704 *
705 * @NL80211_CMD_SET_QOS_MAP: Set Interworking QoS mapping for IP DSCP values.
706 * The QoS mapping information is included in %NL80211_ATTR_QOS_MAP. If
707 * that attribute is not included, QoS mapping is disabled. Since this
708 * QoS mapping is relevant for IP packets, it is only valid during an
709 * association. This is cleared on disassociation and AP restart.
710 *
705 * @NL80211_CMD_MAX: highest used command number711 * @NL80211_CMD_MAX: highest used command number
706 * @__NL80211_CMD_AFTER_LAST: internal use712 * @__NL80211_CMD_AFTER_LAST: internal use
707 */713 */
@@ -871,6 +877,8 @@ enum nl80211_commands { · 163 unmodified lines
871 877
872 NL80211_CMD_VENDOR,878 NL80211_CMD_VENDOR,
873 879
880 NL80211_CMD_SET_QOS_MAP,
881
874 /* add new commands above here */882 /* add new commands above here */
875 883
876 /* used to define NL80211_CMD_MAX below */884 /* used to define NL80211_CMD_MAX below */
@@ -1543,6 +1551,10 @@ enum nl80211_commands { · 666 unmodified lines
1543 * @NL80211_ATTR_VENDOR_EVENTS: used for event list advertising in the wiphy1551 * @NL80211_ATTR_VENDOR_EVENTS: used for event list advertising in the wiphy
1544 * info, containing a nested array of possible events1552 * info, containing a nested array of possible events
1545 *1553 *
1554 * @NL80211_ATTR_QOS_MAP: IP DSCP mapping for Interworking QoS mapping. This
1555 * data is in the format defined for the payload of the QoS Map Set element
1556 * in IEEE Std 802.11-2012, 8.4.2.97.
1557 *
1546 * @NL80211_ATTR_MAX: highest attribute number currently defined1558 * @NL80211_ATTR_MAX: highest attribute number currently defined
1547 * @__NL80211_ATTR_AFTER_LAST: internal use1559 * @__NL80211_ATTR_AFTER_LAST: internal use
1548 */1560 */
@@ -1869,6 +1881,8 @@ enum nl80211_attrs { · 320 unmodified lines
1869 NL80211_ATTR_VENDOR_DATA,1881 NL80211_ATTR_VENDOR_DATA,
1870 NL80211_ATTR_VENDOR_EVENTS,1882 NL80211_ATTR_VENDOR_EVENTS,
1871 1883
1884 NL80211_ATTR_QOS_MAP,
1885
1872 /* add attributes here, update the policy in nl80211.c */1886 /* add attributes here, update the policy in nl80211.c */
1873 1887
1874 __NL80211_ATTR_AFTER_LAST,1888 __NL80211_ATTR_AFTER_LAST,