qcacld-3.0: Fix core/cds documentation
There are quite a few documentation issues in core/cds: - Documentation using legacy Doxygen format instead of kernel-doc format - Documentation of implementations instead of interfaces - Duplicate documentation - Syntactically incorrect kernel-doc Fix all of these issues. Change-Id: I7ffdea9027278c75975a826466da2d7204a25d0c CRs-Fixed: 3386190
此提交包含在:
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2014-2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -61,13 +61,14 @@
|
||||
/**
|
||||
* enum cds_driver_state - Driver state
|
||||
* @CDS_DRIVER_STATE_UNINITIALIZED: Driver is in uninitialized state.
|
||||
* CDS_DRIVER_STATE_LOADED: Driver is loaded and functional.
|
||||
* CDS_DRIVER_STATE_LOADING: Driver probe is in progress.
|
||||
* CDS_DRIVER_STATE_UNLOADING: Driver remove is in progress.
|
||||
* CDS_DRIVER_STATE_RECOVERING: Recovery in progress.
|
||||
* CDS_DRIVER_STATE_BAD: Driver in bad state.
|
||||
* CDS_DRIVER_STATE_MODULE_STOP: Module stop in progress or done.
|
||||
* CDS_DRIVER_STATE_ASSERTING_TARGET: Driver assert target in progress.
|
||||
* @CDS_DRIVER_STATE_LOADED: Driver is loaded and functional.
|
||||
* @CDS_DRIVER_STATE_LOADING: Driver probe is in progress.
|
||||
* @CDS_DRIVER_STATE_UNLOADING: Driver remove is in progress.
|
||||
* @CDS_DRIVER_STATE_RECOVERING: Recovery in progress.
|
||||
* @CDS_DRIVER_STATE_BAD: Driver in bad state.
|
||||
* @CDS_DRIVER_STATE_FW_READY: Driver Firmware ready
|
||||
* @CDS_DRIVER_STATE_MODULE_STOP: Module stop in progress or done.
|
||||
* @CDS_DRIVER_STATE_ASSERTING_TARGET: Driver assert target in progress.
|
||||
*/
|
||||
enum cds_driver_state {
|
||||
CDS_DRIVER_STATE_UNINITIALIZED = 0,
|
||||
@@ -82,7 +83,7 @@ enum cds_driver_state {
|
||||
};
|
||||
|
||||
/**
|
||||
* struce cds_vdev_dp_stats - vdev stats populated from DP
|
||||
* struct cds_vdev_dp_stats - vdev stats populated from DP
|
||||
* @tx_retries: packet number of successfully transmitted after more
|
||||
* than one retransmission attempt
|
||||
* @tx_retries_mpdu: mpdu number of successfully transmitted after more
|
||||
@@ -344,7 +345,7 @@ QDF_STATUS cds_open(struct wlan_objmgr_psoc *psoc);
|
||||
|
||||
/**
|
||||
* cds_dp_open() - Open datapath module
|
||||
* @psoc - object manager soc handle
|
||||
* @psoc: object manager soc handle
|
||||
*
|
||||
* API to map the datapath rings to interrupts
|
||||
* and also open the datapath pdev module.
|
||||
@@ -531,6 +532,7 @@ void cds_pkt_stats_to_logger_thread(void *pl_hdr, void *pkt_dump, void *data)
|
||||
*
|
||||
* @count: Number of lines to be copied
|
||||
* @print: Print callback to print in the buffer
|
||||
* @print_priv: Print callback private data
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2016-2020 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -37,9 +37,10 @@
|
||||
#include "wmi_unified_param.h"
|
||||
|
||||
/**
|
||||
* enum cfg_sub_20_channel_width: ini values for su 20 mhz channel width
|
||||
* @WLAN_SUB_20_CH_WIDTH_5: Use 5 mhz channel width
|
||||
* @WLAN_SUB_20_CH_WIDTH_10: Use 10 mhz channel width
|
||||
* enum cfg_sub_20_channel_width: ini values for su 20 MHz channel width
|
||||
* @WLAN_SUB_20_CH_WIDTH_NONE: No sub-20 MHz channel width
|
||||
* @WLAN_SUB_20_CH_WIDTH_5: Use 5 MHz channel width
|
||||
* @WLAN_SUB_20_CH_WIDTH_10: Use 10 MHz channel width
|
||||
*/
|
||||
enum cfg_sub_20_channel_width {
|
||||
WLAN_SUB_20_CH_WIDTH_NONE = 0,
|
||||
@@ -86,13 +87,17 @@ struct wlan_cds_feature_set {
|
||||
* @is_lpass_enabled: Indicate whether LPASS is enabled or not
|
||||
* @tx_chain_mask_cck: Tx chain mask enabled or not
|
||||
* @sub_20_channel_width: Sub 20 MHz ch width, ini intersected with fw cap
|
||||
* @is_fw_timeout: Indicate whether crash host when fw timesout or not
|
||||
* @max_msdus_per_rxinorderind:
|
||||
* @self_recovery_enabled:
|
||||
* @fw_timeout_crash: Indicate whether crash host when fw timesout or not
|
||||
* @ac_specs:
|
||||
* @ito_repeat_count: Indicates ito repeated count
|
||||
* @force_target_assert_enabled: Indicate whether target assert enabled or not
|
||||
* @bandcapability: Configured band by user
|
||||
* @rps_enabled: RPS enabled in SAP mode
|
||||
* Structure for holding cds ini parameters.
|
||||
* @num_vdevs: Configured max number of VDEVs can be supported in the stack.
|
||||
* @enable_tx_compl_tsf64:
|
||||
* @cds_feature_set: CDS feature set structure.
|
||||
* @get_wifi_features: Get wifi features from fw
|
||||
*/
|
||||
|
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2011,2014-2020 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2014-2016, 2018, 2020 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -20,19 +20,12 @@
|
||||
#if !defined(__CDS_PKT_H)
|
||||
#define __CDS_PKT_H
|
||||
|
||||
/**=========================================================================
|
||||
/**
|
||||
* DOC: cds_packet.h
|
||||
* Connectivity driver services (CDS) network Packet APIs
|
||||
* Network Protocol packet/buffer support interfaces
|
||||
*/
|
||||
|
||||
\file cds_packet.h
|
||||
|
||||
\brief Connectivity driver services (CDS) network Packet APIs
|
||||
|
||||
Network Protocol packet/buffer support interfaces
|
||||
|
||||
========================================================================*/
|
||||
|
||||
/*--------------------------------------------------------------------------
|
||||
Include Files
|
||||
------------------------------------------------------------------------*/
|
||||
#include <qdf_types.h>
|
||||
#include <qdf_status.h>
|
||||
|
||||
@@ -49,14 +42,21 @@ typedef struct cds_pkt_t cds_pkt_t;
|
||||
#include "qdf_nbuf.h"
|
||||
|
||||
/**
|
||||
* cds_pkt_return_packet Free the cds Packet
|
||||
* @ cds Packet
|
||||
* cds_pkt_return_packet() - Free the cds Packet
|
||||
* @packet: cds Packet
|
||||
*
|
||||
* Return: QDF_STATUS
|
||||
*/
|
||||
QDF_STATUS cds_pkt_return_packet(cds_pkt_t *packet);
|
||||
|
||||
/**
|
||||
* cds_pkt_get_packet_length Returns the packet length
|
||||
* @ cds Packet
|
||||
* cds_pkt_get_packet_length() - Get packet length for a cds Packet
|
||||
* @pPacket: the cds Packet to get the packet length from
|
||||
* @pPacketSize: location to return the total size of the data
|
||||
* contained in the cds Packet.
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS if the length was returned, otherwise an
|
||||
* appropriate QDF_STATUS_E_* status code.
|
||||
*/
|
||||
QDF_STATUS cds_pkt_get_packet_length(cds_pkt_t *pPacket,
|
||||
uint16_t *pPacketSize);
|
||||
@@ -69,9 +69,24 @@ QDF_STATUS cds_pkt_get_packet_length(cds_pkt_t *pPacket,
|
||||
* from HDD and other layers
|
||||
* below code will be removed
|
||||
*/
|
||||
|
||||
/**
|
||||
* cds_packet_alloc() - Allocate a network buffer for TX
|
||||
* @size: size of the packet
|
||||
* @data: packet payload
|
||||
* @ppPacket: pointer to return allocated packet
|
||||
*
|
||||
* Allocates a packet of the indicated @size, populates it with the
|
||||
* @data payload, and returns the pointer via @ppPacket. Caller is
|
||||
* responsible for calling cds_packet_free() after the packet has been
|
||||
* sent to reclaim the packet.
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS if a packet is allocated, otherwise a
|
||||
* appropriate QDF_STATUS_E_* status code.
|
||||
*/
|
||||
#ifdef MEMORY_DEBUG
|
||||
#define cds_packet_alloc(s, d, p) \
|
||||
cds_packet_alloc_debug(s, d, p, __func__, __LINE__)
|
||||
#define cds_packet_alloc(size, data, ppPacket) \
|
||||
cds_packet_alloc_debug(size, data, ppPacket, __func__, __LINE__)
|
||||
|
||||
QDF_STATUS cds_packet_alloc_debug(uint16_t size, void **data, void **ppPacket,
|
||||
const char *func_name, uint32_t line_num);
|
||||
@@ -79,6 +94,10 @@ QDF_STATUS cds_packet_alloc_debug(uint16_t size, void **data, void **ppPacket,
|
||||
QDF_STATUS cds_packet_alloc(uint16_t size, void **data, void **ppPacket);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* cds_packet_free() - Free input network buffer
|
||||
* @pPacket: network buffer
|
||||
*/
|
||||
void cds_packet_free(void *pPacket);
|
||||
|
||||
#endif /* !defined( __CDS_PKT_H ) */
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2012-2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -20,17 +20,11 @@
|
||||
#ifndef __CDS_SCHED_H
|
||||
#define __CDS_SCHED_H
|
||||
|
||||
/**=========================================================================
|
||||
/**
|
||||
* DOC: cds_sched.h
|
||||
* Connectivity driver services scheduler
|
||||
*/
|
||||
|
||||
\file cds_sched.h
|
||||
|
||||
\brief Connectivity driver services scheduler
|
||||
|
||||
========================================================================*/
|
||||
|
||||
/*--------------------------------------------------------------------------
|
||||
Include Files
|
||||
------------------------------------------------------------------------*/
|
||||
#include <qdf_event.h>
|
||||
#include <i_qdf_types.h>
|
||||
#include <linux/wait.h>
|
||||
@@ -231,12 +225,33 @@ struct cds_context {
|
||||
Function declarations and documentation
|
||||
---------------------------------------------------------------------------*/
|
||||
#ifdef QCA_CONFIG_SMP
|
||||
|
||||
/**
|
||||
* cds_sched_handle_cpu_hot_plug() - cpu hotplug event handler
|
||||
*
|
||||
* cpu hotplug indication handler
|
||||
* will find online cores and will assign proper core based on perf requirement
|
||||
*
|
||||
* Return: 0 success
|
||||
* 1 fail
|
||||
*/
|
||||
int cds_sched_handle_cpu_hot_plug(void);
|
||||
|
||||
/**
|
||||
* cds_sched_handle_throughput_req() - cpu throughput requirement handler
|
||||
* @high_tput_required: high throughput is required or not
|
||||
*
|
||||
* high or low throughput indication handler
|
||||
* will find online cores and will assign proper core based on perf requirement
|
||||
*
|
||||
* Return: 0 success
|
||||
* 1 fail
|
||||
*/
|
||||
int cds_sched_handle_throughput_req(bool high_tput_required);
|
||||
|
||||
/**
|
||||
* cds_sched_handle_rx_thread_affinity_req - rx thread affinity req handler
|
||||
* @high_tput_required: high throughput is required or not
|
||||
* cds_sched_handle_rx_thread_affinity_req() - rx thread affinity req handler
|
||||
* @high_throughput: high throughput is required or not
|
||||
*
|
||||
* rx thread affinity handler will find online cores and
|
||||
* will assign proper core based on perf requirement
|
||||
@@ -261,28 +276,28 @@ void cds_set_rx_thread_ul_cpu_mask(uint8_t cpu_affinity_mask);
|
||||
*/
|
||||
void cds_set_rx_thread_cpu_mask(uint8_t cpu_affinity_mask);
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
\brief cds_drop_rxpkt_by_staid() - API to drop pending Rx packets for a sta
|
||||
The \a cds_drop_rxpkt_by_staid() drops queued packets for a station, to drop
|
||||
all the pending packets the caller has to send WLAN_MAX_STA_COUNT as staId.
|
||||
\param pSchedContext - pointer to the global CDS Sched Context
|
||||
\param staId - Station Id
|
||||
|
||||
\return Nothing
|
||||
\sa cds_drop_rxpkt_by_staid()
|
||||
-------------------------------------------------------------------------*/
|
||||
/**
|
||||
* cds_drop_rxpkt_by_staid() - api to drop pending rx packets for a sta
|
||||
* @pSchedContext: Pointer to the global CDS Sched Context
|
||||
* @staId: Station Id
|
||||
*
|
||||
* This api drops queued packets for a station, to drop all the pending
|
||||
* packets the caller has to send WLAN_MAX_STA_COUNT as staId.
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
void cds_drop_rxpkt_by_staid(p_cds_sched_context pSchedContext, uint16_t staId);
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
\brief cds_indicate_rxpkt() - API to Indicate rx data packet
|
||||
The \a cds_indicate_rxpkt() enqueues the rx packet onto ol_rx_thread_queue
|
||||
and notifies cds_ol_rx_thread().
|
||||
\param Arg - pointer to the global CDS Sched Context
|
||||
\param pkt - Vos data message buffer
|
||||
|
||||
\return Nothing
|
||||
\sa cds_indicate_rxpkt()
|
||||
-------------------------------------------------------------------------*/
|
||||
/**
|
||||
* cds_indicate_rxpkt() - indicate rx data packet
|
||||
* @pSchedContext: Pointer to the global CDS Sched Context
|
||||
* @pkt: CDS data message buffer
|
||||
*
|
||||
* This api enqueues the rx packet into ol_rx_thread_queue and notifies
|
||||
* cds_ol_rx_thread()
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
void cds_indicate_rxpkt(p_cds_sched_context pSchedContext,
|
||||
struct cds_ol_rx_pkt *pkt);
|
||||
|
||||
@@ -295,142 +310,76 @@ void cds_indicate_rxpkt(p_cds_sched_context pSchedContext,
|
||||
*/
|
||||
QDF_STATUS cds_close_rx_thread(void);
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
\brief cds_alloc_ol_rx_pkt() - API to return next available cds message
|
||||
The \a cds_alloc_ol_rx_pkt() returns next available cds message buffer
|
||||
used for Rx Data processing.
|
||||
\param pSchedContext - pointer to the global CDS Sched Context
|
||||
|
||||
\return pointer to cds message buffer
|
||||
\sa cds_alloc_ol_rx_pkt()
|
||||
-------------------------------------------------------------------------*/
|
||||
/**
|
||||
* cds_alloc_ol_rx_pkt() - API to return next available cds message
|
||||
* @pSchedContext: Pointer to the global CDS Sched Context
|
||||
*
|
||||
* This api returns next available cds message buffer used for rx data
|
||||
* processing
|
||||
*
|
||||
* Return: Pointer to cds message buffer
|
||||
*/
|
||||
struct cds_ol_rx_pkt *cds_alloc_ol_rx_pkt(p_cds_sched_context pSchedContext);
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
\brief cds_free_ol_rx_pkt() - API to release cds message to the freeq
|
||||
The \a cds_free_ol_rx_pkt() returns the cds message used for Rx data
|
||||
to the free queue.
|
||||
\param pSchedContext - pointer to the global CDS Sched Context
|
||||
\param pkt - Vos message buffer to be returned to free queue.
|
||||
|
||||
\return Nothing
|
||||
\sa cds_free_ol_rx_pkt()
|
||||
-------------------------------------------------------------------------*/
|
||||
void cds_free_ol_rx_pkt(p_cds_sched_context pSchedContext,
|
||||
struct cds_ol_rx_pkt *pkt);
|
||||
/*---------------------------------------------------------------------------
|
||||
\brief cds_free_ol_rx_pkt_freeq() - Free cdss buffer free queue
|
||||
The \a cds_free_ol_rx_pkt_freeq() does mem free of the buffers
|
||||
available in free cds buffer queue which is used for Data rx processing
|
||||
from Tlshim.
|
||||
\param pSchedContext - pointer to the global CDS Sched Context
|
||||
|
||||
\return Nothing
|
||||
\sa cds_free_ol_rx_pkt_freeq()
|
||||
-------------------------------------------------------------------------*/
|
||||
void cds_free_ol_rx_pkt_freeq(p_cds_sched_context pSchedContext);
|
||||
#else
|
||||
/**
|
||||
* cds_sched_handle_rx_thread_affinity_req - rx thread affinity req handler
|
||||
* @high_tput_required: high throughput is required or not
|
||||
*
|
||||
* rx thread affinity handler will find online cores and
|
||||
* will assign proper core based on perf requirement
|
||||
*
|
||||
* Return: None
|
||||
*/
|
||||
static inline void cds_sched_handle_rx_thread_affinity_req(
|
||||
bool high_throughput) {}
|
||||
|
||||
/**
|
||||
* cds_set_rx_thread_ul_cpu_mask() - Rx_thread affinity for UL from INI
|
||||
* @cpu_affinity_mask: CPU affinity bitmap
|
||||
*
|
||||
* Return:None
|
||||
*/
|
||||
static inline void cds_set_rx_thread_ul_cpu_mask(uint8_t cpu_affinity_mask) {}
|
||||
|
||||
/**
|
||||
* cds_set_rx_thread_cpu_mask() - Rx_thread affinity from INI
|
||||
* @cpu_affinity_mask: CPU affinity bitmap
|
||||
*
|
||||
* Return:None
|
||||
*/
|
||||
static inline void cds_set_rx_thread_cpu_mask(uint8_t cpu_affinity_mask) {}
|
||||
|
||||
/**
|
||||
* cds_drop_rxpkt_by_staid() - api to drop pending rx packets for a sta
|
||||
* cds_free_ol_rx_pkt() - api to release cds message to the freeq
|
||||
* @pSchedContext: Pointer to the global CDS Sched Context
|
||||
* @staId: Station Id
|
||||
* @pkt: CDS message buffer to be returned to free queue.
|
||||
*
|
||||
* This api drops queued packets for a station, to drop all the pending
|
||||
* packets the caller has to send WLAN_MAX_STA_COUNT as staId.
|
||||
* This api returns the cds message used for Rx data to the free queue
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
void cds_free_ol_rx_pkt(p_cds_sched_context pSchedContext,
|
||||
struct cds_ol_rx_pkt *pkt);
|
||||
|
||||
/**
|
||||
* cds_free_ol_rx_pkt_freeq() - free cds buffer free queue
|
||||
* @pSchedContext: pointer to the global CDS Sched Context
|
||||
*
|
||||
* This API does mem free of the buffers available in free cds buffer
|
||||
* queue which is used for Data rx processing.
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
void cds_free_ol_rx_pkt_freeq(p_cds_sched_context pSchedContext);
|
||||
#else
|
||||
static inline void cds_sched_handle_rx_thread_affinity_req(
|
||||
bool high_throughput) {}
|
||||
|
||||
static inline void cds_set_rx_thread_ul_cpu_mask(uint8_t cpu_affinity_mask) {}
|
||||
|
||||
static inline void cds_set_rx_thread_cpu_mask(uint8_t cpu_affinity_mask) {}
|
||||
|
||||
static inline
|
||||
void cds_drop_rxpkt_by_staid(p_cds_sched_context pSchedContext, uint16_t staId)
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* cds_indicate_rxpkt() - API to Indicate rx data packet
|
||||
* @pSchedContext: pointer to CDS Sched Context
|
||||
* @pkt: CDS OL RX pkt pointer containing to RX data message buffer
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
static inline
|
||||
void cds_indicate_rxpkt(p_cds_sched_context pSchedContext,
|
||||
struct cds_ol_rx_pkt *pkt)
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* cds_close_rx_thread() - close the Rx thread
|
||||
*
|
||||
* This api closes the Rx thread:
|
||||
*
|
||||
* Return: qdf status
|
||||
*/
|
||||
static inline
|
||||
QDF_STATUS cds_close_rx_thread(void)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* cds_alloc_ol_rx_pkt() - API to return next available cds message
|
||||
* @pSchedContext: pointer to CDS Sched Context
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
static inline
|
||||
struct cds_ol_rx_pkt *cds_alloc_ol_rx_pkt(p_cds_sched_context pSchedContext)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/**
|
||||
* cds_free_ol_rx_pkt() - API to release cds message to the freeq
|
||||
* @pSchedContext: pointer to CDS Sched Context
|
||||
* @pkt: CDS message buffer to be returned to free queue
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
static inline
|
||||
void cds_free_ol_rx_pkt(p_cds_sched_context pSchedContext,
|
||||
struct cds_ol_rx_pkt *pkt)
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* cds_free_ol_rx_pkt_freeq() - Free cds buffer free queue
|
||||
* @pSchedContext: pointer to CDS Sched Context
|
||||
* @pkt: CDS message buffer to be returned to free queue
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
static inline
|
||||
void cds_free_ol_rx_pkt_freeq(p_cds_sched_context pSchedContext)
|
||||
{
|
||||
@@ -444,82 +393,69 @@ static inline int cds_sched_handle_throughput_req(
|
||||
|
||||
#endif
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
|
||||
\brief cds_sched_open() - initialize the CDS Scheduler
|
||||
|
||||
The \a cds_sched_open() function initializes the CDS Scheduler
|
||||
Upon successful initialization:
|
||||
|
||||
- All the message queues are initialized
|
||||
|
||||
- The Main Controller thread is created and ready to receive and
|
||||
dispatch messages.
|
||||
|
||||
- The Tx thread is created and ready to receive and dispatch messages
|
||||
|
||||
\param p_cds_context - pointer to the global QDF Context
|
||||
|
||||
\param p_cds_sched_context - pointer to a previously allocated buffer big
|
||||
enough to hold a scheduler context.
|
||||
|
||||
\return QDF_STATUS_SUCCESS - Scheduler was successfully initialized and
|
||||
is ready to be used.
|
||||
|
||||
QDF_STATUS_E_RESOURCES - System resources (other than memory)
|
||||
are unavailable to initialize the scheduler
|
||||
|
||||
QDF_STATUS_E_NOMEM - insufficient memory exists to initialize
|
||||
the scheduler
|
||||
|
||||
QDF_STATUS_E_INVAL - Invalid parameter passed to the scheduler Open
|
||||
function
|
||||
|
||||
QDF_STATUS_E_FAILURE - Failure to initialize the scheduler/
|
||||
|
||||
\sa cds_sched_open()
|
||||
|
||||
-------------------------------------------------------------------------*/
|
||||
/**
|
||||
* cds_sched_open() - initialize the CDS Scheduler
|
||||
* @p_cds_context: Pointer to the global CDS Context
|
||||
* @pSchedContext: Pointer to a previously allocated buffer big
|
||||
* enough to hold a scheduler context.
|
||||
* @SchedCtxSize: CDS scheduler context size
|
||||
*
|
||||
* This function initializes the CDS Scheduler
|
||||
* Upon successful initialization:
|
||||
* - All the message queues are initialized
|
||||
* - The Main Controller thread is created and ready to receive and
|
||||
* dispatch messages.
|
||||
*
|
||||
*
|
||||
* Return: QDF status
|
||||
*/
|
||||
QDF_STATUS cds_sched_open(void *p_cds_context,
|
||||
p_cds_sched_context pSchedCxt, uint32_t SchedCtxSize);
|
||||
p_cds_sched_context pSchedContext,
|
||||
uint32_t SchedCtxSize);
|
||||
|
||||
/*---------------------------------------------------------------------------
|
||||
|
||||
\brief cds_sched_close() - Close the CDS Scheduler
|
||||
|
||||
The \a cds_sched_closes() function closes the CDS Scheduler
|
||||
Upon successful closing:
|
||||
|
||||
- All the message queues are flushed
|
||||
|
||||
- The Main Controller thread is closed
|
||||
|
||||
- The Tx thread is closed
|
||||
|
||||
\return QDF_STATUS_SUCCESS - Scheduler was successfully initialized and
|
||||
is ready to be used.
|
||||
|
||||
QDF_STATUS_E_INVAL - Invalid parameter passed to the scheduler Open
|
||||
function
|
||||
|
||||
QDF_STATUS_E_FAILURE - Failure to initialize the scheduler/
|
||||
|
||||
\sa cds_sched_close()
|
||||
|
||||
---------------------------------------------------------------------------*/
|
||||
/**
|
||||
* cds_sched_close() - close the cds scheduler
|
||||
*
|
||||
* This api closes the CDS Scheduler upon successful closing:
|
||||
* - All the message queues are flushed
|
||||
* - The Main Controller thread is closed
|
||||
* - The Tx thread is closed
|
||||
*
|
||||
*
|
||||
* Return: qdf status
|
||||
*/
|
||||
QDF_STATUS cds_sched_close(void);
|
||||
|
||||
/**
|
||||
* get_cds_sched_ctxt() - get cds scheduler context
|
||||
*
|
||||
* Return: cds scheduler context
|
||||
*/
|
||||
p_cds_sched_context get_cds_sched_ctxt(void);
|
||||
|
||||
void qdf_timer_module_init(void);
|
||||
void qdf_timer_module_deinit(void);
|
||||
|
||||
/**
|
||||
* cds_ssr_protect_init() - initialize ssr protection debug functionality
|
||||
*
|
||||
* Return:
|
||||
* void
|
||||
*/
|
||||
void cds_ssr_protect_init(void);
|
||||
|
||||
/**
|
||||
* cds_get_gfp_flags(): get GFP flags
|
||||
*
|
||||
* Based on the scheduled context, return GFP flags
|
||||
* Return: gfp flags
|
||||
*/
|
||||
int cds_get_gfp_flags(void);
|
||||
|
||||
/**
|
||||
* cds_shutdown_notifier_register() - Register for shutdown notification
|
||||
* @cb : Call back to be called
|
||||
* @priv : Private pointer to be passed back to call back
|
||||
* @cb: Call back to be called
|
||||
* @priv: Private pointer to be passed back to call back
|
||||
*
|
||||
* During driver remove or shutdown (recovery), external threads might be stuck
|
||||
* waiting on some event from firmware at lower layers. Remove or shutdown can't
|
||||
@@ -529,7 +465,7 @@ int cds_get_gfp_flags(void);
|
||||
* further as waiting there may not make sense when FW may already have been
|
||||
* down.
|
||||
*
|
||||
* Return: CDS status
|
||||
* Return: QDF status
|
||||
*/
|
||||
QDF_STATUS cds_shutdown_notifier_register(void (*cb)(void *priv), void *priv);
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2014-2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -20,19 +20,12 @@
|
||||
#ifndef __CDS_UTILS_H
|
||||
#define __CDS_UTILS_H
|
||||
|
||||
/**=========================================================================
|
||||
/**
|
||||
* DOC: cds_utils.h
|
||||
* Connectivity driver services (CDS) utility APIs
|
||||
* Various utility functions
|
||||
*/
|
||||
|
||||
\file cds_utils.h
|
||||
|
||||
\brief Connectivity driver services (CDS) utility APIs
|
||||
|
||||
Various utility functions
|
||||
|
||||
========================================================================*/
|
||||
|
||||
/*--------------------------------------------------------------------------
|
||||
Include Files
|
||||
------------------------------------------------------------------------*/
|
||||
#include <qdf_types.h>
|
||||
#include <qdf_status.h>
|
||||
#include <qdf_event.h>
|
||||
@@ -83,9 +76,9 @@
|
||||
|
||||
/**
|
||||
* enum cds_band_type - Band type - 2g, 5g or all
|
||||
* CDS_BAND_ALL: Both 2G and 5G are valid.
|
||||
* CDS_BAND_2GHZ: only 2G is valid.
|
||||
* CDS_BAND_5GHZ: only 5G is valid.
|
||||
* @CDS_BAND_ALL: Both 2G and 5G are valid.
|
||||
* @CDS_BAND_2GHZ: only 2G is valid.
|
||||
* @CDS_BAND_5GHZ: only 5G is valid.
|
||||
*/
|
||||
enum cds_band_type {
|
||||
CDS_BAND_ALL = 0,
|
||||
@@ -104,7 +97,7 @@ enum cds_band_type cds_chan_to_band(uint32_t chan);
|
||||
uint8_t cds_get_mmie_size(void);
|
||||
|
||||
/**
|
||||
* cds_get_gmac_mmie_size: Gives length of GMAC MMIE size
|
||||
* cds_get_gmac_mmie_size() - Gives length of GMAC MMIE size
|
||||
*
|
||||
* Return: Size of MMIE for GMAC
|
||||
*/
|
||||
|
新增問題並參考
封鎖使用者