qcacmn: Add reo destination indication info to skb
Get reo destination indication from REO2SW ring descriptor, store it to qdf_nbuf_cb of skb. Change-Id: I5a4c504b2550229a77a435b1f5ddb78c4abe51aa CRs-Fixed: 2809080
This commit is contained in:
@@ -2451,6 +2451,9 @@ more_data:
|
|||||||
|
|
||||||
qdf_nbuf_set_tid_val(rx_desc->nbuf,
|
qdf_nbuf_set_tid_val(rx_desc->nbuf,
|
||||||
HAL_RX_REO_QUEUE_NUMBER_GET(ring_desc));
|
HAL_RX_REO_QUEUE_NUMBER_GET(ring_desc));
|
||||||
|
qdf_nbuf_set_rx_reo_dest_ind(
|
||||||
|
rx_desc->nbuf,
|
||||||
|
HAL_RX_REO_MSDU_REO_DST_IND_GET(ring_desc));
|
||||||
|
|
||||||
QDF_NBUF_CB_RX_PKT_LEN(rx_desc->nbuf) = msdu_desc_info.msdu_len;
|
QDF_NBUF_CB_RX_PKT_LEN(rx_desc->nbuf) = msdu_desc_info.msdu_len;
|
||||||
|
|
||||||
|
@@ -504,6 +504,10 @@ enum hal_rx_ret_buf_manager {
|
|||||||
RX_MSDU_DESC_INFO_0_DA_IDX_TIMEOUT_OFFSET)) & \
|
RX_MSDU_DESC_INFO_0_DA_IDX_TIMEOUT_OFFSET)) & \
|
||||||
RX_MSDU_DESC_INFO_0_DA_IDX_TIMEOUT_MASK)
|
RX_MSDU_DESC_INFO_0_DA_IDX_TIMEOUT_MASK)
|
||||||
|
|
||||||
|
#define HAL_RX_REO_MSDU_REO_DST_IND_GET(reo_desc) \
|
||||||
|
(HAL_RX_MSDU_REO_DST_IND_GET(& \
|
||||||
|
(((struct reo_destination_ring *) \
|
||||||
|
reo_desc)->rx_msdu_desc_info_details)))
|
||||||
|
|
||||||
#define HAL_RX_MSDU_FLAGS_GET(msdu_info_ptr) \
|
#define HAL_RX_MSDU_FLAGS_GET(msdu_info_ptr) \
|
||||||
(HAL_RX_FIRST_MSDU_IN_MPDU_FLAG_GET(msdu_info_ptr) | \
|
(HAL_RX_FIRST_MSDU_IN_MPDU_FLAG_GET(msdu_info_ptr) | \
|
||||||
|
@@ -143,4 +143,28 @@ static inline uint8_t qdf_nbuf_is_rx_ipa_smmu_map(qdf_nbuf_t buf)
|
|||||||
{
|
{
|
||||||
return QDF_NBUF_CB_RX_PACKET_IPA_SMMU_MAP(buf);
|
return QDF_NBUF_CB_RX_PACKET_IPA_SMMU_MAP(buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* qdf_nbuf_set_rx_reo_dest_ind() - set reo destination indication
|
||||||
|
* @buf: Network buffer
|
||||||
|
* @value: reo destination indication value to set
|
||||||
|
*
|
||||||
|
* Return: none
|
||||||
|
*/
|
||||||
|
static inline void qdf_nbuf_set_rx_reo_dest_ind(qdf_nbuf_t buf,
|
||||||
|
uint8_t value)
|
||||||
|
{
|
||||||
|
QDF_NBUF_CB_RX_PACKET_REO_DEST_IND(buf) = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* qdf_nbuf_get_rx_reo_dest_ind() - get reo destination indication
|
||||||
|
* @buf: Network buffer
|
||||||
|
*
|
||||||
|
* Return reo destination indication value (0 ~ 31)
|
||||||
|
*/
|
||||||
|
static inline uint8_t qdf_nbuf_get_rx_reo_dest_ind(qdf_nbuf_t buf)
|
||||||
|
{
|
||||||
|
return QDF_NBUF_CB_RX_PACKET_REO_DEST_IND(buf);
|
||||||
|
}
|
||||||
#endif /* _QDF_NBUF_M_H */
|
#endif /* _QDF_NBUF_M_H */
|
||||||
|
@@ -143,4 +143,16 @@ static inline uint8_t qdf_nbuf_is_rx_ipa_smmu_map(qdf_nbuf_t buf)
|
|||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* qdf_nbuf_set_rx_reo_dest_ind() - set reo destination indication
|
||||||
|
* @buf: Network buffer
|
||||||
|
* @value: reo destination indication value to set
|
||||||
|
*
|
||||||
|
* Return: none
|
||||||
|
*/
|
||||||
|
static inline void qdf_nbuf_set_rx_reo_dest_ind(qdf_nbuf_t buf,
|
||||||
|
uint8_t value)
|
||||||
|
{
|
||||||
|
}
|
||||||
#endif /* _QDF_NBUF_W_H */
|
#endif /* _QDF_NBUF_W_H */
|
||||||
|
@@ -113,6 +113,7 @@ typedef union {
|
|||||||
* @rx.dev.priv_cb_m.l3_hdr_pad: L3 header padding offset
|
* @rx.dev.priv_cb_m.l3_hdr_pad: L3 header padding offset
|
||||||
* @rx.dev.priv_cb_m.exc_frm: exception frame
|
* @rx.dev.priv_cb_m.exc_frm: exception frame
|
||||||
* @rx.dev.priv_cb_m.ipa_smmu_map: do IPA smmu map
|
* @rx.dev.priv_cb_m.ipa_smmu_map: do IPA smmu map
|
||||||
|
* @rx.dev.priv_cb_m.reo_dest_ind: reo destination indication
|
||||||
* @rx.dev.priv_cb_m.tcp_seq_num: TCP sequence number
|
* @rx.dev.priv_cb_m.tcp_seq_num: TCP sequence number
|
||||||
* @rx.dev.priv_cb_m.tcp_ack_num: TCP ACK number
|
* @rx.dev.priv_cb_m.tcp_ack_num: TCP ACK number
|
||||||
* @rx.dev.priv_cb_m.lro_ctx: LRO context
|
* @rx.dev.priv_cb_m.lro_ctx: LRO context
|
||||||
@@ -232,7 +233,8 @@ struct qdf_nbuf_cb {
|
|||||||
/* exception frame flag */
|
/* exception frame flag */
|
||||||
exc_frm:1,
|
exc_frm:1,
|
||||||
ipa_smmu_map:1,
|
ipa_smmu_map:1,
|
||||||
reserved:7,
|
reo_dest_ind:5,
|
||||||
|
reserved:2,
|
||||||
reserved1:16;
|
reserved1:16;
|
||||||
uint32_t tcp_seq_num;
|
uint32_t tcp_seq_num;
|
||||||
uint32_t tcp_ack_num;
|
uint32_t tcp_ack_num;
|
||||||
|
@@ -81,6 +81,10 @@
|
|||||||
(((struct qdf_nbuf_cb *)((skb)->cb))->u.rx.dev.priv_cb_m. \
|
(((struct qdf_nbuf_cb *)((skb)->cb))->u.rx.dev.priv_cb_m. \
|
||||||
ipa_smmu_map)
|
ipa_smmu_map)
|
||||||
|
|
||||||
|
#define QDF_NBUF_CB_RX_PACKET_REO_DEST_IND(skb) \
|
||||||
|
(((struct qdf_nbuf_cb *)((skb)->cb))->u.rx.dev.priv_cb_m. \
|
||||||
|
reo_dest_ind)
|
||||||
|
|
||||||
#define __qdf_nbuf_ipa_owned_get(skb) \
|
#define __qdf_nbuf_ipa_owned_get(skb) \
|
||||||
QDF_NBUF_CB_TX_IPA_OWNED(skb)
|
QDF_NBUF_CB_TX_IPA_OWNED(skb)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user