qcacmn: Pass beacon tx rate value to FW

Set bcn_tx_rate when send WMI_VDEV_START_REQUEST_CMDID to FW.

Change-Id: I402d996fe4382d8dfd765e3bf7957d4696549b00
CRs-Fixed: 2097703
这个提交包含在:
Jiachao Wu
2017-08-23 15:27:11 +08:00
提交者 snandini
父节点 0090e226f1
当前提交 56ce86e04f
修改 2 个文件,包含 24 行新增0 行删除

查看文件

@@ -609,6 +609,24 @@ struct mac_ssid {
uint8_t mac_ssid[WMI_MAC_MAX_SSID_LENGTH];
} qdf_packed;
/**
* enum wmi_bcn_tx_rate_code - beacon tx rate code
*/
enum wmi_bcn_tx_rate_code {
WMI_BCN_TX_RATE_CODE_1_M = 0x43,
WMI_BCN_TX_RATE_CODE_2_M = 0x42,
WMI_BCN_TX_RATE_CODE_5_5_M = 0x41,
WMI_BCN_TX_RATE_CODE_6_M = 0x03,
WMI_BCN_TX_RATE_CODE_9_M = 0x07,
WMI_BCN_TX_RATE_CODE_11M = 0x40,
WMI_BCN_TX_RATE_CODE_12_M = 0x02,
WMI_BCN_TX_RATE_CODE_18_M = 0x06,
WMI_BCN_TX_RATE_CODE_24_M = 0x01,
WMI_BCN_TX_RATE_CODE_36_M = 0x05,
WMI_BCN_TX_RATE_CODE_48_M = 0x00,
WMI_BCN_TX_RATE_CODE_54_M = 0x04,
};
/**
* struct vdev_start_params - vdev start cmd parameter
* @vdev_id: vdev id
@@ -643,6 +661,7 @@ struct mac_ssid {
* @dot11_mode: Phy mode (VHT20/VHT80...)
* @disable_hw_ack: Disable hw ack if chan is dfs channel for cac
* @channel_param: Channel params required by target.
* @bcn_tx_rate_code: Beacon tx rate code.
* @ldpc_rx_enabled: Enable/Disable LDPC RX for this vdev
*/
struct vdev_start_params {
@@ -677,6 +696,7 @@ struct vdev_start_params {
uint8_t disable_hw_ack;
struct channel_param channel;
#endif
enum wmi_bcn_tx_rate_code bcn_tx_rate_code;
bool ldpc_rx_enabled;
};

查看文件

@@ -343,6 +343,10 @@ static QDF_STATUS send_vdev_start_cmd_tlv(wmi_unified_t wmi_handle,
cmd->beacon_interval = req->beacon_intval;
cmd->dtim_period = req->dtim_period;
cmd->bcn_tx_rate = req->bcn_tx_rate_code;
if (req->bcn_tx_rate_code)
cmd->flags |= WMI_UNIFIED_VDEV_START_BCN_TX_RATE_PRESENT;
if (!req->is_restart) {
cmd->beacon_interval = req->beacon_intval;
cmd->dtim_period = req->dtim_period;