qcacmn: Separate UL and DL specific latency parameter
Mesh latency implementation should have DL and UL specific latency parameters Change-Id: Ib780a23503220f5f6e628cd61a032a8515d3a50e
This commit is contained in:

committed by
Madan Koyyalamudi

parent
df63752a7c
commit
4c655bacbd
@@ -31,16 +31,20 @@
|
|||||||
* This function updates per peer per TID mesh latency related parameters.
|
* This function updates per peer per TID mesh latency related parameters.
|
||||||
*
|
*
|
||||||
* @param dest_mac - destination mac address
|
* @param dest_mac - destination mac address
|
||||||
* @param service_interval - Service Interval per tid
|
* @param service_interval_dl - Service Interval per tid on DL
|
||||||
* @param burst_size - Burst size per tid
|
* @param burst_size_dl - Burst size per tid on DL
|
||||||
|
* @param service_interval_ul - Service Interval per tid on UL
|
||||||
|
* @param burst_size_ul - Burst size per tid on UL
|
||||||
* @param priority - user priority combination of tid and msdu queue
|
* @param priority - user priority combination of tid and msdu queue
|
||||||
* #add_or_sub - indicates to add or substract latency parameter
|
* @add_or_sub - indicates to add or subtract latency parameter
|
||||||
* @return - 0 for non error case, -1 for failure
|
* @return - 0 for non error case, -1 for failure
|
||||||
*/
|
*/
|
||||||
static inline QDF_STATUS
|
static inline QDF_STATUS
|
||||||
cdp_mesh_latency_update_peer_parameter(ol_txrx_soc_handle soc,
|
cdp_mesh_latency_update_peer_parameter(ol_txrx_soc_handle soc,
|
||||||
uint8_t *dest_mac, uint32_t service_interval,
|
uint8_t *dest_mac, uint32_t service_interval_dl,
|
||||||
uint32_t burst_size, uint16_t priority, uint8_t add_or_sub)
|
uint32_t burst_size_dl, uint32_t service_interval_ul,
|
||||||
|
uint32_t burst_size_ul, uint16_t priority,
|
||||||
|
uint8_t add_or_sub)
|
||||||
{
|
{
|
||||||
if (!soc || !soc->ops || !soc->ops->mesh_latency_ops) {
|
if (!soc || !soc->ops || !soc->ops->mesh_latency_ops) {
|
||||||
return 1;
|
return 1;
|
||||||
@@ -49,8 +53,9 @@ cdp_mesh_latency_update_peer_parameter(ol_txrx_soc_handle soc,
|
|||||||
if (soc->ops->mesh_latency_ops->mesh_latency_update_peer_parameter)
|
if (soc->ops->mesh_latency_ops->mesh_latency_update_peer_parameter)
|
||||||
return soc->ops->mesh_latency_ops->
|
return soc->ops->mesh_latency_ops->
|
||||||
mesh_latency_update_peer_parameter(soc,
|
mesh_latency_update_peer_parameter(soc,
|
||||||
dest_mac, service_interval,
|
dest_mac, service_interval_dl,
|
||||||
burst_size, priority, add_or_sub);
|
burst_size_dl, service_interval_ul,
|
||||||
|
burst_size_ul, priority, add_or_sub);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@@ -1197,7 +1197,8 @@ struct ol_if_ops {
|
|||||||
QDF_STATUS(*peer_update_mesh_latency_params)(
|
QDF_STATUS(*peer_update_mesh_latency_params)(
|
||||||
struct cdp_ctrl_objmgr_psoc *psoc,
|
struct cdp_ctrl_objmgr_psoc *psoc,
|
||||||
uint8_t vdev_id, uint8_t *peer_mac, uint8_t tid,
|
uint8_t vdev_id, uint8_t *peer_mac, uint8_t tid,
|
||||||
uint32_t service_interval, uint32_t burst_size,
|
uint32_t service_interval_dl, uint32_t burst_size_dl,
|
||||||
|
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
|
#endif
|
||||||
};
|
};
|
||||||
@@ -1771,8 +1772,9 @@ struct cdp_mscs_ops {
|
|||||||
struct cdp_mesh_latency_ops {
|
struct cdp_mesh_latency_ops {
|
||||||
QDF_STATUS (*mesh_latency_update_peer_parameter)(
|
QDF_STATUS (*mesh_latency_update_peer_parameter)(
|
||||||
struct cdp_soc_t *soc,
|
struct cdp_soc_t *soc,
|
||||||
uint8_t *dest_mac, uint32_t service_interval,
|
uint8_t *dest_mac, uint32_t service_interval_dl,
|
||||||
uint32_t burst_size, uint16_t priority,
|
uint32_t burst_size_dl, uint32_t service_interval_ul,
|
||||||
|
uint32_t burst_size_ul, uint16_t priority,
|
||||||
uint8_t add_or_sub);
|
uint8_t add_or_sub);
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
@@ -3169,14 +3169,18 @@ struct dp_wds_ext_peer {
|
|||||||
* parameters. This data is updated per peer per TID based on
|
* parameters. This data is updated per peer per TID based on
|
||||||
* the flow tuple classification in external rule database
|
* the flow tuple classification in external rule database
|
||||||
* during packet processing.
|
* during packet processing.
|
||||||
* @service_interval - Service interval associated with TID
|
* @service_interval_dl - Service interval associated with TID in DL
|
||||||
* @burst_size - Burst size additive over multiple flows
|
* @burst_size_dl - Burst size additive over multiple flows in DL
|
||||||
|
* @service_interval_ul - Service interval associated with TID in UL
|
||||||
|
* @burst_size_ul - Burst size additive over multiple flows in UL
|
||||||
* @ac - custom ac derived from service interval
|
* @ac - custom ac derived from service interval
|
||||||
* @msduq - MSDU queue number within TID
|
* @msduq - MSDU queue number within TID
|
||||||
*/
|
*/
|
||||||
struct dp_peer_mesh_latency_parameter {
|
struct dp_peer_mesh_latency_parameter {
|
||||||
uint32_t service_interval;
|
uint32_t service_interval_dl;
|
||||||
uint32_t burst_size;
|
uint32_t burst_size_dl;
|
||||||
|
uint32_t service_interval_ul;
|
||||||
|
uint32_t burst_size_ul;
|
||||||
uint8_t ac;
|
uint8_t ac;
|
||||||
uint8_t msduq;
|
uint8_t msduq;
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user