qcacmn: Support SAWF uplink QoS
Add CDP and OL interface op to set uplink QoS parameters for SAWF. Change-Id: Idc53f47ddf2bf78bc9c2a22cbb13de5c900cb289 CRs-Fixed: 3331087
This commit is contained in:

committed by
Madan Koyyalamudi

parent
f8f0b97ffa
commit
9fbd2188d6
@@ -1463,6 +1463,15 @@ struct ol_if_ops {
|
|||||||
uint32_t service_interval_dl, uint32_t burst_size_dl,
|
uint32_t service_interval_dl, uint32_t burst_size_dl,
|
||||||
uint32_t service_interval_ul, uint32_t burst_size_ul,
|
uint32_t service_interval_ul, uint32_t burst_size_ul,
|
||||||
uint8_t add_or_sub, uint8_t ac);
|
uint8_t add_or_sub, uint8_t ac);
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_SAWF
|
||||||
|
QDF_STATUS
|
||||||
|
(*peer_update_sawf_ul_params)(struct cdp_ctrl_objmgr_psoc *soc,
|
||||||
|
uint8_t vdev_id, uint8_t *peer_mac,
|
||||||
|
uint8_t tid, uint8_t ac,
|
||||||
|
uint32_t service_interval,
|
||||||
|
uint32_t burst_size,
|
||||||
|
uint8_t add_sub);
|
||||||
#endif
|
#endif
|
||||||
uint32_t (*dp_get_tx_inqueue)(ol_txrx_soc_handle soc);
|
uint32_t (*dp_get_tx_inqueue)(ol_txrx_soc_handle soc);
|
||||||
QDF_STATUS(*dp_send_unit_test_cmd)(uint32_t vdev_id,
|
QDF_STATUS(*dp_send_unit_test_cmd)(uint32_t vdev_id,
|
||||||
@@ -2171,6 +2180,10 @@ struct cdp_sawf_ops {
|
|||||||
(*telemetry_get_drop_stats)(void *arg, uint64_t *pass, uint64_t *drop,
|
(*telemetry_get_drop_stats)(void *arg, uint64_t *pass, uint64_t *drop,
|
||||||
uint64_t *drop_ttl, uint8_t tid,
|
uint64_t *drop_ttl, uint8_t tid,
|
||||||
uint8_t msduq);
|
uint8_t msduq);
|
||||||
|
QDF_STATUS
|
||||||
|
(*peer_config_ul)(struct cdp_soc_t *hdl, uint8_t *mac_addr, uint8_t tid,
|
||||||
|
uint32_t service_interval, uint32_t burst_size,
|
||||||
|
uint8_t add_or_sub);
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
@@ -312,6 +312,33 @@ cdp_get_drop_stats(ol_txrx_soc_handle soc, void *arg,
|
|||||||
arg, pass, drop, drop_ttl, tid, msduq);
|
arg, pass, drop, drop_ttl, tid, msduq);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* cdp_sawf_peer_config_ul - Config uplink QoS parameters
|
||||||
|
* @soc: SOC handle
|
||||||
|
* @mac_addr: MAC address
|
||||||
|
* @tid: TID
|
||||||
|
* @service_interval: Service Interval
|
||||||
|
* @burst_size: Burst Size
|
||||||
|
* @add_or_sub: Add or Sub parameters
|
||||||
|
*
|
||||||
|
* Return: QDF_STATUS
|
||||||
|
*/
|
||||||
|
static inline QDF_STATUS
|
||||||
|
cdp_sawf_peer_config_ul(ol_txrx_soc_handle soc, uint8_t *mac_addr, uint8_t tid,
|
||||||
|
uint32_t service_interval, uint32_t burst_size,
|
||||||
|
uint8_t add_or_sub)
|
||||||
|
{
|
||||||
|
if (!soc || !soc->ops || !soc->ops->sawf_ops ||
|
||||||
|
!soc->ops->sawf_ops->peer_config_ul) {
|
||||||
|
dp_cdp_debug("Invalid Instance");
|
||||||
|
QDF_BUG(0);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return soc->ops->sawf_ops->peer_config_ul(soc, mac_addr, tid,
|
||||||
|
service_interval, burst_size,
|
||||||
|
add_or_sub);
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
static inline QDF_STATUS
|
static inline QDF_STATUS
|
||||||
cdp_sawf_mpdu_stats_req(ol_txrx_soc_handle soc, uint8_t enable)
|
cdp_sawf_mpdu_stats_req(ol_txrx_soc_handle soc, uint8_t enable)
|
||||||
|
@@ -14130,6 +14130,7 @@ static struct cdp_sawf_ops dp_ops_sawf = {
|
|||||||
.telemetry_get_throughput_stats = dp_sawf_get_tx_stats,
|
.telemetry_get_throughput_stats = dp_sawf_get_tx_stats,
|
||||||
.telemetry_get_mpdu_stats = dp_sawf_get_mpdu_sched_stats,
|
.telemetry_get_mpdu_stats = dp_sawf_get_mpdu_sched_stats,
|
||||||
.telemetry_get_drop_stats = dp_sawf_get_drop_stats,
|
.telemetry_get_drop_stats = dp_sawf_get_drop_stats,
|
||||||
|
.peer_config_ul = dp_sawf_peer_config_ul,
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user