qcacmn: Modify set 1 of ctrl_ops to acheive umac-dp decoupling

Change set 1 of the ctrl_ops APIs to replace pdev, vdev and peer
dp handles with pdev_id, vdev_id and peer mac address
along with dp soc handle

Change-Id: Iedf6dea2215d3d04b2212c71c8ec8c7328c559e8
This commit is contained in:
Pavankumar Nandeshwar
2020-01-06 20:20:31 +05:30
committed by nshrivas
parent 7e8f67cfca
commit 6c83405439
9 changed files with 297 additions and 185 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017-2019 The Linux Foundation. All rights reserved.
* Copyright (c) 2017-2020 The Linux Foundation. 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
@@ -149,7 +149,8 @@ dp_wdi_event_handler(
/*
* dp_wdi_event_sub() - Subscribe WDI event
* @txrx_pdev_handle: cdp_pdev handle
* @soc: soc handle
* @pdev_id: id of pdev
* @event_cb_sub_handle: subcribe evnet handle
* @event: Event to be subscribe
*
@@ -157,13 +158,15 @@ dp_wdi_event_handler(
*/
int
dp_wdi_event_sub(
struct cdp_pdev *txrx_pdev_handle,
void *event_cb_sub_handle,
struct cdp_soc_t *soc, uint8_t pdev_id,
wdi_event_subscribe *event_cb_sub_handle,
uint32_t event)
{
uint32_t event_index;
wdi_event_subscribe *wdi_sub;
struct dp_pdev *txrx_pdev = (struct dp_pdev *)txrx_pdev_handle;
struct dp_pdev *txrx_pdev =
dp_get_pdev_from_soc_pdev_id_wifi3((struct dp_soc *)soc,
pdev_id);
wdi_event_subscribe *event_cb_sub =
(wdi_event_subscribe *) event_cb_sub_handle;
@@ -206,7 +209,8 @@ dp_wdi_event_sub(
/*
* dp_wdi_event_unsub() - WDI event unsubscribe
* @txrx_pdev_handle: cdp_pdev handle
* @soc: soc handle
* @pdev_id: id of pdev
* @event_cb_sub_handle: subscribed event handle
* @event: Event to be unsubscribe
*
@@ -215,18 +219,20 @@ dp_wdi_event_sub(
*/
int
dp_wdi_event_unsub(
struct cdp_pdev *txrx_pdev_handle,
void *event_cb_sub_handle,
struct cdp_soc_t *soc, uint8_t pdev_id,
wdi_event_subscribe *event_cb_sub_handle,
uint32_t event)
{
uint32_t event_index = event - WDI_EVENT_BASE;
struct dp_pdev *txrx_pdev = (struct dp_pdev *)txrx_pdev_handle;
struct dp_pdev *txrx_pdev =
dp_get_pdev_from_soc_pdev_id_wifi3((struct dp_soc *)soc,
pdev_id);
wdi_event_subscribe *event_cb_sub =
(wdi_event_subscribe *) event_cb_sub_handle;
if (!event_cb_sub) {
if (!txrx_pdev || !event_cb_sub) {
QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR,
"Invalid callback in %s", __func__);
"Invalid callback or pdev in %s", __func__);
return -EINVAL;
}