qcacmn: Add new QDF API's to handle napi requirements
Add new QDF API's to handle napi, softirq related handling in rx thread and rx refill thread. Change-Id: I0f371c89e65d8b20f059c56097bac07ec1e19cc9 CRs-Fixed: 3341804
This commit is contained in:

committed by
Madan Koyyalamudi

parent
b17c45a9d8
commit
edc0d60122
@@ -28,7 +28,7 @@
|
||||
#include <qdf_types.h>
|
||||
#include <i_qdf_defer.h>
|
||||
|
||||
/**
|
||||
/*
|
||||
* TODO This implements work queues (worker threads, kernel threads etc.).
|
||||
* Note that there is no cancel on a scheduled work. You cannot free a work
|
||||
* item if its queued. You cannot know if a work item is queued or not unless
|
||||
@@ -62,7 +62,7 @@ void
|
||||
qdf_create_bh(qdf_bh_t *bh, qdf_defer_fn_t func, void *arg);
|
||||
|
||||
/**
|
||||
* qdf_sched - schedule a bottom half (DPC)
|
||||
* qdf_sched_bh - schedule a bottom half (DPC)
|
||||
* @bh: pointer to bottom
|
||||
* Return: none
|
||||
*/
|
||||
@@ -198,6 +198,23 @@ void qdf_flush_workqueue(qdf_handle_t hdl, qdf_workqueue_t *wqueue);
|
||||
* Return: none
|
||||
*/
|
||||
void qdf_destroy_work(qdf_handle_t hdl, qdf_work_t *work);
|
||||
|
||||
/**
|
||||
* qdf_local_bh_disable - Disables softirq and tasklet processing
|
||||
* on the local processor
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
void qdf_local_bh_disable(void);
|
||||
|
||||
/**
|
||||
* qdf_local_bh_enable - Disables softirq and tasklet processing
|
||||
* on the local processor
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
void qdf_local_bh_enable(void);
|
||||
|
||||
#else
|
||||
/**
|
||||
* qdf_create_bh - creates the bottom half deferred handler
|
||||
@@ -213,7 +230,7 @@ qdf_create_bh(qdf_bh_t *bh, qdf_defer_fn_t func, void *arg)
|
||||
}
|
||||
|
||||
/**
|
||||
* qdf_sched - schedule a bottom half (DPC)
|
||||
* qdf_sched_bh - schedule a bottom half (DPC)
|
||||
* @bh: pointer to bottom
|
||||
* Return: none
|
||||
*/
|
||||
@@ -232,6 +249,28 @@ static inline void qdf_destroy_bh(qdf_bh_t *bh)
|
||||
__qdf_disable_bh(bh);
|
||||
}
|
||||
|
||||
/**
|
||||
* qdf_local_bh_disable - Disables softirq and tasklet processing
|
||||
* on the local processor
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
static inline void qdf_local_bh_disable(void)
|
||||
{
|
||||
__qdf_local_bh_disable();
|
||||
}
|
||||
|
||||
/**
|
||||
* qdf_local_bh_enable - Enables softirq and tasklet processing
|
||||
* on the local processor
|
||||
*
|
||||
* Return: none
|
||||
*/
|
||||
static inline void qdf_local_bh_enable(void)
|
||||
{
|
||||
__qdf_local_bh_enable();
|
||||
}
|
||||
|
||||
/*********************Non-Interrupt Context deferred Execution***************/
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user