qcacld-3.0: Fix compilation error for unified IPA WDI
Fix compilation error when unified IPA WDI is enabled in the build. Change-Id: Iebb47f3d34e065197d8fca3b76aae00d9390efdf CRs-Fixed: 2177925
Cette révision appartient à :

révisé par
nshrivas

Parent
983a445b37
révision
cdf1753e97
@@ -96,55 +96,15 @@ QDF_STATUS wlan_ipa_set_perf_level(struct wlan_ipa_priv *ipa_ctx,
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* wlan_ipa_rm_notify() - IPA resource manager notifier callback
|
||||
* @user_data: user data registered with IPA
|
||||
* @event: the IPA resource manager event that occurred
|
||||
* @data: the data associated with the event
|
||||
*
|
||||
* Return: None
|
||||
*/
|
||||
static void wlan_ipa_rm_notify(void *user_data, qdf_ipa_rm_event_t event,
|
||||
unsigned long data)
|
||||
#ifdef FEATURE_METERING
|
||||
void wlan_ipa_init_metering(struct wlan_ipa_priv *ipa_ctx)
|
||||
{
|
||||
struct wlan_ipa_priv *ipa_ctx = user_data;
|
||||
|
||||
if (qdf_unlikely(!ipa_ctx))
|
||||
return;
|
||||
|
||||
if (!wlan_ipa_is_rm_enabled(ipa_ctx->config))
|
||||
return;
|
||||
|
||||
ipa_debug("Evt: %d", event);
|
||||
|
||||
switch (event) {
|
||||
case QDF_IPA_RM_RESOURCE_GRANTED:
|
||||
if (wlan_ipa_uc_is_enabled(ipa_ctx->config)) {
|
||||
/* RM Notification comes with ISR context
|
||||
* it should be serialized into work queue to avoid
|
||||
* ISR sleep problem
|
||||
*/
|
||||
ipa_ctx->uc_rm_work.event = event;
|
||||
qdf_sched_work(0, &ipa_ctx->uc_rm_work.work);
|
||||
break;
|
||||
}
|
||||
qdf_spin_lock_bh(&ipa_ctx->rm_lock);
|
||||
ipa_ctx->rm_state = WLAN_IPA_RM_GRANTED;
|
||||
qdf_spin_unlock_bh(&ipa_ctx->rm_lock);
|
||||
ipa_ctx->stats.num_rm_grant++;
|
||||
break;
|
||||
|
||||
case QDF_IPA_RM_RESOURCE_RELEASED:
|
||||
ipa_debug("RM Release");
|
||||
ipa_ctx->resource_unloading = false;
|
||||
break;
|
||||
|
||||
default:
|
||||
ipa_err("Unknown RM Evt: %d", event);
|
||||
break;
|
||||
}
|
||||
qdf_event_create(&ipa_ctx->ipa_uc_sharing_stats_comp);
|
||||
qdf_event_create(&ipa_ctx->ipa_uc_set_quota_comp);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_IPA_WDI_UNIFIED_API
|
||||
/**
|
||||
* wlan_ipa_rm_cons_release() - WLAN consumer resource release handler
|
||||
*
|
||||
@@ -158,7 +118,6 @@ static int wlan_ipa_rm_cons_release(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifndef CONFIG_IPA_WDI_UNIFIED_API
|
||||
/**
|
||||
* wlan_ipa_wdi_rm_request() - Request resource from IPA
|
||||
* @ipa_ctx: IPA context
|
||||
@@ -269,35 +228,6 @@ QDF_STATUS wlan_ipa_wdi_rm_try_release(struct wlan_ipa_priv *ipa_ctx)
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#endif /* CONFIG_IPA_WDI_UNIFIED_API */
|
||||
|
||||
/**
|
||||
* wlan_ipa_rm_cons_request() - WLAN consumer resource request handler
|
||||
*
|
||||
* Callback function registered with IPA that is called when IPA wants
|
||||
* to access the WLAN consumer resource
|
||||
*
|
||||
* Return: 0 if the request is granted, negative errno otherwise
|
||||
*/
|
||||
static int wlan_ipa_rm_cons_request(void)
|
||||
{
|
||||
struct wlan_ipa_priv *ipa_ctx;
|
||||
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
||||
|
||||
ipa_ctx = wlan_ipa_get_obj_context();
|
||||
|
||||
if (ipa_ctx->resource_loading) {
|
||||
ipa_err("IPA resource loading in progress");
|
||||
ipa_ctx->pending_cons_req = true;
|
||||
status = QDF_STATUS_E_PENDING;
|
||||
} else if (ipa_ctx->resource_unloading) {
|
||||
ipa_err("IPA resource unloading in progress");
|
||||
ipa_ctx->pending_cons_req = true;
|
||||
status = QDF_STATUS_E_PERM;
|
||||
}
|
||||
|
||||
return qdf_status_to_os_return(status);
|
||||
}
|
||||
|
||||
/**
|
||||
* wlan_ipa_uc_rm_notify_handler() - IPA uC resource notification handler
|
||||
@@ -388,15 +318,83 @@ end:
|
||||
qdf_spin_unlock_bh(&ipa_ctx->rm_lock);
|
||||
}
|
||||
|
||||
#ifdef FEATURE_METERING
|
||||
void wlan_ipa_init_metering(struct wlan_ipa_priv *ipa_ctx)
|
||||
/**
|
||||
* wlan_ipa_rm_cons_request() - WLAN consumer resource request handler
|
||||
*
|
||||
* Callback function registered with IPA that is called when IPA wants
|
||||
* to access the WLAN consumer resource
|
||||
*
|
||||
* Return: 0 if the request is granted, negative errno otherwise
|
||||
*/
|
||||
static int wlan_ipa_rm_cons_request(void)
|
||||
{
|
||||
qdf_event_create(&ipa_ctx->ipa_uc_sharing_stats_comp);
|
||||
qdf_event_create(&ipa_ctx->ipa_uc_set_quota_comp);
|
||||
}
|
||||
#endif
|
||||
struct wlan_ipa_priv *ipa_ctx;
|
||||
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
||||
|
||||
ipa_ctx = wlan_ipa_get_obj_context();
|
||||
|
||||
if (ipa_ctx->resource_loading) {
|
||||
ipa_err("IPA resource loading in progress");
|
||||
ipa_ctx->pending_cons_req = true;
|
||||
status = QDF_STATUS_E_PENDING;
|
||||
} else if (ipa_ctx->resource_unloading) {
|
||||
ipa_err("IPA resource unloading in progress");
|
||||
ipa_ctx->pending_cons_req = true;
|
||||
status = QDF_STATUS_E_PERM;
|
||||
}
|
||||
|
||||
return qdf_status_to_os_return(status);
|
||||
}
|
||||
|
||||
/**
|
||||
* wlan_ipa_rm_notify() - IPA resource manager notifier callback
|
||||
* @user_data: user data registered with IPA
|
||||
* @event: the IPA resource manager event that occurred
|
||||
* @data: the data associated with the event
|
||||
*
|
||||
* Return: None
|
||||
*/
|
||||
static void wlan_ipa_rm_notify(void *user_data, qdf_ipa_rm_event_t event,
|
||||
unsigned long data)
|
||||
{
|
||||
struct wlan_ipa_priv *ipa_ctx = user_data;
|
||||
|
||||
if (qdf_unlikely(!ipa_ctx))
|
||||
return;
|
||||
|
||||
if (!wlan_ipa_is_rm_enabled(ipa_ctx->config))
|
||||
return;
|
||||
|
||||
ipa_debug("Evt: %d", event);
|
||||
|
||||
switch (event) {
|
||||
case QDF_IPA_RM_RESOURCE_GRANTED:
|
||||
if (wlan_ipa_uc_is_enabled(ipa_ctx->config)) {
|
||||
/* RM Notification comes with ISR context
|
||||
* it should be serialized into work queue to avoid
|
||||
* ISR sleep problem
|
||||
*/
|
||||
ipa_ctx->uc_rm_work.event = event;
|
||||
qdf_sched_work(0, &ipa_ctx->uc_rm_work.work);
|
||||
break;
|
||||
}
|
||||
qdf_spin_lock_bh(&ipa_ctx->rm_lock);
|
||||
ipa_ctx->rm_state = WLAN_IPA_RM_GRANTED;
|
||||
qdf_spin_unlock_bh(&ipa_ctx->rm_lock);
|
||||
ipa_ctx->stats.num_rm_grant++;
|
||||
break;
|
||||
|
||||
case QDF_IPA_RM_RESOURCE_RELEASED:
|
||||
ipa_debug("RM Release");
|
||||
ipa_ctx->resource_unloading = false;
|
||||
break;
|
||||
|
||||
default:
|
||||
ipa_err("Unknown RM Evt: %d", event);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#ifndef CONFIG_IPA_WDI_UNIFIED_API
|
||||
QDF_STATUS wlan_ipa_wdi_setup_rm(struct wlan_ipa_priv *ipa_ctx)
|
||||
{
|
||||
qdf_ipa_rm_create_params_t create_params;
|
||||
|
Référencer dans un nouveau ticket
Bloquer un utilisateur