qcacld-3.0: Fix No AMSDU/MPDU aggregation issue

Host need set tx_aggr_size_disable bit when host tx aggregation is
unsupported.

Change-Id: I0c86e74f6447f401d24660e1291abf969b1abbe6
CRs-Fixed: 2931245
This commit is contained in:
Jianmin Zhu
2021-04-27 18:35:39 +08:00
committed by Madan Koyyalamudi
parent 75f53bc5a3
commit fca87a8b09

View File

@@ -4100,9 +4100,12 @@ QDF_STATUS wma_set_tx_rx_aggr_size(uint8_t vdev_id,
/* bit 2 (aggr_type): TX Aggregation Type (0=A-MPDU, 1=A-MSDU) */ /* bit 2 (aggr_type): TX Aggregation Type (0=A-MPDU, 1=A-MSDU) */
if (aggr_type == WMI_VDEV_CUSTOM_AGGR_TYPE_AMSDU) if (aggr_type == WMI_VDEV_CUSTOM_AGGR_TYPE_AMSDU)
cmd->enable_bitmap |= 0x04; cmd->enable_bitmap |= 0x04;
/* bit 3 (tx_aggr_size_disable): If set tx_aggr_size is invalid */ /* Set bit3(tx_aggr_size_disable) if tx_aggr_size is invalid */
if (rx_size == 0) if (tx_size == 0)
cmd->enable_bitmap |= (0x1 << 3); cmd->enable_bitmap |= (0x1 << 3);
/* Set bit4(rx_aggr_size_disable) if rx_aggr_size is invalid */
if (rx_size == 0)
cmd->enable_bitmap |= (0x1 << 4);
cmd->enable_bitmap |= (0x1 << 6); cmd->enable_bitmap |= (0x1 << 6);
@@ -4164,8 +4167,7 @@ QDF_STATUS wma_set_tx_rx_aggr_size_per_ac(WMA_HANDLE handle,
cmd->rx_aggr_size = qos_aggr->rx_aggregation_size; cmd->rx_aggr_size = qos_aggr->rx_aggregation_size;
cmd->tx_aggr_size = tx_aggr_size[queue_num]; cmd->tx_aggr_size = tx_aggr_size[queue_num];
/* bit 5: tx_ac_enable, if set, ac bitmap is valid. */ /* bit 5: tx_ac_enable, if set, ac bitmap is valid. */
if (cmd->rx_aggr_size != 0) cmd->enable_bitmap = 0x20 | queue_num;
cmd->enable_bitmap = 0x20 | queue_num;
/* bit 2 (aggr_type): TX Aggregation Type (0=A-MPDU, 1=A-MSDU) */ /* bit 2 (aggr_type): TX Aggregation Type (0=A-MPDU, 1=A-MSDU) */
if (aggr_type == WMI_VDEV_CUSTOM_AGGR_TYPE_AMSDU) if (aggr_type == WMI_VDEV_CUSTOM_AGGR_TYPE_AMSDU)
cmd->enable_bitmap |= 0x04; cmd->enable_bitmap |= 0x04;