qtnfmac: pass DFS region to firmware on region update

Pass DFS region as requested by regulatory core directly to firmware
so it can initialize radar detection block accordingly.

Signed-off-by: Igor Mitsyanko <igor.mitsyanko.os@quantenna.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
Igor Mitsyanko 2019-03-20 10:03:58 +00:00 committed by Kalle Valo
parent c698bce015
commit 438fb43bca
2 changed files with 19 additions and 2 deletions

View File

@ -2376,6 +2376,21 @@ int qtnf_cmd_reg_notify(struct qtnf_wmac *mac, struct regulatory_request *req)
break;
}
switch (req->dfs_region) {
case NL80211_DFS_FCC:
cmd->dfs_region = QLINK_DFS_FCC;
break;
case NL80211_DFS_ETSI:
cmd->dfs_region = QLINK_DFS_ETSI;
break;
case NL80211_DFS_JP:
cmd->dfs_region = QLINK_DFS_JP;
break;
default:
cmd->dfs_region = QLINK_DFS_UNSET;
break;
}
cmd->num_channels = 0;
for (band = 0; band < NUM_NL80211_BANDS; band++) {

View File

@ -582,6 +582,7 @@ enum qlink_user_reg_hint_type {
* of &enum qlink_user_reg_hint_type.
* @num_channels: number of &struct qlink_tlv_channel in a variable portion of a
* payload.
* @dfs_region: one of &enum qlink_dfs_regions.
* @info: variable portion of regulatory notifier callback.
*/
struct qlink_cmd_reg_notify {
@ -590,7 +591,8 @@ struct qlink_cmd_reg_notify {
u8 initiator;
u8 user_reg_hint_type;
u8 num_channels;
u8 rsvd[3];
u8 dfs_region;
u8 rsvd[2];
u8 info[0];
} __packed;
@ -800,7 +802,7 @@ enum qlink_dfs_regions {
* @alpha2: country code ID firmware is configured to.
* @n_reg_rules: number of regulatory rules TLVs in variable portion of the
* message.
* @dfs_region: regulatory DFS region, one of @enum qlink_dfs_region.
* @dfs_region: regulatory DFS region, one of &enum qlink_dfs_regions.
* @var_info: variable-length WMAC info data.
*/
struct qlink_resp_get_mac_info {