qcacmn: assign dump functions to per chip specific

1. add more function pointers for the remainder functions which are
generic
2. assign functions to per chip level
3. prevent using generic rx_pkt_tlv struct and using at a per soc
specific instead

Change-Id: I1cefb10c7a70f04dbf8b110fcfee6f1c9f4ab1a0
CRs-Fixed: 3533521
This commit is contained in:
Ruben Columbus
2023-07-20 16:27:57 -07:00
committed by Rahul Choudhary
parent 7dab708812
commit ea44c5ab75
22 changed files with 909 additions and 666 deletions

View File

@@ -1137,9 +1137,12 @@ struct hal_hw_txrx_ops {
uint8_t (*hal_rx_get_tlv)(void *rx_tlv); uint8_t (*hal_rx_get_tlv)(void *rx_tlv);
void (*hal_rx_proc_phyrx_other_receive_info_tlv)(void *rx_tlv_hdr, void (*hal_rx_proc_phyrx_other_receive_info_tlv)(void *rx_tlv_hdr,
void *ppdu_info_handle); void *ppdu_info_handle);
void (*hal_rx_dump_msdu_start_tlv)(void *msdu_start, uint8_t dbg_level); void (*hal_rx_dump_msdu_end_tlv)(void *pkt_tlvs, uint8_t dbg_level);
void (*hal_rx_dump_msdu_end_tlv)(void *msdu_end, void (*hal_rx_dump_rx_attention_tlv)(void *pkt_tlvs, uint8_t dbg_level);
uint8_t dbg_level); void (*hal_rx_dump_msdu_start_tlv)(void *pkt_tlvs, uint8_t dbg_level);
void (*hal_rx_dump_mpdu_start_tlv)(void *pkt_tlvs, uint8_t dbg_level);
void (*hal_rx_dump_mpdu_end_tlv)(void *pkt_tlvs, uint8_t dbg_level);
void (*hal_rx_dump_pkt_hdr_tlv)(void *pkt_tlvs, uint8_t dbg_level);
uint32_t (*hal_get_link_desc_size)(void); uint32_t (*hal_get_link_desc_size)(void);
uint32_t (*hal_rx_mpdu_start_tid_get)(uint8_t *buf); uint32_t (*hal_rx_mpdu_start_tid_get)(uint8_t *buf);
uint32_t (*hal_rx_msdu_start_reception_type_get)(uint8_t *buf); uint32_t (*hal_rx_msdu_start_reception_type_get)(uint8_t *buf);
@@ -1158,8 +1161,6 @@ struct hal_hw_txrx_ops {
void (*hal_rx_wbm_err_info_get)(void *wbm_desc, void (*hal_rx_wbm_err_info_get)(void *wbm_desc,
void *wbm_er_info); void *wbm_er_info);
void (*hal_rx_dump_mpdu_start_tlv)(void *mpdustart,
uint8_t dbg_level);
void (*hal_tx_set_pcp_tid_map)(struct hal_soc *hal_soc, uint8_t *map); void (*hal_tx_set_pcp_tid_map)(struct hal_soc *hal_soc, uint8_t *map);
void (*hal_tx_update_pcp_tid_map)(struct hal_soc *hal_soc, uint8_t pcp, void (*hal_tx_update_pcp_tid_map)(struct hal_soc *hal_soc, uint8_t pcp,

View File

@@ -1595,28 +1595,100 @@ enum hal_rx_wbm_rxdma_push_reason {
HAL_RX_WBM_RXDMA_PSH_RSN_FLUSH, HAL_RX_WBM_RXDMA_PSH_RSN_FLUSH,
}; };
static inline void hal_rx_dump_mpdu_start_tlv(struct rx_mpdu_start *mpdu_start,
uint8_t dbg_level,
struct hal_soc *hal)
{
hal->ops->hal_rx_dump_mpdu_start_tlv(mpdu_start, dbg_level);
}
/** /**
* hal_rx_dump_msdu_end_tlv() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @hal_soc: HAL soc * @hal_soc: HAL soc
* @msdu_end: pointer the msdu_end TLV in pkt. * @pkt_tlvs: pointer the pkt_tlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static inline void hal_rx_dump_msdu_end_tlv(struct hal_soc *hal_soc, static inline void hal_rx_dump_msdu_end_tlv(struct hal_soc *hal_soc,
struct rx_msdu_end *msdu_end, void *pkt_tlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
hal_soc->ops->hal_rx_dump_msdu_end_tlv(msdu_end, dbg_level); hal_soc->ops->hal_rx_dump_msdu_end_tlv(pkt_tlvs, dbg_level);
}
/**
* hal_rx_dump_rx_attention_tlv() - dump RX rx_attention TLV in structured
* human readable format.
* @hal_soc: HAL soc
* @pkt_tlvs: pointer the pkt_tlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_rx_attention_tlv(struct hal_soc *hal_soc,
void *pkt_tlvs,
uint8_t dbg_level)
{
hal_soc->ops->hal_rx_dump_rx_attention_tlv(pkt_tlvs, dbg_level);
}
/**
* hal_rx_dump_msdu_start_tlv: dump RX msdu_start TLV in structured
* human readable format.
* @hal_soc: HAL soc
* @pkt_tlvs: pointer the pkt_tlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_msdu_start_tlv(struct hal_soc *hal_soc,
void *pkt_tlvs,
uint8_t dbg_level)
{
hal_soc->ops->hal_rx_dump_msdu_start_tlv(pkt_tlvs, dbg_level);
}
/**
* hal_rx_dump_mpdu_start_tlv: dump RX mpdu_start TLV in structured
* human readable format.
* @hal_soc: HAL soc
* @pkt_tlvs: pointer the pkt_tlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_mpdu_start_tlv(struct hal_soc *hal_soc,
void *pkt_tlvs,
uint8_t dbg_level)
{
hal_soc->ops->hal_rx_dump_mpdu_start_tlv(pkt_tlvs, dbg_level);
}
/**
* hal_rx_dump_mpdu_end_tlv: dump RX mpdu_end TLV in structured
* human readable format.
* @hal_soc: HAL soc
* @pkt_tlvs: pointer the pkt_tlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_mpdu_end_tlv(struct hal_soc *hal_soc,
void *pkt_tlvs,
uint8_t dbg_level)
{
hal_soc->ops->hal_rx_dump_mpdu_end_tlv(pkt_tlvs, dbg_level);
}
/**
* hal_rx_dump_pkt_hdr_tlv: dump RX pkt_hdr TLV in structured
* human readable format.
* @hal_soc: HAL soc
* @pkt_tlvs: pointer the pkt_tlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_pkt_hdr_tlv(struct hal_soc *hal_soc,
void *pkt_tlvs,
uint8_t dbg_level)
{
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv(pkt_tlvs, dbg_level);
} }
/** /**
@@ -1791,22 +1863,6 @@ uint32_t hal_rx_msdu_start_nss_get(hal_soc_handle_t hal_soc_hdl, uint8_t *buf)
return hal_soc->ops->hal_rx_msdu_start_nss_get(buf); return hal_soc->ops->hal_rx_msdu_start_nss_get(buf);
} }
/**
* hal_rx_dump_msdu_start_tlv() - dump RX msdu_start TLV in structured
* human readable format.
* @hal_soc: HAL SOC
* @msdu_start: pointer the msdu_start TLV in pkt.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_msdu_start_tlv(struct hal_soc *hal_soc,
struct rx_msdu_start *msdu_start,
uint8_t dbg_level)
{
hal_soc->ops->hal_rx_dump_msdu_start_tlv(msdu_start, dbg_level);
}
/** /**
* hal_rx_mpdu_start_tid_get() - Return tid info from the rx mpdu start * hal_rx_mpdu_start_tid_get() - Return tid info from the rx mpdu start
* info details * info details

View File

@@ -148,21 +148,14 @@ static void hal_rx_dump_pkt_tlvs_li(hal_soc_handle_t hal_soc_hdl,
uint8_t *buf, uint8_t dbg_level) uint8_t *buf, uint8_t dbg_level)
{ {
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_attention *rx_attn = &pkt_tlvs->attn_tlv.rx_attn;
struct rx_mpdu_start *mpdu_start =
&pkt_tlvs->mpdu_start_tlv.rx_mpdu_start;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
struct rx_mpdu_end *mpdu_end = &pkt_tlvs->mpdu_end_tlv.rx_mpdu_end;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
struct hal_soc *hal_soc = (struct hal_soc *)hal_soc_hdl; struct hal_soc *hal_soc = (struct hal_soc *)hal_soc_hdl;
hal_rx_dump_rx_attention_tlv(rx_attn, dbg_level); hal_rx_dump_msdu_end_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_mpdu_start_tlv(mpdu_start, dbg_level, hal_soc); hal_rx_dump_rx_attention_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_msdu_start_tlv(hal_soc, msdu_start, dbg_level); hal_rx_dump_msdu_start_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_mpdu_end_tlv(mpdu_end, dbg_level); hal_rx_dump_mpdu_start_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_msdu_end_tlv(hal_soc, msdu_end, dbg_level); hal_rx_dump_mpdu_end_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_pkt_hdr_tlv(pkt_tlvs, dbg_level); hal_rx_dump_pkt_hdr_tlv(hal_soc, pkt_tlvs, dbg_level);
} }
/** /**
@@ -266,28 +259,6 @@ static int hal_rx_get_l3_l4_offsets_li(uint8_t *buf, uint32_t *l3_hdr_offset,
return 0; return 0;
} }
/**
* hal_rx_tlv_get_pn_num_li() - Get packet number from RX TLV
* @buf: rx tlv address
* @pn_num: buffer to store packet number
*
* Return: None
*/
static inline void hal_rx_tlv_get_pn_num_li(uint8_t *buf, uint64_t *pn_num)
{
struct rx_pkt_tlvs *rx_pkt_tlv =
(struct rx_pkt_tlvs *)buf;
struct rx_mpdu_info *rx_mpdu_info_details =
&rx_pkt_tlv->mpdu_start_tlv.rx_mpdu_start.rx_mpdu_info_details;
pn_num[0] = rx_mpdu_info_details->pn_31_0;
pn_num[0] |=
((uint64_t)rx_mpdu_info_details->pn_63_32 << 32);
pn_num[1] = rx_mpdu_info_details->pn_95_64;
pn_num[1] |=
((uint64_t)rx_mpdu_info_details->pn_127_96 << 32);
}
#ifdef NO_RX_PKT_HDR_TLV #ifdef NO_RX_PKT_HDR_TLV
/** /**
* hal_rx_pkt_hdr_get_li() - Get rx packet header start address. * hal_rx_pkt_hdr_get_li() - Get rx packet header start address.
@@ -651,26 +622,6 @@ hal_rx_tlv_csum_err_get_li(uint8_t *rx_tlv_hdr, uint32_t *ip_csum_err,
*tcp_udp_csum_err = hal_rx_attn_tcp_udp_cksum_fail_get(rx_tlv_hdr); *tcp_udp_csum_err = hal_rx_attn_tcp_udp_cksum_fail_get(rx_tlv_hdr);
} }
static
void hal_rx_tlv_get_pkt_capture_flags_li(uint8_t *rx_tlv_pkt_hdr,
struct hal_rx_pkt_capture_flags *flags)
{
struct rx_pkt_tlvs *rx_tlv_hdr = (struct rx_pkt_tlvs *)rx_tlv_pkt_hdr;
struct rx_attention *rx_attn = &rx_tlv_hdr->attn_tlv.rx_attn;
struct rx_mpdu_start *mpdu_start =
&rx_tlv_hdr->mpdu_start_tlv.rx_mpdu_start;
struct rx_mpdu_end *mpdu_end = &rx_tlv_hdr->mpdu_end_tlv.rx_mpdu_end;
struct rx_msdu_start *msdu_start =
&rx_tlv_hdr->msdu_start_tlv.rx_msdu_start;
flags->encrypt_type = mpdu_start->rx_mpdu_info_details.encrypt_type;
flags->fcs_err = mpdu_end->fcs_err;
flags->fragment_flag = rx_attn->fragment_flag;
flags->chan_freq = HAL_RX_MSDU_START_FREQ_GET(msdu_start);
flags->rssi_comb = HAL_RX_MSDU_START_RSSI_GET(msdu_start);
flags->tsft = msdu_start->ppdu_start_timestamp;
}
static uint8_t hal_rx_err_status_get_li(hal_ring_desc_t rx_desc) static uint8_t hal_rx_err_status_get_li(hal_ring_desc_t rx_desc)
{ {
return HAL_RX_ERROR_STATUS_GET(rx_desc); return HAL_RX_ERROR_STATUS_GET(rx_desc);
@@ -681,21 +632,6 @@ static uint8_t hal_rx_reo_buf_type_get_li(hal_ring_desc_t rx_desc)
return HAL_RX_REO_BUF_TYPE_GET(rx_desc); return HAL_RX_REO_BUF_TYPE_GET(rx_desc);
} }
static inline bool
hal_rx_mpdu_info_ampdu_flag_get_li(uint8_t *buf)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_mpdu_start *mpdu_start =
&pkt_tlvs->mpdu_start_tlv.rx_mpdu_start;
struct rx_mpdu_info *mpdu_info = &mpdu_start->rx_mpdu_info_details;
bool ampdu_flag;
ampdu_flag = HAL_RX_MPDU_INFO_AMPDU_FLAG_GET(mpdu_info);
return ampdu_flag;
}
static static
uint32_t hal_rx_tlv_mpdu_len_err_get_li(void *hw_desc_addr) uint32_t hal_rx_tlv_mpdu_len_err_get_li(void *hw_desc_addr)
{ {
@@ -877,46 +813,6 @@ static inline uint32_t hal_rx_tlv_get_pkt_type_li(uint8_t *buf)
return pkt_type; return pkt_type;
} }
/**
* hal_rx_tlv_mic_err_get_li(): API to get the MIC ERR
* from rx_mpdu_end TLV
*
* @buf: pointer to the start of RX PKT TLV headers
* Return: uint32_t(mic_err)
*/
static inline uint32_t
hal_rx_tlv_mic_err_get_li(uint8_t *buf)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_mpdu_end *mpdu_end =
&pkt_tlvs->mpdu_end_tlv.rx_mpdu_end;
uint32_t mic_err;
mic_err = HAL_RX_MPDU_END_MIC_ERR_GET(mpdu_end);
return mic_err;
}
/**
* hal_rx_tlv_decrypt_err_get_li(): API to get the Decrypt ERR
* from rx_mpdu_end TLV
*
* @buf: pointer to the start of RX PKT TLV headers
* Return: uint32_t(decrypt_err)
*/
static inline uint32_t
hal_rx_tlv_decrypt_err_get_li(uint8_t *buf)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_mpdu_end *mpdu_end =
&pkt_tlvs->mpdu_end_tlv.rx_mpdu_end;
uint32_t decrypt_err;
decrypt_err = HAL_RX_MPDU_END_DECRYPT_ERR_GET(mpdu_end);
return decrypt_err;
}
/* /*
* hal_rx_tlv_first_mpdu_get_li(): get fist_mpdu bit from rx attention * hal_rx_tlv_first_mpdu_get_li(): get fist_mpdu bit from rx attention
* @buf: pointer to rx_pkt_tlvs * @buf: pointer to rx_pkt_tlvs
@@ -1216,15 +1112,11 @@ void hal_hw_txrx_default_ops_attach_li(struct hal_soc *hal_soc)
hal_rx_priv_info_set_in_tlv_li; hal_rx_priv_info_set_in_tlv_li;
hal_soc->ops->hal_rx_priv_info_get_from_tlv = hal_soc->ops->hal_rx_priv_info_get_from_tlv =
hal_rx_priv_info_get_from_tlv_li; hal_rx_priv_info_get_from_tlv_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_rx_tlv_mpdu_len_err_get = hal_soc->ops->hal_rx_tlv_mpdu_len_err_get =
hal_rx_tlv_mpdu_len_err_get_li; hal_rx_tlv_mpdu_len_err_get_li;
hal_soc->ops->hal_rx_tlv_mpdu_fcs_err_get = hal_soc->ops->hal_rx_tlv_mpdu_fcs_err_get =
hal_rx_tlv_mpdu_fcs_err_get_li; hal_rx_tlv_mpdu_fcs_err_get_li;
hal_soc->ops->hal_reo_send_cmd = hal_reo_send_cmd_li; hal_soc->ops->hal_reo_send_cmd = hal_reo_send_cmd_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_desc_get_80211_hdr = hal_rx_desc_get_80211_hdr_li; hal_soc->ops->hal_rx_desc_get_80211_hdr = hal_rx_desc_get_80211_hdr_li;
hal_soc->ops->hal_rx_hw_desc_mpdu_user_id = hal_soc->ops->hal_rx_hw_desc_mpdu_user_id =
hal_rx_hw_desc_mpdu_user_id_li; hal_rx_hw_desc_mpdu_user_id_li;
@@ -1236,10 +1128,6 @@ void hal_hw_txrx_default_ops_attach_li(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_tlv_sgi_get = hal_rx_tlv_sgi_get_li; hal_soc->ops->hal_rx_tlv_sgi_get = hal_rx_tlv_sgi_get_li;
hal_soc->ops->hal_rx_tlv_rate_mcs_get = hal_rx_tlv_rate_mcs_get_li; hal_soc->ops->hal_rx_tlv_rate_mcs_get = hal_rx_tlv_rate_mcs_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_type = hal_rx_tlv_get_pkt_type_li; hal_soc->ops->hal_rx_tlv_get_pkt_type = hal_rx_tlv_get_pkt_type_li;
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_first_mpdu_get = hal_rx_tlv_first_mpdu_get_li; hal_soc->ops->hal_rx_tlv_first_mpdu_get = hal_rx_tlv_first_mpdu_get_li;
hal_soc->ops->hal_rx_tlv_get_is_decrypted = hal_soc->ops->hal_rx_tlv_get_is_decrypted =
hal_rx_tlv_get_is_decrypted_li; hal_rx_tlv_get_is_decrypted_li;

View File

@@ -1822,18 +1822,319 @@ static inline uint8_t hal_get_wbm_internal_error_generic_li(void *hal_desc)
} }
/** /**
* hal_rx_dump_mpdu_start_tlv_generic_li() - dump RX mpdu_start TLV in * hal_rx_dump_rx_attention_tlv_generic_li() - dump RX attention TLV in
* structured human readable * structured humman readable
* format. * format.
* @mpdustart: pointer the rx_attention TLV in pkt. * @pkttlvs: pointer the pkt tlv struct.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static inline void hal_rx_dump_mpdu_start_tlv_generic_li(void *mpdustart, static inline
uint8_t dbg_level) void hal_rx_dump_rx_attention_tlv_generic_li(void *pkttlvs,
uint8_t dbg_level)
{ {
struct rx_mpdu_start *mpdu_start = (struct rx_mpdu_start *)mpdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_attention *rx_attn = &pkt_tlvs->attn_tlv.rx_attn;
hal_verbose_debug("rx_attention tlv (1/2) - "
"rxpcu_mpdu_filter_in_category: %x "
"sw_frame_group_id: %x "
"reserved_0: %x "
"phy_ppdu_id: %x "
"first_mpdu : %x "
"reserved_1a: %x "
"mcast_bcast: %x "
"ast_index_not_found: %x "
"ast_index_timeout: %x "
"power_mgmt: %x "
"non_qos: %x "
"null_data: %x "
"mgmt_type: %x "
"ctrl_type: %x "
"more_data: %x "
"eosp: %x "
"a_msdu_error: %x "
"fragment_flag: %x "
"order: %x "
"cce_match: %x "
"overflow_err: %x "
"msdu_length_err: %x "
"tcp_udp_chksum_fail: %x "
"ip_chksum_fail: %x "
"sa_idx_invalid: %x "
"da_idx_invalid: %x "
"reserved_1b: %x "
"rx_in_tx_decrypt_byp: %x ",
rx_attn->rxpcu_mpdu_filter_in_category,
rx_attn->sw_frame_group_id,
rx_attn->reserved_0,
rx_attn->phy_ppdu_id,
rx_attn->first_mpdu,
rx_attn->reserved_1a,
rx_attn->mcast_bcast,
rx_attn->ast_index_not_found,
rx_attn->ast_index_timeout,
rx_attn->power_mgmt,
rx_attn->non_qos,
rx_attn->null_data,
rx_attn->mgmt_type,
rx_attn->ctrl_type,
rx_attn->more_data,
rx_attn->eosp,
rx_attn->a_msdu_error,
rx_attn->fragment_flag,
rx_attn->order,
rx_attn->cce_match,
rx_attn->overflow_err,
rx_attn->msdu_length_err,
rx_attn->tcp_udp_chksum_fail,
rx_attn->ip_chksum_fail,
rx_attn->sa_idx_invalid,
rx_attn->da_idx_invalid,
rx_attn->reserved_1b,
rx_attn->rx_in_tx_decrypt_byp);
hal_verbose_debug("rx_attention tlv (2/2) - "
"encrypt_required: %x "
"directed: %x "
"buffer_fragment: %x "
"mpdu_length_err: %x "
"tkip_mic_err: %x "
"decrypt_err: %x "
"unencrypted_frame_err: %x "
"fcs_err: %x "
"flow_idx_timeout: %x "
"flow_idx_invalid: %x "
"wifi_parser_error: %x "
"amsdu_parser_error: %x "
"sa_idx_timeout: %x "
"da_idx_timeout: %x "
"msdu_limit_error: %x "
"da_is_valid: %x "
"da_is_mcbc: %x "
"sa_is_valid: %x "
"decrypt_status_code: %x "
"rx_bitmap_not_updated: %x "
"reserved_2: %x "
"msdu_done: %x ",
rx_attn->encrypt_required,
rx_attn->directed,
rx_attn->buffer_fragment,
rx_attn->mpdu_length_err,
rx_attn->tkip_mic_err,
rx_attn->decrypt_err,
rx_attn->unencrypted_frame_err,
rx_attn->fcs_err,
rx_attn->flow_idx_timeout,
rx_attn->flow_idx_invalid,
rx_attn->wifi_parser_error,
rx_attn->amsdu_parser_error,
rx_attn->sa_idx_timeout,
rx_attn->da_idx_timeout,
rx_attn->msdu_limit_error,
rx_attn->da_is_valid,
rx_attn->da_is_mcbc,
rx_attn->sa_is_valid,
rx_attn->decrypt_status_code,
rx_attn->rx_bitmap_not_updated,
rx_attn->reserved_2,
rx_attn->msdu_done);
}
/**
* hal_rx_dump_mpdu_end_tlv_generic_li() - dump RX mpdu_end TLV in structured
* human readable format.
* @pkttlvs: pointer the pkt tlv struct.
* @dbg_level: log level.
*
* Return: void
*/
static inline
void hal_rx_dump_mpdu_end_tlv_generic_li(void *pkttlvs,
uint8_t dbg_level)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_mpdu_end *mpdu_end = &pkt_tlvs->mpdu_end_tlv.rx_mpdu_end;
hal_verbose_debug("rx_mpdu_end tlv - "
"rxpcu_mpdu_filter_in_category: %x "
"sw_frame_group_id: %x "
"phy_ppdu_id: %x "
"unsup_ktype_short_frame: %x "
"rx_in_tx_decrypt_byp: %x "
"overflow_err: %x "
"mpdu_length_err: %x "
"tkip_mic_err: %x "
"decrypt_err: %x "
"unencrypted_frame_err: %x "
"pn_fields_contain_valid_info: %x "
"fcs_err: %x "
"msdu_length_err: %x "
"rxdma0_destination_ring: %x "
"rxdma1_destination_ring: %x "
"decrypt_status_code: %x "
"rx_bitmap_not_updated: %x ",
mpdu_end->rxpcu_mpdu_filter_in_category,
mpdu_end->sw_frame_group_id,
mpdu_end->phy_ppdu_id,
mpdu_end->unsup_ktype_short_frame,
mpdu_end->rx_in_tx_decrypt_byp,
mpdu_end->overflow_err,
mpdu_end->mpdu_length_err,
mpdu_end->tkip_mic_err,
mpdu_end->decrypt_err,
mpdu_end->unencrypted_frame_err,
mpdu_end->pn_fields_contain_valid_info,
mpdu_end->fcs_err,
mpdu_end->msdu_length_err,
mpdu_end->rxdma0_destination_ring,
mpdu_end->rxdma1_destination_ring,
mpdu_end->decrypt_status_code,
mpdu_end->rx_bitmap_not_updated);
}
#ifdef NO_RX_PKT_HDR_TLV
static inline
void hal_rx_dump_pkt_hdr_tlv_generic_li(void *pkttlvs,
uint8_t dbg_level)
{
}
#else
/**
* hal_rx_dump_pkt_hdr_tlv_generic_li() - dump RX pkt header TLV in hex format
* @pkttlvs: pointer the pkt tlv struct.
* @dbg_level: log level.
*
* Return: void
*/
static inline
void hal_rx_dump_pkt_hdr_tlv_generic_li(void *pkttlvs,
uint8_t dbg_level)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_pkt_hdr_tlv *pkt_hdr_tlv = &pkt_tlvs->pkt_hdr_tlv;
hal_verbose_debug("\n---------------\nrx_pkt_hdr_tlv"
"\n---------------\nphy_ppdu_id %d ",
pkt_hdr_tlv->phy_ppdu_id);
hal_verbose_hex_dump(pkt_hdr_tlv->rx_pkt_hdr, 128);
}
#endif
/**
* hal_rx_tlv_decrypt_err_get_li() - API to get the Decrypt ERR
* from rx_mpdu_end TLV
*
* @buf: pointer to the start of RX PKT TLV headers
* Return: uint32_t(decrypt_err)
*/
static inline uint32_t
hal_rx_tlv_decrypt_err_get_li(uint8_t *buf)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_mpdu_end *mpdu_end =
&pkt_tlvs->mpdu_end_tlv.rx_mpdu_end;
uint32_t decrypt_err;
decrypt_err = HAL_RX_MPDU_END_DECRYPT_ERR_GET(mpdu_end);
return decrypt_err;
}
/**
* hal_rx_tlv_mic_err_get_li() - API to get the MIC ERR
* from rx_mpdu_end TLV
*
* @buf: pointer to the start of RX PKT TLV headers
* Return: uint32_t(mic_err)
*/
static inline uint32_t
hal_rx_tlv_mic_err_get_li(uint8_t *buf)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_mpdu_end *mpdu_end =
&pkt_tlvs->mpdu_end_tlv.rx_mpdu_end;
uint32_t mic_err;
mic_err = HAL_RX_MPDU_END_MIC_ERR_GET(mpdu_end);
return mic_err;
}
static
void hal_rx_tlv_get_pkt_capture_flags_li(uint8_t *rx_tlv_pkt_hdr,
struct hal_rx_pkt_capture_flags *flags)
{
struct rx_pkt_tlvs *rx_tlv_hdr = (struct rx_pkt_tlvs *)rx_tlv_pkt_hdr;
struct rx_attention *rx_attn = &rx_tlv_hdr->attn_tlv.rx_attn;
struct rx_mpdu_start *mpdu_start =
&rx_tlv_hdr->mpdu_start_tlv.rx_mpdu_start;
struct rx_mpdu_end *mpdu_end = &rx_tlv_hdr->mpdu_end_tlv.rx_mpdu_end;
struct rx_msdu_start *msdu_start =
&rx_tlv_hdr->msdu_start_tlv.rx_msdu_start;
flags->encrypt_type = mpdu_start->rx_mpdu_info_details.encrypt_type;
flags->fcs_err = mpdu_end->fcs_err;
flags->fragment_flag = rx_attn->fragment_flag;
flags->chan_freq = HAL_RX_MSDU_START_FREQ_GET(msdu_start);
flags->rssi_comb = HAL_RX_MSDU_START_RSSI_GET(msdu_start);
flags->tsft = msdu_start->ppdu_start_timestamp;
}
static inline bool
hal_rx_mpdu_info_ampdu_flag_get_li(uint8_t *buf)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_mpdu_start *mpdu_start =
&pkt_tlvs->mpdu_start_tlv.rx_mpdu_start;
struct rx_mpdu_info *mpdu_info = &mpdu_start->rx_mpdu_info_details;
bool ampdu_flag;
ampdu_flag = HAL_RX_MPDU_INFO_AMPDU_FLAG_GET(mpdu_info);
return ampdu_flag;
}
/**
* hal_rx_tlv_get_pn_num_li() - Get packet number from RX TLV
* @buf: rx tlv address
* @pn_num: buffer to store packet number
*
* Return: None
*/
static inline void hal_rx_tlv_get_pn_num_li(uint8_t *buf, uint64_t *pn_num)
{
struct rx_pkt_tlvs *rx_pkt_tlv =
(struct rx_pkt_tlvs *)buf;
struct rx_mpdu_info *rx_mpdu_info_details =
&rx_pkt_tlv->mpdu_start_tlv.rx_mpdu_start.rx_mpdu_info_details;
pn_num[0] = rx_mpdu_info_details->pn_31_0;
pn_num[0] |=
((uint64_t)rx_mpdu_info_details->pn_63_32 << 32);
pn_num[1] = rx_mpdu_info_details->pn_95_64;
pn_num[1] |=
((uint64_t)rx_mpdu_info_details->pn_127_96 << 32);
}
/**
* hal_rx_dump_mpdu_start_tlv_generic_li() - dump RX mpdu_start TLV in
* structured human readable
* format.
* @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline
void hal_rx_dump_mpdu_start_tlv_generic_li(void *pkttlvs,
uint8_t dbg_level)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_mpdu_start *mpdu_start =
&pkt_tlvs->mpdu_start_tlv.rx_mpdu_start;
struct rx_mpdu_info *mpdu_info = struct rx_mpdu_info *mpdu_info =
(struct rx_mpdu_info *)&mpdu_start->rx_mpdu_info_details; (struct rx_mpdu_info *)&mpdu_start->rx_mpdu_info_details;

View File

@@ -840,195 +840,6 @@ HAL_RX_DESC_GET_DECAP_FORMAT(void *hw_desc_addr) {
return HAL_RX_GET(rx_msdu_start, RX_MSDU_START_2, DECAP_FORMAT); return HAL_RX_GET(rx_msdu_start, RX_MSDU_START_2, DECAP_FORMAT);
} }
/**
* hal_rx_dump_rx_attention_tlv() - dump RX attention TLV in structured
* human readable format.
* @rx_attn: pointer the rx_attention TLV in pkt.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_rx_attention_tlv(struct rx_attention *rx_attn,
uint8_t dbg_level)
{
hal_verbose_debug("rx_attention tlv (1/2) - "
"rxpcu_mpdu_filter_in_category: %x "
"sw_frame_group_id: %x "
"reserved_0: %x "
"phy_ppdu_id: %x "
"first_mpdu : %x "
"reserved_1a: %x "
"mcast_bcast: %x "
"ast_index_not_found: %x "
"ast_index_timeout: %x "
"power_mgmt: %x "
"non_qos: %x "
"null_data: %x "
"mgmt_type: %x "
"ctrl_type: %x "
"more_data: %x "
"eosp: %x "
"a_msdu_error: %x "
"fragment_flag: %x "
"order: %x "
"cce_match: %x "
"overflow_err: %x "
"msdu_length_err: %x "
"tcp_udp_chksum_fail: %x "
"ip_chksum_fail: %x "
"sa_idx_invalid: %x "
"da_idx_invalid: %x "
"reserved_1b: %x "
"rx_in_tx_decrypt_byp: %x ",
rx_attn->rxpcu_mpdu_filter_in_category,
rx_attn->sw_frame_group_id,
rx_attn->reserved_0,
rx_attn->phy_ppdu_id,
rx_attn->first_mpdu,
rx_attn->reserved_1a,
rx_attn->mcast_bcast,
rx_attn->ast_index_not_found,
rx_attn->ast_index_timeout,
rx_attn->power_mgmt,
rx_attn->non_qos,
rx_attn->null_data,
rx_attn->mgmt_type,
rx_attn->ctrl_type,
rx_attn->more_data,
rx_attn->eosp,
rx_attn->a_msdu_error,
rx_attn->fragment_flag,
rx_attn->order,
rx_attn->cce_match,
rx_attn->overflow_err,
rx_attn->msdu_length_err,
rx_attn->tcp_udp_chksum_fail,
rx_attn->ip_chksum_fail,
rx_attn->sa_idx_invalid,
rx_attn->da_idx_invalid,
rx_attn->reserved_1b,
rx_attn->rx_in_tx_decrypt_byp);
hal_verbose_debug("rx_attention tlv (2/2) - "
"encrypt_required: %x "
"directed: %x "
"buffer_fragment: %x "
"mpdu_length_err: %x "
"tkip_mic_err: %x "
"decrypt_err: %x "
"unencrypted_frame_err: %x "
"fcs_err: %x "
"flow_idx_timeout: %x "
"flow_idx_invalid: %x "
"wifi_parser_error: %x "
"amsdu_parser_error: %x "
"sa_idx_timeout: %x "
"da_idx_timeout: %x "
"msdu_limit_error: %x "
"da_is_valid: %x "
"da_is_mcbc: %x "
"sa_is_valid: %x "
"decrypt_status_code: %x "
"rx_bitmap_not_updated: %x "
"reserved_2: %x "
"msdu_done: %x ",
rx_attn->encrypt_required,
rx_attn->directed,
rx_attn->buffer_fragment,
rx_attn->mpdu_length_err,
rx_attn->tkip_mic_err,
rx_attn->decrypt_err,
rx_attn->unencrypted_frame_err,
rx_attn->fcs_err,
rx_attn->flow_idx_timeout,
rx_attn->flow_idx_invalid,
rx_attn->wifi_parser_error,
rx_attn->amsdu_parser_error,
rx_attn->sa_idx_timeout,
rx_attn->da_idx_timeout,
rx_attn->msdu_limit_error,
rx_attn->da_is_valid,
rx_attn->da_is_mcbc,
rx_attn->sa_is_valid,
rx_attn->decrypt_status_code,
rx_attn->rx_bitmap_not_updated,
rx_attn->reserved_2,
rx_attn->msdu_done);
}
/**
* hal_rx_dump_mpdu_end_tlv() - dump RX mpdu_end TLV in structured
* human readable format.
* @mpdu_end: pointer the mpdu_end TLV in pkt.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_mpdu_end_tlv(struct rx_mpdu_end *mpdu_end,
uint8_t dbg_level)
{
hal_verbose_debug("rx_mpdu_end tlv - "
"rxpcu_mpdu_filter_in_category: %x "
"sw_frame_group_id: %x "
"phy_ppdu_id: %x "
"unsup_ktype_short_frame: %x "
"rx_in_tx_decrypt_byp: %x "
"overflow_err: %x "
"mpdu_length_err: %x "
"tkip_mic_err: %x "
"decrypt_err: %x "
"unencrypted_frame_err: %x "
"pn_fields_contain_valid_info: %x "
"fcs_err: %x "
"msdu_length_err: %x "
"rxdma0_destination_ring: %x "
"rxdma1_destination_ring: %x "
"decrypt_status_code: %x "
"rx_bitmap_not_updated: %x ",
mpdu_end->rxpcu_mpdu_filter_in_category,
mpdu_end->sw_frame_group_id,
mpdu_end->phy_ppdu_id,
mpdu_end->unsup_ktype_short_frame,
mpdu_end->rx_in_tx_decrypt_byp,
mpdu_end->overflow_err,
mpdu_end->mpdu_length_err,
mpdu_end->tkip_mic_err,
mpdu_end->decrypt_err,
mpdu_end->unencrypted_frame_err,
mpdu_end->pn_fields_contain_valid_info,
mpdu_end->fcs_err,
mpdu_end->msdu_length_err,
mpdu_end->rxdma0_destination_ring,
mpdu_end->rxdma1_destination_ring,
mpdu_end->decrypt_status_code,
mpdu_end->rx_bitmap_not_updated);
}
#ifdef NO_RX_PKT_HDR_TLV
static inline void hal_rx_dump_pkt_hdr_tlv(struct rx_pkt_tlvs *pkt_tlvs,
uint8_t dbg_level)
{
}
#else
/**
* hal_rx_dump_pkt_hdr_tlv() - dump RX pkt header TLV in hex format
* @pkt_tlvs: pointer the pkt_hdr_tlv in pkt.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_pkt_hdr_tlv(struct rx_pkt_tlvs *pkt_tlvs,
uint8_t dbg_level)
{
struct rx_pkt_hdr_tlv *pkt_hdr_tlv = &pkt_tlvs->pkt_hdr_tlv;
hal_verbose_debug("\n---------------\nrx_pkt_hdr_tlv"
"\n---------------\nphy_ppdu_id %d ",
pkt_hdr_tlv->phy_ppdu_id);
hal_verbose_hex_dump(pkt_hdr_tlv->rx_pkt_hdr, 128);
}
#endif
#define HAL_RX_MPDU_GET_FRAME_CONTROL_FIELD(_rx_mpdu_info) \ #define HAL_RX_MPDU_GET_FRAME_CONTROL_FIELD(_rx_mpdu_info) \
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \ (_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \
RX_MPDU_INFO_14_MPDU_FRAME_CONTROL_FIELD_OFFSET)), \ RX_MPDU_INFO_14_MPDU_FRAME_CONTROL_FIELD_OFFSET)), \

View File

@@ -407,15 +407,17 @@ void hal_rx_get_rtt_info_5018(void *rx_tlv,
/** /**
* hal_rx_dump_msdu_start_tlv_5018() - dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_5018() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_5018(void *msdustart, static void hal_rx_dump_msdu_start_tlv_5018(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_start tlv - " "rx_msdu_start tlv - "
@@ -482,15 +484,16 @@ static void hal_rx_dump_msdu_start_tlv_5018(void *msdustart,
/** /**
* hal_rx_dump_msdu_end_tlv_5018() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_5018() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_5018(void *msduend, static void hal_rx_dump_msdu_end_tlv_5018(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_end tlv - " "rx_msdu_end tlv - "
@@ -1742,9 +1745,6 @@ static void hal_hw_txrx_ops_attach_qca5018(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_5018; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_5018;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_5018; hal_rx_proc_phyrx_other_receive_info_tlv_5018;
hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_5018;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_5018;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_5018; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_5018;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_5018; hal_rx_mpdu_start_tid_get_5018;
@@ -1762,8 +1762,18 @@ static void hal_hw_txrx_ops_attach_qca5018(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_5018;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_5018;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv = hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li; hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -1878,6 +1888,14 @@ static void hal_hw_txrx_ops_attach_qca5018(struct hal_soc *hal_soc)
hal_soc->ops->hal_compute_reo_remap_ix2_ix3 = hal_compute_reo_remap_ix2_ix3_5018; hal_soc->ops->hal_compute_reo_remap_ix2_ix3 = hal_compute_reo_remap_ix2_ix3_5018;
hal_soc->ops->hal_setup_link_idle_list = hal_soc->ops->hal_setup_link_idle_list =
hal_setup_link_idle_list_generic_li; hal_setup_link_idle_list_generic_li;
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = NULL; hal_soc->ops->hal_compute_reo_remap_ix0 = NULL;
hal_soc->ops->hal_rx_tlv_msdu_len_get = hal_soc->ops->hal_rx_tlv_msdu_len_get =
hal_rx_msdu_start_get_len_5018; hal_rx_msdu_start_get_len_5018;

View File

@@ -1100,9 +1100,19 @@ static void hal_hw_txrx_ops_attach_6290(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6290; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6290;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_6290; hal_rx_proc_phyrx_other_receive_info_tlv_6290;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6290;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_6290; hal_rx_dump_msdu_start_tlv_6290;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6290; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6290; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6290;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_6290; hal_rx_mpdu_start_tid_get_6290;
@@ -1120,8 +1130,6 @@ static void hal_hw_txrx_ops_attach_6290(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -1232,6 +1240,14 @@ static void hal_hw_txrx_ops_attach_6290(struct hal_soc *hal_soc)
hal_soc->ops->hal_get_first_wow_wakeup_packet = hal_soc->ops->hal_get_first_wow_wakeup_packet =
hal_get_first_wow_wakeup_packet_6290; hal_get_first_wow_wakeup_packet_6290;
#endif #endif
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = NULL; hal_soc->ops->hal_compute_reo_remap_ix0 = NULL;
}; };

View File

@@ -524,16 +524,18 @@ void hal_rx_proc_phyrx_other_receive_info_tlv_6290(void *rx_tlv_hdr,
/** /**
* hal_rx_dump_msdu_start_tlv_6290() - dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_6290() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_6290(void *msdustart, static void hal_rx_dump_msdu_start_tlv_6290(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_start tlv - " "rx_msdu_start tlv - "
@@ -607,16 +609,17 @@ static void hal_rx_dump_msdu_start_tlv_6290(void *msdustart,
/** /**
* hal_rx_dump_msdu_end_tlv_6290() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_6290() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_6290(void *msduend, static void hal_rx_dump_msdu_end_tlv_6290(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_end tlv - " "rx_msdu_end tlv - "

View File

@@ -1171,9 +1171,19 @@ static void hal_hw_txrx_ops_attach_qca6390(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6390; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6390;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_6390; hal_rx_proc_phyrx_other_receive_info_tlv_6390;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6390;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_6390; hal_rx_dump_msdu_start_tlv_6390;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6390; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6390; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6390;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_6390; hal_rx_mpdu_start_tid_get_6390;
@@ -1191,8 +1201,6 @@ static void hal_hw_txrx_ops_attach_qca6390(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -1305,6 +1313,14 @@ static void hal_hw_txrx_ops_attach_qca6390(struct hal_soc *hal_soc)
hal_soc->ops->hal_get_first_wow_wakeup_packet = hal_soc->ops->hal_get_first_wow_wakeup_packet =
hal_get_first_wow_wakeup_packet_6390; hal_get_first_wow_wakeup_packet_6390;
#endif #endif
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = hal_soc->ops->hal_compute_reo_remap_ix0 =
hal_compute_reo_remap_ix0_6390; hal_compute_reo_remap_ix0_6390;
}; };

View File

@@ -473,15 +473,17 @@ void hal_rx_proc_phyrx_other_receive_info_tlv_6390(void *rx_tlv_hdr,
/** /**
* hal_rx_dump_msdu_start_tlv_6390() - dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_6390() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_6390(void *msdustart, uint8_t dbg_level) static void hal_rx_dump_msdu_start_tlv_6390(void *pkttlvs, uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
hal_verbose_debug( hal_verbose_debug(
"rx_msdu_start tlv (1/2) - " "rx_msdu_start tlv (1/2) - "
@@ -550,16 +552,17 @@ static void hal_rx_dump_msdu_start_tlv_6390(void *msdustart, uint8_t dbg_level)
/** /**
* hal_rx_dump_msdu_end_tlv_6390() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_6390() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_6390(void *msduend, static void hal_rx_dump_msdu_end_tlv_6390(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
__QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP, __QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP,
"rx_msdu_end tlv (1/2) - " "rx_msdu_end tlv (1/2) - "

View File

@@ -256,15 +256,17 @@ void hal_rx_proc_phyrx_other_receive_info_tlv_6490(void *rx_tlv_hdr,
/** /**
* hal_rx_dump_msdu_start_tlv_6490() - dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_6490() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_6490(void *msdustart, uint8_t dbg_level) static void hal_rx_dump_msdu_start_tlv_6490(void *pkttlvs, uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
__QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP, __QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP,
"rx_msdu_start tlv (1/2) - " "rx_msdu_start tlv (1/2) - "
@@ -333,16 +335,17 @@ static void hal_rx_dump_msdu_start_tlv_6490(void *msdustart, uint8_t dbg_level)
/** /**
* hal_rx_dump_msdu_end_tlv_6490() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_6490() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_6490(void *msduend, static void hal_rx_dump_msdu_end_tlv_6490(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
__QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP, __QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP,
"rx_msdu_end tlv (1/3) - " "rx_msdu_end tlv (1/3) - "
@@ -1784,9 +1787,19 @@ static void hal_hw_txrx_ops_attach_qca6490(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6490; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6490;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_6490; hal_rx_proc_phyrx_other_receive_info_tlv_6490;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6490;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_6490; hal_rx_dump_msdu_start_tlv_6490;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6490; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6490; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6490;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_6490; hal_rx_mpdu_start_tid_get_6490;
@@ -1804,8 +1817,6 @@ static void hal_hw_txrx_ops_attach_qca6490(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -1937,6 +1948,14 @@ static void hal_hw_txrx_ops_attach_qca6490(struct hal_soc *hal_soc)
hal_soc->ops->hal_get_first_wow_wakeup_packet = hal_soc->ops->hal_get_first_wow_wakeup_packet =
hal_get_first_wow_wakeup_packet_6490; hal_get_first_wow_wakeup_packet_6490;
#endif #endif
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = hal_soc->ops->hal_compute_reo_remap_ix0 =
hal_compute_reo_remap_ix0_6490; hal_compute_reo_remap_ix0_6490;
hal_soc->ops->hal_rx_tlv_l3_type_get = hal_soc->ops->hal_rx_tlv_l3_type_get =

View File

@@ -257,15 +257,17 @@ void hal_rx_proc_phyrx_other_receive_info_tlv_6750(void *rx_tlv_hdr,
/** /**
* hal_rx_dump_msdu_start_tlv_6750() - dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_6750() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_6750(void *msdustart, uint8_t dbg_level) static void hal_rx_dump_msdu_start_tlv_6750(void *pkttlvs, uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
hal_verbose_debug( hal_verbose_debug(
"rx_msdu_start tlv (1/2) - " "rx_msdu_start tlv (1/2) - "
@@ -334,16 +336,17 @@ static void hal_rx_dump_msdu_start_tlv_6750(void *msdustart, uint8_t dbg_level)
/** /**
* hal_rx_dump_msdu_end_tlv_6750() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_6750() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_6750(void *msduend, static void hal_rx_dump_msdu_end_tlv_6750(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
__QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP, __QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP,
"rx_msdu_end tlv (1/3) - " "rx_msdu_end tlv (1/3) - "
@@ -1927,9 +1930,19 @@ static void hal_hw_txrx_ops_attach_qca6750(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6750; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6750;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_6750; hal_rx_proc_phyrx_other_receive_info_tlv_6750;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6750;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_6750; hal_rx_dump_msdu_start_tlv_6750;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6750; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6750; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6750;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_6750; hal_rx_mpdu_start_tid_get_6750;
@@ -1947,8 +1960,6 @@ static void hal_hw_txrx_ops_attach_qca6750(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -2087,6 +2098,14 @@ static void hal_hw_txrx_ops_attach_qca6750(struct hal_soc *hal_soc)
hal_soc->ops->hal_get_first_wow_wakeup_packet = hal_soc->ops->hal_get_first_wow_wakeup_packet =
hal_get_first_wow_wakeup_packet_6750; hal_get_first_wow_wakeup_packet_6750;
#endif #endif
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = hal_soc->ops->hal_compute_reo_remap_ix0 =
hal_compute_reo_remap_ix0_6750; hal_compute_reo_remap_ix0_6750;
hal_soc->ops->hal_rx_tlv_msdu_len_get = hal_soc->ops->hal_rx_tlv_msdu_len_get =

View File

@@ -1288,9 +1288,19 @@ static void hal_hw_txrx_ops_attach_qca8074(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_8074; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_8074;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_8074; hal_rx_proc_phyrx_other_receive_info_tlv_8074;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_8074;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_8074; hal_rx_dump_msdu_start_tlv_8074;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_8074; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_8074; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_8074;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_8074; hal_rx_mpdu_start_tid_get_8074;
@@ -1308,8 +1318,6 @@ static void hal_hw_txrx_ops_attach_qca8074(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -1425,6 +1433,14 @@ static void hal_hw_txrx_ops_attach_qca8074(struct hal_soc *hal_soc)
hal_compute_reo_remap_ix2_ix3_8074v1; hal_compute_reo_remap_ix2_ix3_8074v1;
hal_soc->ops->hal_setup_link_idle_list = hal_soc->ops->hal_setup_link_idle_list =
hal_setup_link_idle_list_generic_li; hal_setup_link_idle_list_generic_li;
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = NULL; hal_soc->ops->hal_compute_reo_remap_ix0 = NULL;
}; };

View File

@@ -432,17 +432,19 @@ void hal_rx_proc_phyrx_other_receive_info_tlv_8074(void *rx_tlv_hdr,
/** /**
* hal_rx_dump_msdu_start_tlv_8074() : dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_8074() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_8074(void *msdustart, static void hal_rx_dump_msdu_start_tlv_8074(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_start tlv - " "rx_msdu_start tlv - "
@@ -512,16 +514,17 @@ static void hal_rx_dump_msdu_start_tlv_8074(void *msdustart,
/** /**
* hal_rx_dump_msdu_end_tlv_8074() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_8074() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_8074(void *msduend, static void hal_rx_dump_msdu_end_tlv_8074(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_end tlv - " "rx_msdu_end tlv - "

View File

@@ -1283,9 +1283,20 @@ static void hal_hw_txrx_ops_attach_qca8074v2(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_8074v2; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_8074v2;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_8074v2; hal_rx_proc_phyrx_other_receive_info_tlv_8074v2;
hal_soc->ops->hal_rx_dump_msdu_end_tlv =
hal_rx_dump_msdu_end_tlv_8074v2;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_8074v2; hal_rx_dump_msdu_start_tlv_8074v2;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_8074v2; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_8074v2; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_8074v2;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_8074v2; hal_rx_mpdu_start_tid_get_8074v2;
@@ -1303,8 +1314,6 @@ static void hal_hw_txrx_ops_attach_qca8074v2(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -1424,6 +1433,14 @@ static void hal_hw_txrx_ops_attach_qca8074v2(struct hal_soc *hal_soc)
hal_compute_reo_remap_ix2_ix3_8074v2; hal_compute_reo_remap_ix2_ix3_8074v2;
hal_soc->ops->hal_setup_link_idle_list = hal_soc->ops->hal_setup_link_idle_list =
hal_setup_link_idle_list_generic_li; hal_setup_link_idle_list_generic_li;
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = NULL; hal_soc->ops->hal_compute_reo_remap_ix0 = NULL;
}; };

View File

@@ -607,16 +607,18 @@ void hal_rx_get_rtt_info_8074v2(void *rx_tlv,
/** /**
* hal_rx_dump_msdu_start_tlv_8074v2() - dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_8074v2() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_8074v2(void *msdustart, static void hal_rx_dump_msdu_start_tlv_8074v2(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_start tlv - " "rx_msdu_start tlv - "
@@ -682,16 +684,17 @@ static void hal_rx_dump_msdu_start_tlv_8074v2(void *msdustart,
/** /**
* hal_rx_dump_msdu_end_tlv_8074v2() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_8074v2() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_8074v2(void *msduend, static void hal_rx_dump_msdu_end_tlv_8074v2(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_end tlv - " "rx_msdu_end tlv - "

View File

@@ -410,16 +410,18 @@ void hal_rx_get_rtt_info_6122(void *rx_tlv,
/** /**
* hal_rx_dump_msdu_start_tlv_6122() - dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_6122() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_6122(void *msdustart, static void hal_rx_dump_msdu_start_tlv_6122(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_start tlv - " "rx_msdu_start tlv - "
@@ -485,16 +487,17 @@ static void hal_rx_dump_msdu_start_tlv_6122(void *msdustart,
/** /**
* hal_rx_dump_msdu_end_tlv_6122() - dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_6122() - dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_6122(void *msduend, static void hal_rx_dump_msdu_end_tlv_6122(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_end tlv - " "rx_msdu_end tlv - "
@@ -1832,9 +1835,19 @@ static void hal_hw_txrx_ops_attach_qcn6122(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6122; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6122;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_6122; hal_rx_proc_phyrx_other_receive_info_tlv_6122;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6122;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_6122; hal_rx_dump_msdu_start_tlv_6122;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6122; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6122; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6122;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_6122; hal_rx_mpdu_start_tid_get_6122;
@@ -1852,8 +1865,6 @@ static void hal_hw_txrx_ops_attach_qcn6122(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -1976,6 +1987,14 @@ static void hal_hw_txrx_ops_attach_qcn6122(struct hal_soc *hal_soc)
hal_compute_reo_remap_ix2_ix3_6122; hal_compute_reo_remap_ix2_ix3_6122;
hal_soc->ops->hal_setup_link_idle_list = hal_soc->ops->hal_setup_link_idle_list =
hal_setup_link_idle_list_generic_li; hal_setup_link_idle_list_generic_li;
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = NULL; hal_soc->ops->hal_compute_reo_remap_ix0 = NULL;
hal_soc->ops->hal_rx_tlv_msdu_len_get = hal_soc->ops->hal_rx_tlv_msdu_len_get =
hal_rx_msdu_start_get_len_6122; hal_rx_msdu_start_get_len_6122;

View File

@@ -406,18 +406,21 @@ void hal_rx_get_rtt_info_9000(void *rx_tlv, void *ppdu_info_hdl)
RTT_GI_TYPE); RTT_GI_TYPE);
} }
#endif #endif
/** /**
* hal_rx_dump_msdu_start_tlv_9000() - dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_9000() - dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_9000(void *msdustart, static void hal_rx_dump_msdu_start_tlv_9000(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_start tlv - " "rx_msdu_start tlv - "
@@ -482,17 +485,18 @@ static void hal_rx_dump_msdu_start_tlv_9000(void *msdustart,
} }
/** /**
* hal_rx_dump_msdu_end_tlv_9000() - dump RX msdu_end TLV in structured human * hal_rx_dump_msdu_end_tlv_9000() - dump RX msdu_end TLV in structured
* readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to the pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_9000(void *msduend, static void hal_rx_dump_msdu_end_tlv_9000(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
QDF_TRACE(QDF_MODULE_ID_DP, dbg_level, QDF_TRACE(QDF_MODULE_ID_DP, dbg_level,
"rx_msdu_end tlv - " "rx_msdu_end tlv - "
@@ -1828,9 +1832,19 @@ static void hal_hw_txrx_ops_attach_qcn9000(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_9000; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_9000;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_9000; hal_rx_proc_phyrx_other_receive_info_tlv_9000;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_9000;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_li;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_9000; hal_rx_dump_msdu_start_tlv_9000;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_9000; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_li;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_li;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_9000; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_9000;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_9000; hal_rx_mpdu_start_tid_get_9000;
@@ -1848,8 +1862,6 @@ static void hal_hw_txrx_ops_attach_qcn9000(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_li; hal_rx_status_get_tlv_info_generic_li;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_generic_li; hal_rx_wbm_err_info_get_generic_li;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_li;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_li; hal_tx_set_pcp_tid_map_generic_li;
@@ -1973,6 +1985,14 @@ static void hal_hw_txrx_ops_attach_qcn9000(struct hal_soc *hal_soc)
hal_compute_reo_remap_ix2_ix3_9000; hal_compute_reo_remap_ix2_ix3_9000;
hal_soc->ops->hal_setup_link_idle_list = hal_soc->ops->hal_setup_link_idle_list =
hal_setup_link_idle_list_generic_li; hal_setup_link_idle_list_generic_li;
hal_soc->ops->hal_rx_tlv_get_pn_num = hal_rx_tlv_get_pn_num_li;
hal_soc->ops->hal_rx_tlv_mic_err_get = hal_rx_tlv_mic_err_get_li;
hal_soc->ops->hal_rx_tlv_decrypt_err_get =
hal_rx_tlv_decrypt_err_get_li;
hal_soc->ops->hal_rx_tlv_get_pkt_capture_flags =
hal_rx_tlv_get_pkt_capture_flags_li;
hal_soc->ops->hal_rx_mpdu_info_ampdu_flag_get =
hal_rx_mpdu_info_ampdu_flag_get_li;
hal_soc->ops->hal_compute_reo_remap_ix0 = NULL; hal_soc->ops->hal_compute_reo_remap_ix0 = NULL;
hal_soc->ops->hal_rx_tlv_msdu_len_get = hal_soc->ops->hal_rx_tlv_msdu_len_get =
hal_rx_msdu_start_get_len_9000; hal_rx_msdu_start_get_len_9000;

View File

@@ -240,21 +240,14 @@ static void hal_rx_dump_pkt_tlvs_rh(hal_soc_handle_t hal_soc_hdl,
uint8_t *buf, uint8_t dbg_level) uint8_t *buf, uint8_t dbg_level)
{ {
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)buf;
struct rx_attention *rx_attn = &pkt_tlvs->attn_tlv.rx_attn;
struct rx_mpdu_start *mpdu_start =
&pkt_tlvs->mpdu_start_tlv.rx_mpdu_start;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
struct rx_mpdu_end *mpdu_end = &pkt_tlvs->mpdu_end_tlv.rx_mpdu_end;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
struct hal_soc *hal_soc = (struct hal_soc *)hal_soc_hdl; struct hal_soc *hal_soc = (struct hal_soc *)hal_soc_hdl;
hal_rx_dump_rx_attention_tlv(rx_attn, dbg_level); hal_rx_dump_msdu_end_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_mpdu_start_tlv(mpdu_start, dbg_level, hal_soc); hal_rx_dump_rx_attention_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_msdu_start_tlv(hal_soc, msdu_start, dbg_level); hal_rx_dump_msdu_start_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_mpdu_end_tlv(mpdu_end, dbg_level); hal_rx_dump_mpdu_start_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_msdu_end_tlv(hal_soc, msdu_end, dbg_level); hal_rx_dump_mpdu_end_tlv(hal_soc, pkt_tlvs, dbg_level);
hal_rx_dump_pkt_hdr_tlv(pkt_tlvs, dbg_level); hal_rx_dump_pkt_hdr_tlv(hal_soc, pkt_tlvs, dbg_level);
} }
/** /**

View File

@@ -1629,17 +1629,215 @@ hal_rx_status_get_tlv_info_generic_rh(void *rx_tlv_hdr, void *ppduinfo,
} }
/** /**
* hal_rx_dump_mpdu_start_tlv_generic_rh: dump RX mpdu_start TLV in structured * hal_rx_dump_rx_attention_tlv_generic_rh: dump RX attention TLV in structured
* human readable format. * humman readable format.
* @mpdustart: pointer the rx_attention TLV in pkt. * @pkttlvs: pointer to pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static inline void hal_rx_dump_mpdu_start_tlv_generic_rh(void *mpdustart, static inline void hal_rx_dump_rx_attention_tlv_generic_rh(void *pkttlvs,
uint8_t dbg_level)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_attention *rx_attn = &pkt_tlvs->attn_tlv.rx_attn;
hal_verbose_debug("rx_attention tlv (1/2) - "
"rxpcu_mpdu_filter_in_category: %x "
"sw_frame_group_id: %x "
"reserved_0: %x "
"phy_ppdu_id: %x "
"first_mpdu : %x "
"reserved_1a: %x "
"mcast_bcast: %x "
"ast_index_not_found: %x "
"ast_index_timeout: %x "
"power_mgmt: %x "
"non_qos: %x "
"null_data: %x "
"mgmt_type: %x "
"ctrl_type: %x "
"more_data: %x "
"eosp: %x "
"a_msdu_error: %x "
"fragment_flag: %x "
"order: %x "
"cce_match: %x "
"overflow_err: %x "
"msdu_length_err: %x "
"tcp_udp_chksum_fail: %x "
"ip_chksum_fail: %x "
"sa_idx_invalid: %x "
"da_idx_invalid: %x "
"reserved_1b: %x "
"rx_in_tx_decrypt_byp: %x ",
rx_attn->rxpcu_mpdu_filter_in_category,
rx_attn->sw_frame_group_id,
rx_attn->reserved_0,
rx_attn->phy_ppdu_id,
rx_attn->first_mpdu,
rx_attn->reserved_1a,
rx_attn->mcast_bcast,
rx_attn->ast_index_not_found,
rx_attn->ast_index_timeout,
rx_attn->power_mgmt,
rx_attn->non_qos,
rx_attn->null_data,
rx_attn->mgmt_type,
rx_attn->ctrl_type,
rx_attn->more_data,
rx_attn->eosp,
rx_attn->a_msdu_error,
rx_attn->fragment_flag,
rx_attn->order,
rx_attn->cce_match,
rx_attn->overflow_err,
rx_attn->msdu_length_err,
rx_attn->tcp_udp_chksum_fail,
rx_attn->ip_chksum_fail,
rx_attn->sa_idx_invalid,
rx_attn->da_idx_invalid,
rx_attn->reserved_1b,
rx_attn->rx_in_tx_decrypt_byp);
hal_verbose_debug("rx_attention tlv (2/2) - "
"encrypt_required: %x "
"directed: %x "
"buffer_fragment: %x "
"mpdu_length_err: %x "
"tkip_mic_err: %x "
"decrypt_err: %x "
"unencrypted_frame_err: %x "
"fcs_err: %x "
"flow_idx_timeout: %x "
"flow_idx_invalid: %x "
"wifi_parser_error: %x "
"amsdu_parser_error: %x "
"sa_idx_timeout: %x "
"da_idx_timeout: %x "
"msdu_limit_error: %x "
"da_is_valid: %x "
"da_is_mcbc: %x "
"sa_is_valid: %x "
"decrypt_status_code: %x "
"rx_bitmap_not_updated: %x "
"reserved_2: %x "
"msdu_done: %x ",
rx_attn->encrypt_required,
rx_attn->directed,
rx_attn->buffer_fragment,
rx_attn->mpdu_length_err,
rx_attn->tkip_mic_err,
rx_attn->decrypt_err,
rx_attn->unencrypted_frame_err,
rx_attn->fcs_err,
rx_attn->flow_idx_timeout,
rx_attn->flow_idx_invalid,
rx_attn->wifi_parser_error,
rx_attn->amsdu_parser_error,
rx_attn->sa_idx_timeout,
rx_attn->da_idx_timeout,
rx_attn->msdu_limit_error,
rx_attn->da_is_valid,
rx_attn->da_is_mcbc,
rx_attn->sa_is_valid,
rx_attn->decrypt_status_code,
rx_attn->rx_bitmap_not_updated,
rx_attn->reserved_2,
rx_attn->msdu_done);
}
/**
* hal_rx_dump_mpdu_end_tlv_generic_rh: dump RX mpdu_end TLV in structured
* human readable format.
* @pkttlvs: pointer to pkttlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_mpdu_end_tlv_generic_rh(void *pkttlvs,
uint8_t dbg_level)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_mpdu_end *mpdu_end = &pkt_tlvs->mpdu_end_tlv.rx_mpdu_end;
hal_verbose_debug("rx_mpdu_end tlv - "
"rxpcu_mpdu_filter_in_category: %x "
"sw_frame_group_id: %x "
"phy_ppdu_id: %x "
"unsup_ktype_short_frame: %x "
"rx_in_tx_decrypt_byp: %x "
"overflow_err: %x "
"mpdu_length_err: %x "
"tkip_mic_err: %x "
"decrypt_err: %x "
"unencrypted_frame_err: %x "
"pn_fields_contain_valid_info: %x "
"fcs_err: %x "
"msdu_length_err: %x "
"rxdma0_destination_ring: %x "
"rxdma1_destination_ring: %x "
"decrypt_status_code: %x "
"rx_bitmap_not_updated: %x ",
mpdu_end->rxpcu_mpdu_filter_in_category,
mpdu_end->sw_frame_group_id,
mpdu_end->phy_ppdu_id,
mpdu_end->unsup_ktype_short_frame,
mpdu_end->rx_in_tx_decrypt_byp,
mpdu_end->overflow_err,
mpdu_end->mpdu_length_err,
mpdu_end->tkip_mic_err,
mpdu_end->decrypt_err,
mpdu_end->unencrypted_frame_err,
mpdu_end->pn_fields_contain_valid_info,
mpdu_end->fcs_err,
mpdu_end->msdu_length_err,
mpdu_end->rxdma0_destination_ring,
mpdu_end->rxdma1_destination_ring,
mpdu_end->decrypt_status_code,
mpdu_end->rx_bitmap_not_updated);
}
#ifdef NO_RX_PKT_HDR_TLV
static inline void hal_rx_dump_pkt_hdr_tlv_generic_rh(void *pkttlvs,
uint8_t dbg_level)
{
}
#else
/**
* hal_rx_dump_pkt_hdr_tlv_generic_rh: dump RX pkt header TLV in hex format
* @pkttlvs: pointer to pkttlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_pkt_hdr_tlv_generic_rh(void *pkttlvs,
uint8_t dbg_level)
{
struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_pkt_hdr_tlv *pkt_hdr_tlv = &pkt_tlvs->pkt_hdr_tlv;
hal_verbose_debug("\n---------------\nrx_pkt_hdr_tlv"
"\n---------------\nphy_ppdu_id %d ",
pkt_hdr_tlv->phy_ppdu_id);
hal_verbose_hex_dump(pkt_hdr_tlv->rx_pkt_hdr, 128);
}
#endif
/**
* hal_rx_dump_mpdu_start_tlv_generic_rh: dump RX mpdu_start TLV in structured
* human readable format.
* @pkttlvs: pointer to pkttlvs.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_mpdu_start_tlv_generic_rh(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_mpdu_start *mpdu_start = (struct rx_mpdu_start *)mpdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_mpdu_start *mpdu_start =
&pkt_tlvs->mpdu_start_tlv.rx_mpdu_start;
struct rx_mpdu_info *mpdu_info = struct rx_mpdu_info *mpdu_info =
(struct rx_mpdu_info *)&mpdu_start->rx_mpdu_info_details; (struct rx_mpdu_info *)&mpdu_start->rx_mpdu_info_details;

View File

@@ -577,195 +577,6 @@ hal_rx_mpdu_peer_meta_data_get_rh(uint8_t *buf)
RX_MPDU_END_1_TKIP_MIC_ERR_MASK, \ RX_MPDU_END_1_TKIP_MIC_ERR_MASK, \
RX_MPDU_END_1_TKIP_MIC_ERR_LSB)) RX_MPDU_END_1_TKIP_MIC_ERR_LSB))
/**
* hal_rx_dump_rx_attention_tlv: dump RX attention TLV in structured
* humman readable format.
* @rx_attn: pointer the rx_attention TLV in pkt.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_rx_attention_tlv(struct rx_attention *rx_attn,
uint8_t dbg_level)
{
hal_verbose_debug("rx_attention tlv (1/2) - "
"rxpcu_mpdu_filter_in_category: %x "
"sw_frame_group_id: %x "
"reserved_0: %x "
"phy_ppdu_id: %x "
"first_mpdu : %x "
"reserved_1a: %x "
"mcast_bcast: %x "
"ast_index_not_found: %x "
"ast_index_timeout: %x "
"power_mgmt: %x "
"non_qos: %x "
"null_data: %x "
"mgmt_type: %x "
"ctrl_type: %x "
"more_data: %x "
"eosp: %x "
"a_msdu_error: %x "
"fragment_flag: %x "
"order: %x "
"cce_match: %x "
"overflow_err: %x "
"msdu_length_err: %x "
"tcp_udp_chksum_fail: %x "
"ip_chksum_fail: %x "
"sa_idx_invalid: %x "
"da_idx_invalid: %x "
"reserved_1b: %x "
"rx_in_tx_decrypt_byp: %x ",
rx_attn->rxpcu_mpdu_filter_in_category,
rx_attn->sw_frame_group_id,
rx_attn->reserved_0,
rx_attn->phy_ppdu_id,
rx_attn->first_mpdu,
rx_attn->reserved_1a,
rx_attn->mcast_bcast,
rx_attn->ast_index_not_found,
rx_attn->ast_index_timeout,
rx_attn->power_mgmt,
rx_attn->non_qos,
rx_attn->null_data,
rx_attn->mgmt_type,
rx_attn->ctrl_type,
rx_attn->more_data,
rx_attn->eosp,
rx_attn->a_msdu_error,
rx_attn->fragment_flag,
rx_attn->order,
rx_attn->cce_match,
rx_attn->overflow_err,
rx_attn->msdu_length_err,
rx_attn->tcp_udp_chksum_fail,
rx_attn->ip_chksum_fail,
rx_attn->sa_idx_invalid,
rx_attn->da_idx_invalid,
rx_attn->reserved_1b,
rx_attn->rx_in_tx_decrypt_byp);
hal_verbose_debug("rx_attention tlv (2/2) - "
"encrypt_required: %x "
"directed: %x "
"buffer_fragment: %x "
"mpdu_length_err: %x "
"tkip_mic_err: %x "
"decrypt_err: %x "
"unencrypted_frame_err: %x "
"fcs_err: %x "
"flow_idx_timeout: %x "
"flow_idx_invalid: %x "
"wifi_parser_error: %x "
"amsdu_parser_error: %x "
"sa_idx_timeout: %x "
"da_idx_timeout: %x "
"msdu_limit_error: %x "
"da_is_valid: %x "
"da_is_mcbc: %x "
"sa_is_valid: %x "
"decrypt_status_code: %x "
"rx_bitmap_not_updated: %x "
"reserved_2: %x "
"msdu_done: %x ",
rx_attn->encrypt_required,
rx_attn->directed,
rx_attn->buffer_fragment,
rx_attn->mpdu_length_err,
rx_attn->tkip_mic_err,
rx_attn->decrypt_err,
rx_attn->unencrypted_frame_err,
rx_attn->fcs_err,
rx_attn->flow_idx_timeout,
rx_attn->flow_idx_invalid,
rx_attn->wifi_parser_error,
rx_attn->amsdu_parser_error,
rx_attn->sa_idx_timeout,
rx_attn->da_idx_timeout,
rx_attn->msdu_limit_error,
rx_attn->da_is_valid,
rx_attn->da_is_mcbc,
rx_attn->sa_is_valid,
rx_attn->decrypt_status_code,
rx_attn->rx_bitmap_not_updated,
rx_attn->reserved_2,
rx_attn->msdu_done);
}
/**
* hal_rx_dump_mpdu_end_tlv: dump RX mpdu_end TLV in structured
* human readable format.
* @mpdu_end: pointer the mpdu_end TLV in pkt.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_mpdu_end_tlv(struct rx_mpdu_end *mpdu_end,
uint8_t dbg_level)
{
hal_verbose_debug("rx_mpdu_end tlv - "
"rxpcu_mpdu_filter_in_category: %x "
"sw_frame_group_id: %x "
"phy_ppdu_id: %x "
"unsup_ktype_short_frame: %x "
"rx_in_tx_decrypt_byp: %x "
"overflow_err: %x "
"mpdu_length_err: %x "
"tkip_mic_err: %x "
"decrypt_err: %x "
"unencrypted_frame_err: %x "
"pn_fields_contain_valid_info: %x "
"fcs_err: %x "
"msdu_length_err: %x "
"rxdma0_destination_ring: %x "
"rxdma1_destination_ring: %x "
"decrypt_status_code: %x "
"rx_bitmap_not_updated: %x ",
mpdu_end->rxpcu_mpdu_filter_in_category,
mpdu_end->sw_frame_group_id,
mpdu_end->phy_ppdu_id,
mpdu_end->unsup_ktype_short_frame,
mpdu_end->rx_in_tx_decrypt_byp,
mpdu_end->overflow_err,
mpdu_end->mpdu_length_err,
mpdu_end->tkip_mic_err,
mpdu_end->decrypt_err,
mpdu_end->unencrypted_frame_err,
mpdu_end->pn_fields_contain_valid_info,
mpdu_end->fcs_err,
mpdu_end->msdu_length_err,
mpdu_end->rxdma0_destination_ring,
mpdu_end->rxdma1_destination_ring,
mpdu_end->decrypt_status_code,
mpdu_end->rx_bitmap_not_updated);
}
#ifdef NO_RX_PKT_HDR_TLV
static inline void hal_rx_dump_pkt_hdr_tlv(struct rx_pkt_tlvs *pkt_tlvs,
uint8_t dbg_level)
{
}
#else
/**
* hal_rx_dump_pkt_hdr_tlv: dump RX pkt header TLV in hex format
* @pkt_tlvs: pointer the pkt_hdr_tlv in pkt.
* @dbg_level: log level.
*
* Return: void
*/
static inline void hal_rx_dump_pkt_hdr_tlv(struct rx_pkt_tlvs *pkt_tlvs,
uint8_t dbg_level)
{
struct rx_pkt_hdr_tlv *pkt_hdr_tlv = &pkt_tlvs->pkt_hdr_tlv;
hal_verbose_debug("\n---------------\nrx_pkt_hdr_tlv"
"\n---------------\nphy_ppdu_id %d ",
pkt_hdr_tlv->phy_ppdu_id);
hal_verbose_hex_dump(pkt_hdr_tlv->rx_pkt_hdr, 128);
}
#endif
#define HAL_RX_MPDU_GET_FRAME_CONTROL_FIELD(_rx_mpdu_info) \ #define HAL_RX_MPDU_GET_FRAME_CONTROL_FIELD(_rx_mpdu_info) \
(_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \ (_HAL_MS((*_OFFSET_TO_WORD_PTR(_rx_mpdu_info, \
RX_MPDU_INFO_14_MPDU_FRAME_CONTROL_FIELD_OFFSET)), \ RX_MPDU_INFO_14_MPDU_FRAME_CONTROL_FIELD_OFFSET)), \

View File

@@ -533,15 +533,17 @@ void hal_rx_proc_phyrx_other_receive_info_tlv_6450(void *rx_tlv_hdr,
/** /**
* hal_rx_dump_msdu_start_tlv_6450() : dump RX msdu_start TLV in structured * hal_rx_dump_msdu_start_tlv_6450() : dump RX msdu_start TLV in structured
* human readable format. * human readable format.
* @msdustart: pointer the msdu_start TLV in pkt. * @pkttlvs: pointer to pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_start_tlv_6450(void *msdustart, uint8_t dbg_level) static void hal_rx_dump_msdu_start_tlv_6450(void *pkttlvs, uint8_t dbg_level)
{ {
struct rx_msdu_start *msdu_start = (struct rx_msdu_start *)msdustart; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_start *msdu_start =
&pkt_tlvs->msdu_start_tlv.rx_msdu_start;
hal_verbose_debug( hal_verbose_debug(
"rx_msdu_start tlv (1/2) - " "rx_msdu_start tlv (1/2) - "
@@ -610,16 +612,17 @@ static void hal_rx_dump_msdu_start_tlv_6450(void *msdustart, uint8_t dbg_level)
/** /**
* hal_rx_dump_msdu_end_tlv_6450: dump RX msdu_end TLV in structured * hal_rx_dump_msdu_end_tlv_6450: dump RX msdu_end TLV in structured
* human readable format. * human readable format.
* @msduend: pointer the msdu_end TLV in pkt. * @pkttlvs: pointer to pkttlvs.
* @dbg_level: log level. * @dbg_level: log level.
* *
* Return: void * Return: void
*/ */
static void hal_rx_dump_msdu_end_tlv_6450(void *msduend, static void hal_rx_dump_msdu_end_tlv_6450(void *pkttlvs,
uint8_t dbg_level) uint8_t dbg_level)
{ {
struct rx_msdu_end *msdu_end = (struct rx_msdu_end *)msduend; struct rx_pkt_tlvs *pkt_tlvs = (struct rx_pkt_tlvs *)pkttlvs;
struct rx_msdu_end *msdu_end = &pkt_tlvs->msdu_end_tlv.rx_msdu_end;
__QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP, __QDF_TRACE_RL(dbg_level, QDF_MODULE_ID_DP,
"rx_msdu_end tlv (1/3) - " "rx_msdu_end tlv (1/3) - "
@@ -1813,9 +1816,20 @@ static void hal_hw_txrx_ops_attach_wcn6450(struct hal_soc *hal_soc)
hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6450; hal_soc->ops->hal_rx_get_tlv = hal_rx_get_tlv_6450;
hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv = hal_soc->ops->hal_rx_proc_phyrx_other_receive_info_tlv =
hal_rx_proc_phyrx_other_receive_info_tlv_6450; hal_rx_proc_phyrx_other_receive_info_tlv_6450;
hal_soc->ops->hal_rx_dump_msdu_end_tlv =
hal_rx_dump_msdu_end_tlv_6450;
hal_soc->ops->hal_rx_dump_rx_attention_tlv =
hal_rx_dump_rx_attention_tlv_generic_rh;
hal_soc->ops->hal_rx_dump_msdu_start_tlv = hal_soc->ops->hal_rx_dump_msdu_start_tlv =
hal_rx_dump_msdu_start_tlv_6450; hal_rx_dump_msdu_start_tlv_6450;
hal_soc->ops->hal_rx_dump_msdu_end_tlv = hal_rx_dump_msdu_end_tlv_6450; hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_rh;
hal_soc->ops->hal_rx_dump_mpdu_end_tlv =
hal_rx_dump_mpdu_end_tlv_generic_rh;
hal_soc->ops->hal_rx_dump_pkt_hdr_tlv =
hal_rx_dump_pkt_hdr_tlv_generic_rh;
hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6450; hal_soc->ops->hal_get_link_desc_size = hal_get_link_desc_size_6450;
hal_soc->ops->hal_rx_mpdu_start_tid_get = hal_soc->ops->hal_rx_mpdu_start_tid_get =
hal_rx_mpdu_start_tid_get_6450; hal_rx_mpdu_start_tid_get_6450;
@@ -1833,8 +1847,6 @@ static void hal_hw_txrx_ops_attach_wcn6450(struct hal_soc *hal_soc)
hal_rx_status_get_tlv_info_generic_rh; hal_rx_status_get_tlv_info_generic_rh;
hal_soc->ops->hal_rx_wbm_err_info_get = hal_soc->ops->hal_rx_wbm_err_info_get =
hal_rx_wbm_err_info_get_6450; hal_rx_wbm_err_info_get_6450;
hal_soc->ops->hal_rx_dump_mpdu_start_tlv =
hal_rx_dump_mpdu_start_tlv_generic_rh;
hal_soc->ops->hal_tx_set_pcp_tid_map = hal_soc->ops->hal_tx_set_pcp_tid_map =
hal_tx_set_pcp_tid_map_generic_rh; hal_tx_set_pcp_tid_map_generic_rh;
hal_soc->ops->hal_tx_update_pcp_tid_map = hal_soc->ops->hal_tx_update_pcp_tid_map =