qcacmn: Fix dp/wifi3.0/dp_htt.* documentation

The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_htt.[ch], so fix those issues. In addition,
there are a number of instances where public functions have their
implementation documented instead of having their interface
documented, so move that documentation.

Change-Id: Ic8eb4c5e7f04de45a785aa4278cb97f1895e53d1
CRs-Fixed: 3373162
This commit is contained in:
Jeff Johnson
2023-01-04 17:47:31 -08:00
committed by Madan Koyyalamudi
parent f2ffa7ab59
commit 1f2cc1a1f4
2 changed files with 243 additions and 337 deletions

View File

@@ -98,10 +98,6 @@ htt_htc_pkt_free(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt)
qdf_export_symbol(htt_htc_pkt_free); qdf_export_symbol(htt_htc_pkt_free);
/*
* htt_htc_pkt_pool_free() - Free HTC packet pool
* @htt_soc: HTT SOC handle
*/
void void
htt_htc_pkt_pool_free(struct htt_soc *soc) htt_htc_pkt_pool_free(struct htt_soc *soc)
{ {
@@ -118,9 +114,9 @@ htt_htc_pkt_pool_free(struct htt_soc *soc)
#ifndef ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST #ifndef ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST
/* /**
* htt_htc_misc_pkt_list_trim() - trim misc list * htt_htc_misc_pkt_list_trim() - trim misc list
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @level: max no. of pkts in list * @level: max no. of pkts in list
*/ */
static void static void
@@ -151,11 +147,6 @@ htt_htc_misc_pkt_list_trim(struct htt_soc *soc, int level)
HTT_TX_MUTEX_RELEASE(&soc->htt_tx_mutex); HTT_TX_MUTEX_RELEASE(&soc->htt_tx_mutex);
} }
/*
* htt_htc_misc_pkt_list_add() - Add pkt to misc list
* @htt_soc: HTT SOC handle
* @dp_htt_htc_pkt: pkt to be added to list
*/
void void
htt_htc_misc_pkt_list_add(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt) htt_htc_misc_pkt_list_add(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt)
{ {
@@ -183,9 +174,9 @@ htt_htc_misc_pkt_list_add(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt)
qdf_export_symbol(htt_htc_misc_pkt_list_add); qdf_export_symbol(htt_htc_misc_pkt_list_add);
#endif /* ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST */ #endif /* ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST */
/* /**
* htt_htc_misc_pkt_pool_free() - free pkts in misc list * htt_htc_misc_pkt_pool_free() - free pkts in misc list
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
*/ */
static void static void
htt_htc_misc_pkt_pool_free(struct htt_soc *soc) htt_htc_misc_pkt_pool_free(struct htt_soc *soc)
@@ -221,7 +212,7 @@ htt_htc_misc_pkt_pool_free(struct htt_soc *soc)
soc->stats.fail_count, soc->stats.skip_count); soc->stats.fail_count, soc->stats.skip_count);
} }
/* /**
* htt_t2h_mac_addr_deswizzle() - Swap MAC addr bytes if FW endianness differ * htt_t2h_mac_addr_deswizzle() - Swap MAC addr bytes if FW endianness differ
* @tgt_mac_addr: Target MAC * @tgt_mac_addr: Target MAC
* @buffer: Output buffer * @buffer: Output buffer
@@ -255,7 +246,7 @@ htt_t2h_mac_addr_deswizzle(u_int8_t *tgt_mac_addr, u_int8_t *buffer)
#endif #endif
} }
/* /**
* dp_htt_h2t_send_complete_free_netbuf() - Free completed buffer * dp_htt_h2t_send_complete_free_netbuf() - Free completed buffer
* @soc: SOC handle * @soc: SOC handle
* @status: Completion status * @status: Completion status
@@ -269,7 +260,7 @@ dp_htt_h2t_send_complete_free_netbuf(
} }
#ifdef ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST #ifdef ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST
/* /**
* dp_htt_h2t_send_complete() - H2T completion handler * dp_htt_h2t_send_complete() - H2T completion handler
* @context: Opaque context (HTT SOC handle) * @context: Opaque context (HTT SOC handle)
* @htc_pkt: HTC packet * @htc_pkt: HTC packet
@@ -296,11 +287,6 @@ dp_htt_h2t_send_complete(void *context, HTC_PACKET *htc_pkt)
#else /* ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST */ #else /* ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST */
/*
* * dp_htt_h2t_send_complete() - H2T completion handler
* * @context: Opaque context (HTT SOC handle)
* * @htc_pkt: HTC packet
* */
static void static void
dp_htt_h2t_send_complete(void *context, HTC_PACKET *htc_pkt) dp_htt_h2t_send_complete(void *context, HTC_PACKET *htc_pkt)
{ {
@@ -318,7 +304,7 @@ dp_htt_h2t_send_complete(void *context, HTC_PACKET *htc_pkt)
netbuf = (qdf_nbuf_t) htc_pkt->pNetBufContext; netbuf = (qdf_nbuf_t) htc_pkt->pNetBufContext;
/* /*
* adf sendcomplete is required for windows only * adf sendcomplete is required for windows only
*/ */
/* qdf_nbuf_set_sendcompleteflag(netbuf, TRUE); */ /* qdf_nbuf_set_sendcompleteflag(netbuf, TRUE); */
if (send_complete_part2){ if (send_complete_part2){
send_complete_part2( send_complete_part2(
@@ -330,9 +316,9 @@ dp_htt_h2t_send_complete(void *context, HTC_PACKET *htc_pkt)
#endif /* ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST */ #endif /* ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST */
/* /**
* dp_htt_h2t_add_tcl_metadata_ver_v1() - Add tcl_metadata version V1 * dp_htt_h2t_add_tcl_metadata_ver_v1() - Add tcl_metadata version V1
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @msg: Pointer to nbuf * @msg: Pointer to nbuf
* *
* Return: 0 on success; error code on failure * Return: 0 on success; error code on failure
@@ -376,9 +362,9 @@ static int dp_htt_h2t_add_tcl_metadata_ver_v1(struct htt_soc *soc,
} }
#ifdef QCA_DP_TX_FW_METADATA_V2 #ifdef QCA_DP_TX_FW_METADATA_V2
/* /**
* dp_htt_h2t_add_tcl_metadata_ver_v2() - Add tcl_metadata version V2 * dp_htt_h2t_add_tcl_metadata_ver_v2() - Add tcl_metadata version V2
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @msg: Pointer to nbuf * @msg: Pointer to nbuf
* *
* Return: 0 on success; error code on failure * Return: 0 on success; error code on failure
@@ -430,9 +416,9 @@ static int dp_htt_h2t_add_tcl_metadata_ver_v2(struct htt_soc *soc,
return QDF_STATUS_SUCCESS; return QDF_STATUS_SUCCESS;
} }
/* /**
* dp_htt_h2t_add_tcl_metadata_ver() - Add tcl_metadata version * dp_htt_h2t_add_tcl_metadata_ver() - Add tcl_metadata version
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @msg: Pointer to nbuf * @msg: Pointer to nbuf
* *
* Return: 0 on success; error code on failure * Return: 0 on success; error code on failure
@@ -453,9 +439,9 @@ static int dp_htt_h2t_add_tcl_metadata_ver(struct htt_soc *soc, qdf_nbuf_t *msg)
} }
#endif #endif
/* /**
* htt_h2t_ver_req_msg() - Send HTT version request message to target * htt_h2t_ver_req_msg() - Send HTT version request message to target
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* *
* Return: 0 on success; error code on failure * Return: 0 on success; error code on failure
*/ */
@@ -493,15 +479,6 @@ static int htt_h2t_ver_req_msg(struct htt_soc *soc)
return status; return status;
} }
/*
* htt_srng_setup() - Send SRNG setup message to target
* @htt_soc: HTT SOC handle
* @mac_id: MAC Id
* @hal_srng: Opaque HAL SRNG pointer
* @hal_ring_type: SRNG ring type
*
* Return: 0 on success; error code on failure
*/
int htt_srng_setup(struct htt_soc *soc, int mac_id, int htt_srng_setup(struct htt_soc *soc, int mac_id,
hal_ring_handle_t hal_ring_hdl, hal_ring_handle_t hal_ring_hdl,
int hal_ring_type) int hal_ring_type)
@@ -799,15 +776,6 @@ fail0:
qdf_export_symbol(htt_srng_setup); qdf_export_symbol(htt_srng_setup);
#ifdef QCA_SUPPORT_FULL_MON #ifdef QCA_SUPPORT_FULL_MON
/**
* htt_h2t_full_mon_cfg() - Send full monitor configuration msg to FW
*
* @htt_soc: HTT Soc handle
* @pdev_id: Radio id
* @dp_full_mon_config: enabled/disable configuration
*
* Return: Success when HTT message is sent, error on failure
*/
int htt_h2t_full_mon_cfg(struct htt_soc *htt_soc, int htt_h2t_full_mon_cfg(struct htt_soc *htt_soc,
uint8_t pdev_id, uint8_t pdev_id,
enum dp_full_mon_config config) enum dp_full_mon_config config)
@@ -943,17 +911,6 @@ dp_mon_rx_enable_phy_errors(uint32_t *msg_word,
} }
#endif #endif
/*
* htt_h2t_rx_ring_cfg() - Send SRNG packet and TLV filter
* config message to target
* @htt_soc: HTT SOC handle
* @pdev_id: WIN- PDEV Id, MCL- mac id
* @hal_srng: Opaque HAL SRNG pointer
* @hal_ring_type: SRNG ring type
* @ring_buf_size: SRNG buffer size
* @htt_tlv_filter: Rx SRNG TLV and filter setting
* Return: 0 on success; error code on failure
*/
int htt_h2t_rx_ring_cfg(struct htt_soc *htt_soc, int pdev_id, int htt_h2t_rx_ring_cfg(struct htt_soc *htt_soc, int pdev_id,
hal_ring_handle_t hal_ring_hdl, hal_ring_handle_t hal_ring_hdl,
int hal_ring_type, int ring_buf_size, int hal_ring_type, int ring_buf_size,
@@ -1854,12 +1811,12 @@ dp_htt_stats_sysfs_update_config(struct dp_pdev *pdev)
soc->sysfs_config->printing_mode = PRINTING_MODE_ENABLED; soc->sysfs_config->printing_mode = PRINTING_MODE_ENABLED;
} }
/* /**
* dp_htt_stats_sysfs_set_event() - Set sysfs stats event. * dp_htt_stats_sysfs_set_event() - Set sysfs stats event.
* @soc: soc handle. * @soc: soc handle.
* @msg_word: Pointer to htt msg word. * @msg_word: Pointer to htt msg word.
* *
* @return: void * Return: void
*/ */
static inline void static inline void
dp_htt_stats_sysfs_set_event(struct dp_soc *soc, uint32_t *msg_word) dp_htt_stats_sysfs_set_event(struct dp_soc *soc, uint32_t *msg_word)
@@ -1908,13 +1865,14 @@ dp_htt_set_pdev_obss_stats(struct dp_pdev *pdev, uint32_t tag_type,
/** /**
* dp_process_htt_stat_msg(): Process the list of buffers of HTT EXT stats * dp_process_htt_stat_msg(): Process the list of buffers of HTT EXT stats
* @htt_stats: htt stats info * @htt_stats: htt stats info
* @soc: DP soc
* *
* The FW sends the HTT EXT STATS as a stream of T2H messages. Each T2H message * The FW sends the HTT EXT STATS as a stream of T2H messages. Each T2H message
* contains sub messages which are identified by a TLV header. * contains sub messages which are identified by a TLV header.
* In this function we will process the stream of T2H messages and read all the * In this function we will process the stream of T2H messages and read all the
* TLV contained in the message. * TLV contained in the message.
* *
* THe following cases have been taken care of * The following cases have been taken care of
* Case 1: When the tlv_remain_length <= msg_remain_length of HTT MSG buffer * Case 1: When the tlv_remain_length <= msg_remain_length of HTT MSG buffer
* In this case the buffer will contain multiple tlvs. * In this case the buffer will contain multiple tlvs.
* Case 2: When the tlv_remain_length > msg_remain_length of HTT MSG buffer. * Case 2: When the tlv_remain_length > msg_remain_length of HTT MSG buffer.
@@ -1923,7 +1881,7 @@ dp_htt_set_pdev_obss_stats(struct dp_pdev *pdev, uint32_t tag_type,
* Case 3: When the buffer is the continuation of the previous message * Case 3: When the buffer is the continuation of the previous message
* Case 4: tlv length is 0. which will indicate the end of message * Case 4: tlv length is 0. which will indicate the end of message
* *
* return: void * Return: void
*/ */
static inline void dp_process_htt_stat_msg(struct htt_stats_context *htt_stats, static inline void dp_process_htt_stat_msg(struct htt_stats_context *htt_stats,
struct dp_soc *soc) struct dp_soc *soc)
@@ -2214,12 +2172,6 @@ error:
return; return;
} }
/*
* htt_soc_attach_target() - SOC level HTT setup
* @htt_soc: HTT SOC handle
*
* Return: 0 on success; error code on failure
*/
int htt_soc_attach_target(struct htt_soc *htt_soc) int htt_soc_attach_target(struct htt_soc *htt_soc)
{ {
struct htt_soc *soc = (struct htt_soc *)htt_soc; struct htt_soc *soc = (struct htt_soc *)htt_soc;
@@ -2288,9 +2240,9 @@ struct htt_soc *htt_soc_attach(struct dp_soc *soc, HTC_HANDLE htc_handle)
#if defined(WDI_EVENT_ENABLE) && \ #if defined(WDI_EVENT_ENABLE) && \
!defined(REMOVE_PKT_LOG) !defined(REMOVE_PKT_LOG)
/* /**
* dp_pktlog_msg_handler() - Pktlog msg handler * dp_pktlog_msg_handler() - Pktlog msg handler
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @msg_word: Pointer to payload * @msg_word: Pointer to payload
* *
* Return: None * Return: None
@@ -2320,10 +2272,10 @@ dp_pktlog_msg_handler(struct htt_soc *soc,
#endif #endif
#ifdef QCA_VDEV_STATS_HW_OFFLOAD_SUPPORT #ifdef QCA_VDEV_STATS_HW_OFFLOAD_SUPPORT
/* /**
* dp_vdev_txrx_hw_stats_handler - Handle vdev stats received from FW * dp_vdev_txrx_hw_stats_handler - Handle vdev stats received from FW
* @soc - htt soc handle * @soc: htt soc handle
* @ msg_word - buffer containing stats * @msg_word: buffer containing stats
* *
* Return: void * Return: void
*/ */
@@ -2516,14 +2468,14 @@ static void dp_sawf_def_queues_update_map_report_conf(struct htt_soc *soc,
#endif #endif
#ifdef CONFIG_SAWF #ifdef CONFIG_SAWF
/* /**
* dp_sawf_msduq_map() - Msdu queue creation information received * dp_sawf_msduq_map() - Msdu queue creation information received
* from target * from target
* @soc: soc handle. * @soc: soc handle.
* @msg_word: Pointer to htt msg word. * @msg_word: Pointer to htt msg word.
* @htt_t2h_msg: HTT message nbuf * @htt_t2h_msg: HTT message nbuf
* *
* @return: void * Return: void
*/ */
static void dp_sawf_msduq_map(struct htt_soc *soc, uint32_t *msg_word, static void dp_sawf_msduq_map(struct htt_soc *soc, uint32_t *msg_word,
qdf_nbuf_t htt_t2h_msg) qdf_nbuf_t htt_t2h_msg)
@@ -2531,12 +2483,12 @@ static void dp_sawf_msduq_map(struct htt_soc *soc, uint32_t *msg_word,
dp_htt_sawf_msduq_map(soc, msg_word, htt_t2h_msg); dp_htt_sawf_msduq_map(soc, msg_word, htt_t2h_msg);
} }
/* /**
* dp_sawf_mpdu_stats_handler() - HTT message handler for MPDU stats * dp_sawf_mpdu_stats_handler() - HTT message handler for MPDU stats
* @soc: soc handle. * @soc: soc handle.
* @htt_t2h_msg: HTT message nbuf * @htt_t2h_msg: HTT message nbuf
* *
* @return: void * Return: void
*/ */
static void dp_sawf_mpdu_stats_handler(struct htt_soc *soc, static void dp_sawf_mpdu_stats_handler(struct htt_soc *soc,
qdf_nbuf_t htt_t2h_msg) qdf_nbuf_t htt_t2h_msg)
@@ -2553,10 +2505,11 @@ static void dp_sawf_mpdu_stats_handler(struct htt_soc *soc,
{} {}
#endif #endif
/* /**
* time_allow_print() - time allow print * time_allow_print() - time allow print
* @htt_ring_tt: ringi_id array of timestamps * @htt_bp_handler: backpressure handler
* @ring_id: ring_id (index) * @ring_id: ring_id (index)
* @th_time: threshold time
* *
* Return: 1 for successfully saving timestamp in array * Return: 1 for successfully saving timestamp in array
* and 0 for timestamp falling within 2 seconds after last one * and 0 for timestamp falling within 2 seconds after last one
@@ -2612,8 +2565,10 @@ static void dp_htt_alert_print(enum htt_t2h_msg_type msg_type,
/** /**
* dp_get_srng_ring_state_from_hal(): Get hal level ring stats * dp_get_srng_ring_state_from_hal(): Get hal level ring stats
* @soc: DP_SOC handle * @soc: DP_SOC handle
* @pdev: DP pdev handle
* @srng: DP_SRNG handle * @srng: DP_SRNG handle
* @ring_type: srng src/dst ring * @ring_type: srng src/dst ring
* @state: ring state
* *
* Return: void * Return: void
*/ */
@@ -2725,7 +2680,7 @@ dp_get_tcl_status_ring_state_from_hal(struct dp_pdev *pdev,
#endif #endif
/** /**
* dp_queue_srng_ring_stats(): Print pdev hal level ring stats * dp_queue_ring_stats() - Print pdev hal level ring stats
* @pdev: DP_pdev handle * @pdev: DP_pdev handle
* *
* Return: void * Return: void
@@ -2934,10 +2889,10 @@ static void dp_queue_ring_stats(struct dp_pdev *pdev)
&pdev->bkp_stats.work); &pdev->bkp_stats.work);
} }
/* /**
* dp_htt_bkp_event_alert() - htt backpressure event alert * dp_htt_bkp_event_alert() - htt backpressure event alert
* @msg_word: htt packet context * @msg_word: htt packet context
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* *
* Return: after attempting to print stats * Return: after attempting to print stats
*/ */
@@ -3005,9 +2960,9 @@ static void dp_htt_bkp_event_alert(u_int32_t *msg_word, struct htt_soc *soc)
} }
#ifdef WLAN_FEATURE_PKT_CAPTURE_V2 #ifdef WLAN_FEATURE_PKT_CAPTURE_V2
/* /**
* dp_offload_ind_handler() - offload msg handler * dp_offload_ind_handler() - offload msg handler
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @msg_word: Pointer to payload * @msg_word: Pointer to payload
* *
* Return: None * Return: None
@@ -3228,7 +3183,7 @@ dp_rx_mlo_timestamp_ind_handler(void *soc_handle,
} }
#endif #endif
/* /**
* dp_htt_rx_addba_handler() - RX Addba HTT msg handler * dp_htt_rx_addba_handler() - RX Addba HTT msg handler
* @soc: DP Soc handler * @soc: DP Soc handler
* @peer_id: ID of peer * @peer_id: ID of peer
@@ -3268,9 +3223,9 @@ dp_htt_rx_addba_handler(struct dp_soc *soc, uint16_t peer_id,
peer_id, win_sz, tid, status); peer_id, win_sz, tid, status);
} }
/* /**
* dp_htt_ppdu_id_fmt_handler() - PPDU ID Format handler * dp_htt_ppdu_id_fmt_handler() - PPDU ID Format handler
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @msg_word: Pointer to payload * @msg_word: Pointer to payload
* *
* Return: None * Return: None
@@ -3295,7 +3250,7 @@ dp_htt_ppdu_id_fmt_handler(struct dp_soc *soc, uint32_t *msg_word)
} }
} }
/* /**
* dp_htt_t2h_msg_handler() - Generic Target to host Msg/event handler * dp_htt_t2h_msg_handler() - Generic Target to host Msg/event handler
* @context: Opaque context (HTT SOC handle) * @context: Opaque context (HTT SOC handle)
* @pkt: HTC packet * @pkt: HTC packet
@@ -3752,7 +3707,7 @@ static void dp_htt_t2h_msg_handler(void *context, HTC_PACKET *pkt)
qdf_nbuf_free(htt_t2h_msg); qdf_nbuf_free(htt_t2h_msg);
} }
/* /**
* dp_htt_h2t_full() - Send full handler (called from HTC) * dp_htt_h2t_full() - Send full handler (called from HTC)
* @context: Opaque context (HTT SOC handle) * @context: Opaque context (HTT SOC handle)
* @pkt: HTC packet * @pkt: HTC packet
@@ -3765,7 +3720,7 @@ dp_htt_h2t_full(void *context, HTC_PACKET *pkt)
return HTC_SEND_FULL_KEEP; return HTC_SEND_FULL_KEEP;
} }
/* /**
* dp_htt_hif_t2h_hp_callback() - HIF callback for high priority T2H messages * dp_htt_hif_t2h_hp_callback() - HIF callback for high priority T2H messages
* @context: Opaque context (HTT SOC handle) * @context: Opaque context (HTT SOC handle)
* @nbuf: nbuf containing T2H message * @nbuf: nbuf containing T2H message
@@ -3792,9 +3747,9 @@ dp_htt_hif_t2h_hp_callback (void *context, qdf_nbuf_t nbuf, uint8_t pipe_id)
return rc; return rc;
} }
/* /**
* htt_htc_soc_attach() - Register SOC level HTT instance with HTC * htt_htc_soc_attach() - Register SOC level HTT instance with HTC
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* *
* Return: QDF_STATUS * Return: QDF_STATUS
*/ */
@@ -3851,16 +3806,6 @@ htt_htc_soc_attach(struct htt_soc *soc)
return QDF_STATUS_SUCCESS; /* success */ return QDF_STATUS_SUCCESS; /* success */
} }
/*
* htt_soc_initialize() - SOC level HTT initialization
* @htt_soc: Opaque htt SOC handle
* @ctrl_psoc: Opaque ctrl SOC handle
* @htc_soc: SOC level HTC handle
* @hal_soc: Opaque HAL SOC handle
* @osdev: QDF device
*
* Return: HTT handle on success; NULL on failure
*/
void * void *
htt_soc_initialize(struct htt_soc *htt_soc, htt_soc_initialize(struct htt_soc *htt_soc,
struct cdp_ctrl_objmgr_psoc *ctrl_psoc, struct cdp_ctrl_objmgr_psoc *ctrl_psoc,
@@ -3890,13 +3835,6 @@ void htt_soc_htc_dealloc(struct htt_soc *htt_handle)
htt_htc_pkt_pool_free(htt_handle); htt_htc_pkt_pool_free(htt_handle);
} }
/*
* htt_soc_htc_prealloc() - HTC memory prealloc
* @htt_soc: SOC level HTT handle
*
* Return: QDF_STATUS_SUCCESS on Success or
* QDF_STATUS_E_NOMEM on allocation failure
*/
QDF_STATUS htt_soc_htc_prealloc(struct htt_soc *soc) QDF_STATUS htt_soc_htc_prealloc(struct htt_soc *soc)
{ {
int i; int i;
@@ -3914,10 +3852,6 @@ QDF_STATUS htt_soc_htc_prealloc(struct htt_soc *soc)
return QDF_STATUS_SUCCESS; return QDF_STATUS_SUCCESS;
} }
/*
* htt_soc_detach() - Free SOC level HTT handle
* @htt_hdl: HTT SOC handle
*/
void htt_soc_detach(struct htt_soc *htt_hdl) void htt_soc_detach(struct htt_soc *htt_hdl)
{ {
int i; int i;
@@ -3933,18 +3867,6 @@ void htt_soc_detach(struct htt_soc *htt_hdl)
} }
/**
* dp_h2t_ext_stats_msg_send(): function to construct HTT message to pass to FW
* @pdev: DP PDEV handle
* @stats_type_upload_mask: stats type requested by user
* @config_param_0: extra configuration parameters
* @config_param_1: extra configuration parameters
* @config_param_2: extra configuration parameters
* @config_param_3: extra configuration parameters
* @mac_id: mac number
*
* return: QDF STATUS
*/
QDF_STATUS dp_h2t_ext_stats_msg_send(struct dp_pdev *pdev, QDF_STATUS dp_h2t_ext_stats_msg_send(struct dp_pdev *pdev,
uint32_t stats_type_upload_mask, uint32_t config_param_0, uint32_t stats_type_upload_mask, uint32_t config_param_0,
uint32_t config_param_1, uint32_t config_param_2, uint32_t config_param_1, uint32_t config_param_2,
@@ -4188,21 +4110,6 @@ QDF_STATUS dp_h2t_hw_vdev_stats_config_send(struct dp_soc *dpsoc,
} }
#endif #endif
/**
* dp_h2t_3tuple_config_send(): function to construct 3 tuple configuration
* HTT message to pass to FW
* @pdev: DP PDEV handle
* @tuple_mask: tuple configuration to report 3 tuple hash value in either
* toeplitz_2_or_4 or flow_id_toeplitz in MSDU START TLV.
*
* tuple_mask[1:0]:
* 00 - Do not report 3 tuple hash value
* 10 - Report 3 tuple hash value in toeplitz_2_or_4
* 01 - Report 3 tuple hash value in flow_id_toeplitz
* 11 - Report 3 tuple hash value in both toeplitz_2_or_4 & flow_id_toeplitz
*
* return: QDF STATUS
*/
QDF_STATUS dp_h2t_3tuple_config_send(struct dp_pdev *pdev, QDF_STATUS dp_h2t_3tuple_config_send(struct dp_pdev *pdev,
uint32_t tuple_mask, uint8_t mac_id) uint32_t tuple_mask, uint8_t mac_id)
{ {
@@ -4283,14 +4190,6 @@ QDF_STATUS dp_h2t_3tuple_config_send(struct dp_pdev *pdev,
* HTT_H2T_MSG_TYPE_PPDU_STATS_CFG in htt.h file * HTT_H2T_MSG_TYPE_PPDU_STATS_CFG in htt.h file
* */ * */
#if defined(WDI_EVENT_ENABLE) #if defined(WDI_EVENT_ENABLE)
/**
* dp_h2t_cfg_stats_msg_send(): function to construct HTT message to pass to FW
* @pdev: DP PDEV handle
* @stats_type_upload_mask: stats type requested by user
* @mac_id: Mac id number
*
* return: QDF STATUS
*/
QDF_STATUS dp_h2t_cfg_stats_msg_send(struct dp_pdev *pdev, QDF_STATUS dp_h2t_cfg_stats_msg_send(struct dp_pdev *pdev,
uint32_t stats_type_upload_mask, uint8_t mac_id) uint32_t stats_type_upload_mask, uint8_t mac_id)
{ {
@@ -4412,13 +4311,6 @@ dp_peer_update_inactive_time(struct dp_pdev *pdev, uint32_t tag_type,
} }
} }
/**
* dp_htt_rx_flow_fst_setup(): Send HTT Rx FST setup message to FW
* @pdev: DP pdev handle
* @fse_setup_info: FST setup parameters
*
* Return: Success when HTT message is sent, error on failure
*/
QDF_STATUS QDF_STATUS
dp_htt_rx_flow_fst_setup(struct dp_pdev *pdev, dp_htt_rx_flow_fst_setup(struct dp_pdev *pdev,
struct dp_htt_rx_flow_fst_setup *fse_setup_info) struct dp_htt_rx_flow_fst_setup *fse_setup_info)
@@ -4554,14 +4446,6 @@ dp_htt_rx_flow_fst_setup(struct dp_pdev *pdev,
return status; return status;
} }
/**
* dp_htt_rx_flow_fse_operation(): Send HTT Flow Search Entry msg to
* add/del a flow in HW
* @pdev: DP pdev handle
* @fse_op_info: Flow entry parameters
*
* Return: Success when HTT message is sent, error on failure
*/
QDF_STATUS QDF_STATUS
dp_htt_rx_flow_fse_operation(struct dp_pdev *pdev, dp_htt_rx_flow_fse_operation(struct dp_pdev *pdev,
struct dp_htt_rx_flow_fst_operation *fse_op_info) struct dp_htt_rx_flow_fst_operation *fse_op_info)
@@ -4703,13 +4587,6 @@ dp_htt_rx_flow_fse_operation(struct dp_pdev *pdev,
return status; return status;
} }
/**
* dp_htt_rx_fisa_config(): Send HTT msg to configure FISA
* @pdev: DP pdev handle
* @fse_op_info: Flow entry parameters
*
* Return: Success when HTT message is sent, error on failure
*/
QDF_STATUS QDF_STATUS
dp_htt_rx_fisa_config(struct dp_pdev *pdev, dp_htt_rx_fisa_config(struct dp_pdev *pdev,
struct dp_htt_rx_fisa_cfg *fisa_config) struct dp_htt_rx_fisa_cfg *fisa_config)
@@ -4804,13 +4681,6 @@ dp_htt_rx_fisa_config(struct dp_pdev *pdev,
} }
#ifdef WLAN_SUPPORT_PPEDS #ifdef WLAN_SUPPORT_PPEDS
/**
* dp_htt_rxdma_rxole_ppe_cfg_set() - Send RxOLE and RxDMA PPE config
* @dp_osc: Data path SoC handle
* @cfg: RxDMA and RxOLE PPE config
*
* Return: Success when HTT message is sent, error on failure
*/
QDF_STATUS QDF_STATUS
dp_htt_rxdma_rxole_ppe_cfg_set(struct dp_soc *soc, dp_htt_rxdma_rxole_ppe_cfg_set(struct dp_soc *soc,
struct dp_htt_rxdma_rxole_ppe_config *cfg) struct dp_htt_rxdma_rxole_ppe_config *cfg)
@@ -4968,12 +4838,6 @@ static void dp_bk_pressure_stats_handler(void *context)
&pdev->bkp_stats.work); &pdev->bkp_stats.work);
} }
/*
* dp_pdev_bkp_stats_detach() - detach resources for back pressure stats
* processing
* @pdev: Datapath PDEV handle
*
*/
void dp_pdev_bkp_stats_detach(struct dp_pdev *pdev) void dp_pdev_bkp_stats_detach(struct dp_pdev *pdev)
{ {
struct dp_soc_srngs_state *ring_state, *ring_state_next; struct dp_soc_srngs_state *ring_state, *ring_state_next;
@@ -4996,14 +4860,6 @@ void dp_pdev_bkp_stats_detach(struct dp_pdev *pdev)
qdf_spinlock_destroy(&pdev->bkp_stats.list_lock); qdf_spinlock_destroy(&pdev->bkp_stats.list_lock);
} }
/*
* dp_pdev_bkp_stats_attach() - attach resources for back pressure stats
* processing
* @pdev: Datapath PDEV handle
*
* Return: QDF_STATUS_SUCCESS: Success
* QDF_STATUS_E_NOMEM: Error
*/
QDF_STATUS dp_pdev_bkp_stats_attach(struct dp_pdev *pdev) QDF_STATUS dp_pdev_bkp_stats_attach(struct dp_pdev *pdev)
{ {
TAILQ_INIT(&pdev->bkp_stats.list); TAILQ_INIT(&pdev->bkp_stats.list);

View File

@@ -70,6 +70,10 @@ int htt_wbm_event_record(struct htt_logger *h, uint8_t tx_status,
#define HTT_SHIFT_UPPER_TIMESTAMP 32 #define HTT_SHIFT_UPPER_TIMESTAMP 32
#define HTT_MASK_UPPER_TIMESTAMP 0xFFFFFFFF00000000 #define HTT_MASK_UPPER_TIMESTAMP 0xFFFFFFFF00000000
/**
* htt_htc_pkt_pool_free() - Free HTC packet pool
* @soc: HTT SOC handle
*/
void htt_htc_pkt_pool_free(struct htt_soc *soc); void htt_htc_pkt_pool_free(struct htt_soc *soc);
#define HTT_TX_MUTEX_TYPE qdf_spinlock_t #define HTT_TX_MUTEX_TYPE qdf_spinlock_t
@@ -268,29 +272,29 @@ struct htt_soc {
/** /**
* struct dp_tx_mon_downstream_tlv_config - Enable/Disable TxMon * struct dp_tx_mon_downstream_tlv_config - Enable/Disable TxMon
* downstream TLVs * downstream TLVs
* tx_fes_setup: TX_FES_SETUP TLV * @tx_fes_setup: TX_FES_SETUP TLV
* tx_peer_entry: TX_PEER_ENTRY TLV * @tx_peer_entry: TX_PEER_ENTRY TLV
* tx_queue_extension: TX_QUEUE_EXTENSION TLV * @tx_queue_extension: TX_QUEUE_EXTENSION TLV
* tx_last_mpdu_end: TX_LAST_MPDU_END TLV * @tx_last_mpdu_end: TX_LAST_MPDU_END TLV
* tx_last_mpdu_fetched: TX_LAST_MPDU_FETCHED TLV * @tx_last_mpdu_fetched: TX_LAST_MPDU_FETCHED TLV
* tx_data_sync: TX_DATA_SYNC TLV * @tx_data_sync: TX_DATA_SYNC TLV
* pcu_ppdu_setup_init: PCU_PPDU_SETUP_INIT TLV * @pcu_ppdu_setup_init: PCU_PPDU_SETUP_INIT TLV
* fw2s_mon: FW2S_MON TLV * @fw2s_mon: FW2S_MON TLV
* tx_loopback_setup: TX_LOOPBACK_SETUP TLV * @tx_loopback_setup: TX_LOOPBACK_SETUP TLV
* sch_critical_tlv_ref: SCH_CRITICAL_TLV_REF TLV * @sch_critical_tlv_ref: SCH_CRITICAL_TLV_REF TLV
* ndp_preamble_done: NDP_PREAMBLE_DONE TLV * @ndp_preamble_done: NDP_PREAMBLE_DONE TLV
* tx_raw_frame_setup: TX_RAW_OR_NATIVE_FRAME_SETUP TLV * @tx_raw_frame_setup: TX_RAW_OR_NATIVE_FRAME_SETUP TLV
* txpcu_user_setup: TXPCU_USER_SETUP TLV * @txpcu_user_setup: TXPCU_USER_SETUP TLV
* rxpcu_setup: RXPCU_SETUP TLV * @rxpcu_setup: RXPCU_SETUP TLV
* rxpcu_setup_complete: RXPCU_SETUP_COMPLETE TLV * @rxpcu_setup_complete: RXPCU_SETUP_COMPLETE TLV
* coex_tx_req: COEX_TX_REQ TLV * @coex_tx_req: COEX_TX_REQ TLV
* rxpcu_user_setup: RXPCU_USER_SETUP TLV * @rxpcu_user_setup: RXPCU_USER_SETUP TLV
* rxpcu_user_setup_ext: RXPCU_USER_SETUP_EXT TLV * @rxpcu_user_setup_ext: RXPCU_USER_SETUP_EXT TLV
* wur_data: WUR_DATA TLV * @wur_data: WUR_DATA TLV
* tqm_mpdu_global_start: TQM_MPDU_GLOBAL_START * @tqm_mpdu_global_start: TQM_MPDU_GLOBAL_START
* tx_fes_setup_complete: TX_FES_SETUP_COMPLETE TLV * @tx_fes_setup_complete: TX_FES_SETUP_COMPLETE TLV
* scheduler_end: SCHEDULER_END TLV * @scheduler_end: SCHEDULER_END TLV
* sch_wait_instr_tx_path: SCH_WAIT_INSTR_TX_PATH TLV * @sch_wait_instr_tx_path: SCH_WAIT_INSTR_TX_PATH TLV
* *
*/ */
struct dp_tx_mon_downstream_tlv_config { struct dp_tx_mon_downstream_tlv_config {
@@ -322,90 +326,93 @@ struct dp_tx_mon_downstream_tlv_config {
/** /**
* struct dp_tx_mon_upstream_tlv_config - Enable/Disable TxMon * struct dp_tx_mon_upstream_tlv_config - Enable/Disable TxMon
* upstream TLVs * upstream TLVs
* rx_response_required_info: RX_RESPONSE_REQUIRED_INFO * @rx_response_required_info: RX_RESPONSE_REQUIRED_INFO
* TLV * TLV
* response_start_status: RESPONSE_START_STATUS TLV * @response_start_status: RESPONSE_START_STATUS TLV
* response_end_status: RESPONSE_END_STATUS TLV * @response_end_status: RESPONSE_END_STATUS TLV
* tx_fes_status_start: TX_FES_STATUS_START TLV * @tx_fes_status_start: TX_FES_STATUS_START TLV
* tx_fes_status_start_ppdu: TX_FES_STATUS_START_PPDU TLV * @tx_fes_status_end: TX_FES_STATUS_END TLV
* tx_fes_status_user_ppdu: TX_FES_STATUS_USER_PPDU TLV * @tx_fes_status_start_ppdu: TX_FES_STATUS_START_PPDU TLV
* tx_fes_status_ack_or_ba: TX_FES_STATUS_ACK_OR_BA TLV * @tx_fes_status_user_ppdu: TX_FES_STATUS_USER_PPDU TLV
* tx_fes_status_1k_ba: TX_FES_STATUS_1K_BA TLV * @tx_fes_status_ack_or_ba: TX_FES_STATUS_ACK_OR_BA TLV
* tx_fes_status_start_prot: TX_FES_STATUS_START_PROTO TLV * @tx_fes_status_1k_ba: TX_FES_STATUS_1K_BA TLV
* tx_fes_status_user_response: TX_FES_STATUS_USER_RESPONSE TLV * @tx_fes_status_start_prot: TX_FES_STATUS_START_PROTO TLV
* rx_frame_bitmap_ack: RX_FRAME_BITMAP_ACK TLV * @tx_fes_status_prot: TX_FES_STATUS_PROTO TLV
* rx_frame_1k_bitmap_ack: RX_FRAME_1K_BITMAP_ACK TLV * @tx_fes_status_user_response: TX_FES_STATUS_USER_RESPONSE TLV
* coex_tx_status: COEX_TX_STATUS TLV * @rx_frame_bitmap_ack: RX_FRAME_BITMAP_ACK TLV
* received_response_info: RECEIVED_RESPONSE_INFO TLV * @rx_frame_1k_bitmap_ack: RX_FRAME_1K_BITMAP_ACK TLV
* received_response_info_p2: RECEIVED_RESPONSE_INFO_PART2 TLV * @coex_tx_status: COEX_TX_STATUS TLV
* ofdma_trigger_details: OFDMA_TRIGGER_DETAILS * @received_response_info: RECEIVED_RESPONSE_INFO TLV
* received_trigger_info: RECEIVED_TRIGGER_INFO * @received_response_info_p2: RECEIVED_RESPONSE_INFO_PART2 TLV
* pdg_tx_request: PDG_TX_REQUEST * @ofdma_trigger_details: OFDMA_TRIGGER_DETAILS
* pdg_response: PDG_RESPONSE * @received_trigger_info: RECEIVED_TRIGGER_INFO
* pdg_trig_response: PDG_TRIG_RESPONSE * @pdg_tx_request: PDG_TX_REQUEST
* trigger_response_tx_done: TRIGGER_RESPONSE_TX_DONE * @pdg_response: PDG_RESPONSE
* prot_tx_end: PROT_TX_END * @pdg_trig_response: PDG_TRIG_RESPONSE
* ppdu_tx_end: PPDU_TX_END * @trigger_response_tx_done: TRIGGER_RESPONSE_TX_DONE
* r2r_status_end: R2R_STATUS_END * @prot_tx_end: PROT_TX_END
* flush_req: FLUSH_REQ * @ppdu_tx_end: PPDU_TX_END
* mactx_phy_desc: MACTX_PHY_DESC * @r2r_status_end: R2R_STATUS_END
* mactx_user_desc_cmn: MACTX_USER_DESC_COMMON * @flush_req: FLUSH_REQ
* mactx_user_desc_per_usr: MACTX_USER_DESC_PER_USER * @mactx_phy_desc: MACTX_PHY_DESC
* tqm_acked_1k_mpdu: TQM_ACKED_1K_MPDU * @mactx_user_desc_cmn: MACTX_USER_DESC_COMMON
* tqm_acked_mpdu: TQM_ACKED_MPDU * @mactx_user_desc_per_usr: MACTX_USER_DESC_PER_USER
* tqm_update_tx_mpdu_count: TQM_UPDATE_TX_MPDU_COUNT * @tqm_acked_1k_mpdu: TQM_ACKED_1K_MPDU
* phytx_ppdu_header_info_request: PHYTX_PPDU_HEADER_INFO_REQUEST * @tqm_acked_mpdu: TQM_ACKED_MPDU
* u_sig_eht_su_mu: U_SIG_EHT_SU_MU * @tqm_update_tx_mpdu_count: TQM_UPDATE_TX_MPDU_COUNT
* u_sig_eht_su: U_SIG_EHT_SU * @phytx_ppdu_header_info_request: PHYTX_PPDU_HEADER_INFO_REQUEST
* eht_sig_usr_su: EHT_SIG_USR_SU * @u_sig_eht_su_mu: U_SIG_EHT_SU_MU
* eht_sig_usr_mu_mimo: EHT_SIG_USR_MU_MIMO * @u_sig_eht_su: U_SIG_EHT_SU
* eht_sig_usr_ofdma: EHT_SIG_USR_MU_MIMO * @u_sig_eht_tb: U_SIG_EHT_TB
* he_sig_a_su: HE_SIG_A_SU * @eht_sig_usr_su: EHT_SIG_USR_SU
* he_sig_a_mu_dl: HE_SIG_A_MU_DL * @eht_sig_usr_mu_mimo: EHT_SIG_USR_MU_MIMO
* he_sig_a_mu_ul: HE_SIG_A_MU_UL * @eht_sig_usr_ofdma: EHT_SIG_USR_MU_MIMO
* he_sig_b1_mu: HE_SIG_B1_MU * @he_sig_a_su: HE_SIG_A_SU
* he_sig_b2_mu: HE_SIG_B2_MU * @he_sig_a_mu_dl: HE_SIG_A_MU_DL
* he_sig_b2_ofdma: HE_SIG_B2_OFDMA * @he_sig_a_mu_ul: HE_SIG_A_MU_UL
* vht_sig_b_mu160: VHT_SIG_B_MU160 * @he_sig_b1_mu: HE_SIG_B1_MU
* vht_sig_b_mu80: VHT_SIG_B_MU80 * @he_sig_b2_mu: HE_SIG_B2_MU
* vht_sig_b_mu40: VHT_SIG_B_MU40 * @he_sig_b2_ofdma: HE_SIG_B2_OFDMA
* vht_sig_b_mu20: VHT_SIG_B_MU20 * @vht_sig_b_mu160: VHT_SIG_B_MU160
* vht_sig_b_su160: VHT_SIG_B_SU160 * @vht_sig_b_mu80: VHT_SIG_B_MU80
* vht_sig_b_su80: VHT_SIG_B_SU80 * @vht_sig_b_mu40: VHT_SIG_B_MU40
* vht_sig_b_su40: VHT_SIG_B_SU40 * @vht_sig_b_mu20: VHT_SIG_B_MU20
* vht_sig_b_su20: VHT_SIG_B_SU20 * @vht_sig_b_su160: VHT_SIG_B_SU160
* vht_sig_a: VHT_SIG_A * @vht_sig_b_su80: VHT_SIG_B_SU80
* ht_sig: HT_SIG * @vht_sig_b_su40: VHT_SIG_B_SU40
* l_sig_b: L_SIG_B * @vht_sig_b_su20: VHT_SIG_B_SU20
* l_sig_a: L_SIG_A * @vht_sig_a: VHT_SIG_A
* tx_service: TX_SERVICE * @ht_sig: HT_SIG
* txpcu_buf_status: TXPCU_BUFFER_STATUS * @l_sig_b: L_SIG_B
* txpcu_user_buf_status: TXPCU_USER_BUFFER_STATUS * @l_sig_a: L_SIG_A
* txdma_stop_request: TXDMA_STOP_REQUEST * @tx_service: TX_SERVICE
* expected_response: EXPECTED_RESPONSE * @txpcu_buf_status: TXPCU_BUFFER_STATUS
* tx_mpdu_count_transfer_end: TX_MPDU_COUNT_TRANSFER_END * @txpcu_user_buf_status: TXPCU_USER_BUFFER_STATUS
* rx_trig_info: RX_TRIG_INFO * @txdma_stop_request: TXDMA_STOP_REQUEST
* rxpcu_tx_setup_clear: RXPCU_TX_SETUP_CLEAR * @expected_response: EXPECTED_RESPONSE
* rx_frame_bitmap_req: RX_FRAME_BITMAP_REQ * @tx_mpdu_count_transfer_end: TX_MPDU_COUNT_TRANSFER_END
* rx_phy_sleep: RX_PHY_SLEEP * @rx_trig_info: RX_TRIG_INFO
* txpcu_preamble_done: TXPCU_PREAMBLE_DONE * @rxpcu_tx_setup_clear: RXPCU_TX_SETUP_CLEAR
* txpcu_phytx_debug32: TXPCU_PHYTX_DEBUG32 * @rx_frame_bitmap_req: RX_FRAME_BITMAP_REQ
* txpcu_phytx_other_transmit_info32: TXPCU_PHYTX_OTHER_TRANSMIT_INFO32 * @rx_phy_sleep: RX_PHY_SLEEP
* rx_ppdu_noack_report: RX_PPDU_NO_ACK_REPORT * @txpcu_preamble_done: TXPCU_PREAMBLE_DONE
* rx_ppdu_ack_report: RX_PPDU_ACK_REPORT * @txpcu_phytx_debug32: TXPCU_PHYTX_DEBUG32
* coex_rx_status: COEX_RX_STATUS * @txpcu_phytx_other_transmit_info32: TXPCU_PHYTX_OTHER_TRANSMIT_INFO32
* rx_start_param: RX_START_PARAM * @rx_ppdu_noack_report: RX_PPDU_NO_ACK_REPORT
* tx_cbf_info: TX_CBF_INFO * @rx_ppdu_ack_report: RX_PPDU_ACK_REPORT
* rxpcu_early_rx_indication: RXPCU_EARLY_RX_INDICATION * @coex_rx_status: COEX_RX_STATUS
* received_response_user_7_0: RECEIVED_RESPONSE_USER_7_0 * @rx_start_param: RX_START_PARAM
* received_response_user_15_8: RECEIVED_RESPONSE_USER_15_8 * @tx_cbf_info: TX_CBF_INFO
* received_response_user_23_16: RECEIVED_RESPONSE_USER_23_16 * @rxpcu_early_rx_indication: RXPCU_EARLY_RX_INDICATION
* received_response_user_31_24: RECEIVED_RESPONSE_USER_31_24 * @received_response_user_7_0: RECEIVED_RESPONSE_USER_7_0
* received_response_user_36_32: RECEIVED_RESPONSE_USER_36_32 * @received_response_user_15_8: RECEIVED_RESPONSE_USER_15_8
* rx_pm_info: RX_PM_INFO * @received_response_user_23_16: RECEIVED_RESPONSE_USER_23_16
* rx_preamble: RX_PREAMBLE * @received_response_user_31_24: RECEIVED_RESPONSE_USER_31_24
* others: OTHERS * @received_response_user_36_32: RECEIVED_RESPONSE_USER_36_32
* mactx_pre_phy_desc: MACTX_PRE_PHY_DESC * @rx_pm_info: RX_PM_INFO
* @rx_preamble: RX_PREAMBLE
* @others: OTHERS
* @mactx_pre_phy_desc: MACTX_PRE_PHY_DESC
* *
*/ */
struct dp_tx_mon_upstream_tlv_config { struct dp_tx_mon_upstream_tlv_config {
@@ -499,13 +506,13 @@ struct dp_tx_mon_upstream_tlv_config {
/** /**
* struct dp_tx_mon_wordmask_config - Tx monitor word mask * struct dp_tx_mon_wordmask_config - Tx monitor word mask
* tx_fes_setup: TX_FES_SETUP TLV word mask * @tx_fes_setup: TX_FES_SETUP TLV word mask
* tx_peer_entry: TX_PEER_ENTRY TLV word mask * @tx_peer_entry: TX_PEER_ENTRY TLV word mask
* tx_queue_ext: TX_QUEUE_EXTENSION TLV word mask * @tx_queue_ext: TX_QUEUE_EXTENSION TLV word mask
* tx_msdu_start: TX_MSDU_START TLV word mask * @tx_msdu_start: TX_MSDU_START TLV word mask
* tx_mpdu_start: TX_MPDU_START TLV word mask * @tx_mpdu_start: TX_MPDU_START TLV word mask
* pcu_ppdu_setup_init: PCU_PPDU_SETUP TLV word mask * @pcu_ppdu_setup_init: PCU_PPDU_SETUP TLV word mask
* rxpcu_user_setup: RXPCU_USER_SETUP TLV word mask * @rxpcu_user_setup: RXPCU_USER_SETUP TLV word mask
*/ */
struct dp_tx_mon_wordmask_config { struct dp_tx_mon_wordmask_config {
uint16_t tx_fes_setup; uint16_t tx_fes_setup;
@@ -592,12 +599,20 @@ struct htt_tx_ring_tlv_filter {
* @ppdu_end_user_stats: enable/disable PPDU user stats TLV * @ppdu_end_user_stats: enable/disable PPDU user stats TLV
* @ppdu_end_user_stats_ext: enable/disable PPDU user stats ext TLV * @ppdu_end_user_stats_ext: enable/disable PPDU user stats ext TLV
* @ppdu_end_status_done: enable/disable PPDU end status done TLV * @ppdu_end_status_done: enable/disable PPDU end status done TLV
* @ppdu_start_user_info:
* @header_per_msdu:
* @enable_fp: enable/disable FP packet * @enable_fp: enable/disable FP packet
* @enable_md: enable/disable MD packet * @enable_md: enable/disable MD packet
* @enable_mo: enable/disable MO packet * @enable_mo: enable/disable MO packet
* @enable_mgmt: enable/disable MGMT packet * @fp_mgmt_filter:
* @enable_ctrl: enable/disable CTRL packet * @mo_mgmt_filter:
* @enable_data: enable/disable DATA packet * @fp_ctrl_filter:
* @mo_ctrl_filter:
* @fp_data_filter:
* @mo_data_filter:
* @md_data_filter:
* @md_mgmt_filter:
* @md_ctrl_filter:
* @offset_valid: Flag to indicate if below offsets are valid * @offset_valid: Flag to indicate if below offsets are valid
* @rx_packet_offset: Offset of packet payload * @rx_packet_offset: Offset of packet payload
* @rx_header_offset: Offset of rx_header tlv * @rx_header_offset: Offset of rx_header tlv
@@ -609,13 +624,14 @@ struct htt_tx_ring_tlv_filter {
* @fp_phy_err: Flag to indicate FP PHY status tlv * @fp_phy_err: Flag to indicate FP PHY status tlv
* @fp_phy_err_buf_src: source ring selection for the FP PHY ERR status tlv * @fp_phy_err_buf_src: source ring selection for the FP PHY ERR status tlv
* @fp_phy_err_buf_dest: dest ring selection for the FP PHY ERR status tlv * @fp_phy_err_buf_dest: dest ring selection for the FP PHY ERR status tlv
* @phy_err_filter_valid:
* @phy_err_mask: select the phy errors defined in phyrx_abort_request_reason * @phy_err_mask: select the phy errors defined in phyrx_abort_request_reason
* enums 0 to 31. * enums 0 to 31.
* @phy_err_mask_cont: select the fp phy errors defined in * @phy_err_mask_cont: select the fp phy errors defined in
* phyrx_abort_request_reason enums 32 to 63 * phyrx_abort_request_reason enums 32 to 63
* @rx_mpdu_start_wmask: word mask for mpdu start tlv * @rx_mpdu_start_wmask: word mask for mpdu start tlv
* @rx_mpdu_end_wmask: word mask for mpdu end tlv * @rx_mpdu_end_wmask: word mask for mpdu end tlv
* @rx_msdu_end_tlv: word mask for msdu end tlv * @rx_msdu_end_wmask: word mask for msdu end tlv
* @rx_pkt_tlv_offset: rx pkt tlv offset * @rx_pkt_tlv_offset: rx pkt tlv offset
* @mgmt_dma_length: configure length for mgmt packet * @mgmt_dma_length: configure length for mgmt packet
* @ctrl_dma_length: configure length for ctrl packet * @ctrl_dma_length: configure length for ctrl packet
@@ -737,7 +753,7 @@ enum dp_htt_flow_fst_operation {
}; };
/** /**
* struct dp_htt_rx_flow_fst_setup - Rx FST setup message * struct dp_htt_rx_flow_fst_operation - Rx FST operation message
* @pdev_id: DP Pdev identifier * @pdev_id: DP Pdev identifier
* @op_code: FST operation to be performed by FW/HW * @op_code: FST operation to be performed by FW/HW
* @rx_flow: Rx Flow information on which operation is to be performed * @rx_flow: Rx Flow information on which operation is to be performed
@@ -749,7 +765,7 @@ struct dp_htt_rx_flow_fst_operation {
}; };
/** /**
* struct dp_htt_rx_fisa_config - Rx fisa config * struct dp_htt_rx_fisa_cfg - Rx fisa config
* @pdev_id: DP Pdev identifier * @pdev_id: DP Pdev identifier
* @fisa_timeout: fisa aggregation timeout * @fisa_timeout: fisa aggregation timeout
*/ */
@@ -758,17 +774,18 @@ struct dp_htt_rx_fisa_cfg {
uint32_t fisa_timeout; uint32_t fisa_timeout;
}; };
/* /**
* htt_htc_pkt_alloc() - Allocate HTC packet buffer * htt_htc_pkt_alloc() - Allocate HTC packet buffer
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* *
* Return: Pointer to htc packet buffer * Return: Pointer to htc packet buffer
*/ */
struct dp_htt_htc_pkt *htt_htc_pkt_alloc(struct htt_soc *soc); struct dp_htt_htc_pkt *htt_htc_pkt_alloc(struct htt_soc *soc);
/* /**
* htt_htc_pkt_free() - Free HTC packet buffer * htt_htc_pkt_free() - Free HTC packet buffer
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @pkt: packet to free
*/ */
void void
htt_htc_pkt_free(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt); htt_htc_pkt_free(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt);
@@ -786,10 +803,10 @@ htt_htc_misc_pkt_list_add(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt)
#else /* ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST */ #else /* ENABLE_CE4_COMP_DISABLE_HTT_HTC_MISC_LIST */
/* /**
* htt_htc_misc_pkt_list_add() - Add pkt to misc list * htt_htc_misc_pkt_list_add() - Add pkt to misc list
* @htt_soc: HTT SOC handle * @soc: HTT SOC handle
* @dp_htt_htc_pkt: pkt to be added to list * @pkt: pkt to be added to list
*/ */
void void
htt_htc_misc_pkt_list_add(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt); htt_htc_misc_pkt_list_add(struct htt_soc *soc, struct dp_htt_htc_pkt *pkt);
@@ -821,13 +838,20 @@ static inline QDF_STATUS DP_HTT_SEND_HTC_PKT(struct htt_soc *soc,
return status; return status;
} }
/**
* dp_htt_rx_fisa_config(): Send HTT msg to configure FISA
* @pdev: DP pdev handle
* @fisa_config: Flow entry parameters
*
* Return: Success when HTT message is sent, error on failure
*/
QDF_STATUS dp_htt_rx_fisa_config(struct dp_pdev *pdev, QDF_STATUS dp_htt_rx_fisa_config(struct dp_pdev *pdev,
struct dp_htt_rx_fisa_cfg *fisa_config); struct dp_htt_rx_fisa_cfg *fisa_config);
#ifdef WLAN_SUPPORT_PPEDS #ifdef WLAN_SUPPORT_PPEDS
/** /**
* dp_htt_rxdma_rxole_ppe_config: Rx DMA and RxOLE PPE config * struct dp_htt_rxdma_rxole_ppe_config - Rx DMA and RxOLE PPE config
* @override: RxDMA override to override the reo_destinatoin_indication * @override: RxDMA override to override the reo_destinatoin_indication
* @reo_destination_indication: REO destination indication value * @reo_destination_indication: REO destination indication value
* @multi_buffer_msdu_override_en: Override the indicatio for SG * @multi_buffer_msdu_override_en: Override the indicatio for SG
@@ -848,17 +872,24 @@ struct dp_htt_rxdma_rxole_ppe_config {
reserved:21; reserved:21;
}; };
/**
* dp_htt_rxdma_rxole_ppe_cfg_set() - Send RxOLE and RxDMA PPE config
* @soc: Data path SoC handle
* @cfg: RxDMA and RxOLE PPE config
*
* Return: Success when HTT message is sent, error on failure
*/
QDF_STATUS QDF_STATUS
dp_htt_rxdma_rxole_ppe_cfg_set(struct dp_soc *soc, dp_htt_rxdma_rxole_ppe_cfg_set(struct dp_soc *soc,
struct dp_htt_rxdma_rxole_ppe_config *cfg); struct dp_htt_rxdma_rxole_ppe_config *cfg);
#endif /* WLAN_SUPPORT_PPEDS */ #endif /* WLAN_SUPPORT_PPEDS */
/* /**
* htt_soc_initialize() - SOC level HTT initialization * htt_soc_initialize() - SOC level HTT initialization
* @htt_soc: Opaque htt SOC handle * @htt_soc: Opaque htt SOC handle
* @ctrl_psoc: Opaque ctrl SOC handle * @ctrl_psoc: Opaque ctrl SOC handle
* @htc_soc: SOC level HTC handle * @htc_soc: SOC level HTC handle
* @hal_soc: Opaque HAL SOC handle * @hal_soc_hdl: Opaque HAL SOC handle
* @osdev: QDF device * @osdev: QDF device
* *
* Return: HTT handle on success; NULL on failure * Return: HTT handle on success; NULL on failure
@@ -869,7 +900,7 @@ htt_soc_initialize(struct htt_soc *htt_soc,
HTC_HANDLE htc_soc, HTC_HANDLE htc_soc,
hal_soc_handle_t hal_soc_hdl, qdf_device_t osdev); hal_soc_handle_t hal_soc_hdl, qdf_device_t osdev);
/* /**
* htt_soc_attach() - attach DP and HTT SOC * htt_soc_attach() - attach DP and HTT SOC
* @soc: DP SOC handle * @soc: DP SOC handle
* @htc_hdl: HTC handle * @htc_hdl: HTC handle
@@ -878,8 +909,8 @@ htt_soc_initialize(struct htt_soc *htt_soc,
*/ */
struct htt_soc *htt_soc_attach(struct dp_soc *soc, HTC_HANDLE htc_hdl); struct htt_soc *htt_soc_attach(struct dp_soc *soc, HTC_HANDLE htc_hdl);
/* /**
* htt_set_htc_handle_() - set HTC handle * htt_set_htc_handle() - set HTC handle
* @htt_hdl: HTT handle/SOC * @htt_hdl: HTT handle/SOC
* @htc_soc: HTC handle * @htc_soc: HTC handle
* *
@@ -887,23 +918,23 @@ struct htt_soc *htt_soc_attach(struct dp_soc *soc, HTC_HANDLE htc_hdl);
*/ */
void htt_set_htc_handle(struct htt_soc *htt_hdl, HTC_HANDLE htc_soc); void htt_set_htc_handle(struct htt_soc *htt_hdl, HTC_HANDLE htc_soc);
/* /**
* htt_get_htc_handle_() - set HTC handle * htt_get_htc_handle() - set HTC handle
* @htt_hdl: HTT handle/SOC * @htt_hdl: HTT handle/SOC
* *
* Return: HTC_HANDLE * Return: HTC_HANDLE
*/ */
HTC_HANDLE htt_get_htc_handle(struct htt_soc *htt_hdl); HTC_HANDLE htt_get_htc_handle(struct htt_soc *htt_hdl);
/* /**
* htt_soc_htc_dealloc() - HTC memory de-alloc * htt_soc_htc_dealloc() - HTC memory de-alloc
* @htt_soc: SOC level HTT handle * @htt_handle: SOC level HTT handle
* *
* Return: None * Return: None
*/ */
void htt_soc_htc_dealloc(struct htt_soc *htt_handle); void htt_soc_htc_dealloc(struct htt_soc *htt_handle);
/* /**
* htt_soc_htc_prealloc() - HTC memory prealloc * htt_soc_htc_prealloc() - HTC memory prealloc
* @htt_soc: SOC level HTT handle * @htt_soc: SOC level HTT handle
* *
@@ -912,20 +943,39 @@ void htt_soc_htc_dealloc(struct htt_soc *htt_handle);
*/ */
QDF_STATUS htt_soc_htc_prealloc(struct htt_soc *htt_soc); QDF_STATUS htt_soc_htc_prealloc(struct htt_soc *htt_soc);
void htt_soc_detach(struct htt_soc *soc); /**
* htt_soc_detach() - Free SOC level HTT handle
* @htt_hdl: HTT SOC handle
*/
void htt_soc_detach(struct htt_soc *htt_hdl);
/**
* htt_srng_setup() - Send SRNG setup message to target
* @htt_soc: HTT SOC handle
* @pdev_id: pdev Id
* @hal_ring_hdl: Opaque HAL SRNG pointer
* @hal_ring_type: SRNG ring type
*
* Return: 0 on success; error code on failure
*/
int htt_srng_setup(struct htt_soc *htt_soc, int pdev_id, int htt_srng_setup(struct htt_soc *htt_soc, int pdev_id,
hal_ring_handle_t hal_ring_hdl, hal_ring_handle_t hal_ring_hdl,
int hal_ring_type); int hal_ring_type);
/**
* htt_soc_attach_target() - SOC level HTT setup
* @htt_soc: HTT SOC handle
*
* Return: 0 on success; error code on failure
*/
int htt_soc_attach_target(struct htt_soc *htt_soc); int htt_soc_attach_target(struct htt_soc *htt_soc);
/* /**
* htt_h2t_rx_ring_cfg() - Send SRNG packet and TLV filter * htt_h2t_rx_ring_cfg() - Send SRNG packet and TLV filter
* config message to target * config message to target
* @htt_soc: HTT SOC handle * @htt_soc: HTT SOC handle
* @pdev_id: PDEV Id * @pdev_id: PDEV Id
* @hal_srng: Opaque HAL SRNG pointer * @hal_ring_hdl: Opaque HAL SRNG pointer
* @hal_ring_type: SRNG ring type * @hal_ring_type: SRNG ring type
* @ring_buf_size: SRNG buffer size * @ring_buf_size: SRNG buffer size
* @htt_tlv_filter: Rx SRNG TLV and filter setting * @htt_tlv_filter: Rx SRNG TLV and filter setting
@@ -937,7 +987,7 @@ int htt_h2t_rx_ring_cfg(struct htt_soc *htt_soc, int pdev_id,
int hal_ring_type, int ring_buf_size, int hal_ring_type, int ring_buf_size,
struct htt_rx_ring_tlv_filter *htt_tlv_filter); struct htt_rx_ring_tlv_filter *htt_tlv_filter);
/* /**
* htt_t2h_stats_handler() - target to host stats work handler * htt_t2h_stats_handler() - target to host stats work handler
* @context: context (dp soc context) * @context: context (dp soc context)
* *
@@ -983,7 +1033,7 @@ QDF_STATUS dp_htt_umac_reset_send_setup_cmd(
#endif #endif
/** /**
* dp_htt_rx_flow_fst_setup(): Send HTT Rx FST setup message to FW * dp_htt_rx_flow_fst_setup() - Send HTT Rx FST setup message to FW
* @pdev: DP pdev handle * @pdev: DP pdev handle
* @fse_setup_info: FST setup parameters * @fse_setup_info: FST setup parameters
* *
@@ -991,7 +1041,7 @@ QDF_STATUS dp_htt_umac_reset_send_setup_cmd(
*/ */
QDF_STATUS QDF_STATUS
dp_htt_rx_flow_fst_setup(struct dp_pdev *pdev, dp_htt_rx_flow_fst_setup(struct dp_pdev *pdev,
struct dp_htt_rx_flow_fst_setup *setup_info); struct dp_htt_rx_flow_fst_setup *fse_setup_info);
/** /**
* dp_htt_rx_flow_fse_operation(): Send HTT Flow Search Entry msg to * dp_htt_rx_flow_fse_operation(): Send HTT Flow Search Entry msg to
@@ -1003,7 +1053,7 @@ dp_htt_rx_flow_fst_setup(struct dp_pdev *pdev,
*/ */
QDF_STATUS QDF_STATUS
dp_htt_rx_flow_fse_operation(struct dp_pdev *pdev, dp_htt_rx_flow_fse_operation(struct dp_pdev *pdev,
struct dp_htt_rx_flow_fst_operation *op_info); struct dp_htt_rx_flow_fst_operation *fse_op_info);
/** /**
* htt_h2t_full_mon_cfg() - Send full monitor configuration msg to FW * htt_h2t_full_mon_cfg() - Send full monitor configuration msg to FW
@@ -1020,7 +1070,7 @@ int htt_h2t_full_mon_cfg(struct htt_soc *htt_soc,
/** /**
* dp_h2t_hw_vdev_stats_config_send: Send HTT command to FW for config * dp_h2t_hw_vdev_stats_config_send: Send HTT command to FW for config
of HW vdev stats * of HW vdev stats
* @dpsoc: Datapath soc handle * @dpsoc: Datapath soc handle
* @pdev_id: INVALID_PDEV_ID for all pdevs or 0,1,2 for individual pdev * @pdev_id: INVALID_PDEV_ID for all pdevs or 0,1,2 for individual pdev
* @enable: flag to specify enable/disable of stats * @enable: flag to specify enable/disable of stats