3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-12-23 05:42:52 +01:00

wiphy: set QoS bit in extended capabilities

This commit is contained in:
James Prestwood 2019-09-13 15:26:30 -07:00 committed by Denis Kenzior
parent 2fd667af94
commit 74aa280b56
2 changed files with 15 additions and 0 deletions

View File

@ -79,6 +79,7 @@ struct wiphy {
bool support_scheduled_scan:1; bool support_scheduled_scan:1;
bool support_rekey_offload:1; bool support_rekey_offload:1;
bool support_adhoc_rsn:1; bool support_adhoc_rsn:1;
bool support_qos_set_map:1;
bool soft_rfkill : 1; bool soft_rfkill : 1;
bool hard_rfkill : 1; bool hard_rfkill : 1;
bool offchannel_tx_ok : 1; bool offchannel_tx_ok : 1;
@ -363,6 +364,11 @@ bool wiphy_can_offchannel_tx(struct wiphy *wiphy)
return wiphy->offchannel_tx_ok; return wiphy->offchannel_tx_ok;
} }
bool wiphy_supports_qos_set_map(struct wiphy *wiphy)
{
return wiphy->support_qos_set_map;
}
const char *wiphy_get_driver(struct wiphy *wiphy) const char *wiphy_get_driver(struct wiphy *wiphy)
{ {
return wiphy->driver_str; return wiphy->driver_str;
@ -544,6 +550,10 @@ static void parse_supported_commands(struct wiphy *wiphy,
break; break;
case NL80211_CMD_SET_REKEY_OFFLOAD: case NL80211_CMD_SET_REKEY_OFFLOAD:
wiphy->support_rekey_offload = true; wiphy->support_rekey_offload = true;
break;
case NL80211_CMD_SET_QOS_MAP:
wiphy->support_qos_set_map = true;
break;
} }
} }
} }
@ -989,6 +999,10 @@ static void wiphy_set_station_capability_bits(struct wiphy *wiphy)
if (!anqp_disabled) if (!anqp_disabled)
util_set_bit(ext_capa + 2, 31); util_set_bit(ext_capa + 2, 31);
/* Set QoS Map */
if (wiphy->support_qos_set_map)
util_set_bit(ext_capa + 2, 32);
/* Set FILS */ /* Set FILS */
util_set_bit(ext_capa + 2, 72); util_set_bit(ext_capa + 2, 72);
} }

View File

@ -69,6 +69,7 @@ uint8_t wiphy_get_max_num_ssids_per_scan(struct wiphy *wiphy);
bool wiphy_supports_iftype(struct wiphy *wiphy, uint32_t iftype); bool wiphy_supports_iftype(struct wiphy *wiphy, uint32_t iftype);
bool wiphy_supports_adhoc_rsn(struct wiphy *wiphy); bool wiphy_supports_adhoc_rsn(struct wiphy *wiphy);
bool wiphy_can_offchannel_tx(struct wiphy *wiphy); bool wiphy_can_offchannel_tx(struct wiphy *wiphy);
bool wiphy_supports_qos_set_map(struct wiphy *wiphy);
const char *wiphy_get_driver(struct wiphy *wiphy); const char *wiphy_get_driver(struct wiphy *wiphy);
const char *wiphy_get_name(struct wiphy *wiphy); const char *wiphy_get_name(struct wiphy *wiphy);
const uint8_t *wiphy_get_permanent_address(struct wiphy *wiphy); const uint8_t *wiphy_get_permanent_address(struct wiphy *wiphy);