qcacld-3.0: Add DP Component Skeleton code

Add new files and Skeleton code for DP component.

Change-Id: I6bfe59f31b292b77bbd728423a4ed53c3e4d1c2f
CRs-Fixed: 3164956
Esse commit está contido em:
Amit Mehta
2022-03-29 22:01:49 -07:00
commit de Madan Koyyalamudi
commit 5116bc8f8f
24 arquivos alterados com 1382 adições e 0 exclusões

Ver arquivo

@@ -0,0 +1,52 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: wlan_dp_main.h
*
*
*/
#ifndef __WLAN_DP_MAIN_H__
#define __WLAN_DP_MAIN_H__
#include "wlan_dp_public_struct.h"
#include "wlan_dp_priv.h"
#include "wlan_dp_objmgr.h"
struct wlan_dp_intf*
dp_get_intf_by_macaddr(struct wlan_dp_psoc_context *dp_ctx,
struct qdf_mac_addr *addr);
QDF_STATUS
dp_vdev_obj_destroy_notification(struct wlan_objmgr_vdev *vdev, void *arg);
QDF_STATUS
dp_vdev_obj_create_notification(struct wlan_objmgr_vdev *vdev, void *arg);
QDF_STATUS
dp_pdev_obj_create_notification(struct wlan_objmgr_pdev *pdev, void *arg);
QDF_STATUS
dp_pdev_obj_destroy_notification(struct wlan_objmgr_pdev *pdev, void *arg);
QDF_STATUS
dp_psoc_obj_create_notification(struct wlan_objmgr_psoc *psoc, void *arg);
QDF_STATUS
dp_psoc_obj_destroy_notification(struct wlan_objmgr_psoc *psoc, void *arg);
#endif

Ver arquivo

@@ -0,0 +1,55 @@
/*
* Copyright (c) 2022 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: This file contains various object manager related wrappers and helpers
*/
#ifndef __WLAN_DP_OBJMGR_H
#define __WLAN_DP_OBJMGR_H
#include "wlan_cmn.h"
#include "wlan_objmgr_cmn.h"
#include "wlan_objmgr_peer_obj.h"
#include "wlan_objmgr_vdev_obj.h"
#include "wlan_objmgr_pdev_obj.h"
#include "wlan_objmgr_psoc_obj.h"
#include "wlan_utility.h"
/**
* dp_get_vdev_priv_obj() - Wrapper to retrieve vdev priv obj
* @vdev: vdev pointer
*
* Return: DP vdev private object
*/
static inline struct wlan_dp_intf *
dp_get_vdev_priv_obj(struct wlan_objmgr_vdev *vdev)
{
return NULL;
}
/**
* dp_psoc_get_priv() - Wrapper to retrieve psoc priv obj
* @psoc: psoc pointer
*
* Return: DP psoc private object
*/
static inline struct wlan_dp_psoc_context *
dp_psoc_get_priv(struct wlan_objmgr_psoc *psoc)
{
return NULL;
}
#endif /* __WLAN_DP_OBJMGR_H */

Ver arquivo

@@ -0,0 +1,122 @@
/*
* Copyright (c) 2022 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: WLAN Host Device Driver periodic STA statistics related implementation
*/
#if !defined(WLAN_DP_PERIODIC_STA_STATS_H)
#define WLAN_DP_PERIODIC_STA_STATS_H
#include "wlan_dp_priv.h"
#include "wlan_objmgr_psoc_obj.h"
#ifdef WLAN_FEATURE_PERIODIC_STA_STATS
/**
* dp_periodic_sta_stats_config() - Initialize periodic stats configuration
* @config: Pointer to dp configuration
* @psoc: Pointer to psoc
*
* Return: none
*/
void dp_periodic_sta_stats_config(struct wlan_dp_psoc_cfg *config,
struct wlan_objmgr_psoc *psoc);
/**
* dp_periodic_sta_stats_init() - Initialize periodic stats display flag
* @adapter: Pointer to the station adapter
*
* Return: none
*/
void dp_periodic_sta_stats_init(struct wlan_dp_intf *dp_intf);
/**
* dp_periodic_sta_stats_display() - Display periodic stats at STA
* @dp_ctx: dp context
*
* Return: none
*/
void dp_periodic_sta_stats_display(struct wlan_dp_psoc_context *dp_ctx);
/**
* dp_periodic_sta_stats_start() - Start displaying periodic stats for STA
* @adapter: Pointer to the station adapter
*
* Return: none
*/
void dp_periodic_sta_stats_start(struct wlan_dp_intf *dp_intf);
/**
* dp_periodic_sta_stats_stop() - Stop displaying periodic stats for STA
* @adapter: Pointer to the station adapter
*
* Return: none
*/
void dp_periodic_sta_stats_stop(struct wlan_dp_intf *dp_intf);
/**
* dp_periodic_sta_stats_mutex_create() - Create mutex for STA periodic stats
* @adapter: Pointer to the station adapter
*
* Return: none
*/
void dp_periodic_sta_stats_mutex_create(struct wlan_dp_intf *dp_intf);
/**
* dp_periodic_sta_stats_mutex_destroy() - Destroy STA periodic stats mutex
* @adapter: Pointer to the station adapter
*
* Return: none
*/
void dp_periodic_sta_stats_mutex_destroy(struct wlan_dp_intf *dp_intf);
#else
static inline void
dp_periodic_sta_stats_display(struct wlan_dp_psoc_context *dp_ctx)
{
}
static inline void
dp_periodic_sta_stats_config(struct wlan_dp_psoc_cfg *config,
struct wlan_objmgr_psoc *psoc)
{
}
static inline void dp_periodic_sta_stats_start(struct wlan_dp_intf *dp_intf)
{
}
static inline void dp_periodic_sta_stats_stop(struct wlan_dp_intf *dp_intf)
{
}
static inline void
dp_periodic_sta_stats_init(struct wlan_dp_intf *dp_intf)
{
}
static inline void
dp_periodic_sta_stats_mutex_create(struct wlan_dp_intf *dp_intf)
{
}
static inline void
dp_periodic_sta_stats_mutex_destroy(struct wlan_dp_intf *dp_intf)
{
}
#endif /* end #ifdef WLAN_FEATURE_PERIODIC_STA_STATS */
#endif /* end #if !defined(WLAN_DP_PERIODIC_STA_STATS_H) */

Ver arquivo

@@ -0,0 +1,76 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: Declare various struct, macros which are used for private to DP.
*
* Note: This file shall not contain public API's prototype/declarations.
*
*/
#ifndef _WLAN_DP_PRIV_STRUCT_H_
#define _WLAN_DP_PRIV_STRUCT_H_
#include "wlan_dp_public_struct.h"
#include "cdp_txrx_cmn.h"
#include "hdd_dp_cfg.h"
#include "wlan_dp_cfg.h"
#include "wlan_dp_objmgr.h"
#include <cdp_txrx_misc.h>
#include "qdf_periodic_work.h"
#if defined(WLAN_FEATURE_DP_BUS_BANDWIDTH) && defined(FEATURE_RUNTIME_PM)
/**
* struct dp_rtpm_tput_policy_context - RTPM throughput policy context
*/
struct dp_rtpm_tput_policy_context {
};
#endif
struct wlan_dp_psoc_cfg {
};
/**
* struct tx_rx_histogram - structure to keep track of tx and rx packets
* received over 100ms intervals
*/
struct tx_rx_histogram {
};
struct dp_tx_rx_stats {
};
struct dp_stats {
struct dp_tx_rx_stats tx_rx_stats;
};
/**
* struct wlan_dp_intf - DP interface object related info
* @dp_ctx: DP context reference
*/
struct wlan_dp_intf {
struct wlan_dp_psoc_context *dp_ctx;
};
/**
* struct wlan_dp_psoc_context - psoc related data required for DP
*/
struct wlan_dp_psoc_context {
};
#endif /* end of _WLAN_DP_PRIV_STRUCT_H_ */

Ver arquivo

@@ -0,0 +1,75 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
#ifndef __WLAN_DP_TXRX_H__
#define __WLAN_DP_TXRX_H__
#include <wlan_dp_priv.h>
#include <wlan_dp_main.h>
#include <qdf_types.h>
/**
* dp_softap_start_xmit() - Transmit a frame for SAP interface
* @nbuf: pointer to Network buffer
* @dp_intf: DP interface
*
* Return: QDF_STATUS_SUCCESS on successful transmission
*/
QDF_STATUS
dp_softap_start_xmit(qdf_nbuf_t nbuf, struct wlan_dp_intf *dp_intf);
/**
* dp_softap_rx_packet_cbk() - Receive packet handler for SAP
* @dp_intf_context: pointer to DP interface context
* @rxBuf: pointer to rx qdf_nbuf
*
* Receive callback registered with data path. DP will call this to notify
* when one or more packets were received for a registered
* STA.
*
* Return: QDF_STATUS_E_FAILURE if any errors encountered,
* QDF_STATUS_SUCCESS otherwise
*/
QDF_STATUS
dp_softap_rx_packet_cbk(void *intf_ctx, qdf_nbuf_t rx_buf);
/**
* dp_start_xmit() - Transmit a frame for STA interface
* @nbuf: pointer to Network buffer
* @dp_intf: DP interface
*
* Return: QDF_STATUS_SUCCESS on successful transmission
*/
QDF_STATUS
dp_start_xmit(struct wlan_dp_intf *dp_intf, qdf_nbuf_t nbuf);
/**
* dp_rx_packet_cbk() - Receive packet handler
* @dp_intf_context: pointer to DP interface context
* @rx_buf: pointer to rx qdf_nbuf
*
* Receive callback registered with data path. DP will call this to notify
* when one or more packets were received for a registered
* STA.
*
* Return: QDF_STATUS_E_FAILURE if any errors encountered,
* QDF_STATUS_SUCCESS otherwise
*/
QDF_STATUS dp_rx_packet_cbk(void *dp_intf_context, qdf_nbuf_t rx_buf);
#endif

Ver arquivo

@@ -0,0 +1,43 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: wlan_dp_bus_bandwidth.c
*
* Bus Bandwidth Manager implementation
*/
#include "wlan_dp_bus_bandwidth.h"
#include "wlan_dp_main.h"
#include <wlan_objmgr_psoc_obj_i.h>
#include "cds_api.h"
void dp_bbm_apply_independent_policy(struct wlan_objmgr_psoc *psoc,
struct bbm_params *params)
{
}
int dp_bbm_context_init(struct wlan_objmgr_psoc *psoc)
{
return 0;
}
void dp_bbm_context_deinit(struct wlan_objmgr_psoc *psoc)
{
}

Ver arquivo

@@ -0,0 +1,85 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
#if !defined(WLAN_DP_BUS_BANDWIDTH_H)
#define WLAN_DP_BUS_BANDWIDTH_H
/**
* DOC: wlan_dp_bus_bandwidth.h
*
* Bus Bandwidth Manager implementation
*/
#include <qdf_types.h>
#include <qca_vendor.h>
#include <wlan_objmgr_psoc_obj.h>
#ifdef FEATURE_BUS_BANDWIDTH_MGR
/**
* struct bbm_params - BBM params
*
*/
struct bbm_params {
};
/**
* dp_bbm_context_init() - Initialize BBM context
* @dp_ctx: DP context
*
* Returns: error code
*/
int dp_bbm_context_init(struct wlan_objmgr_psoc *psoc);
/**
* dp_bbm_context_deinit() - De-initialize BBM context
* @dp_ctx: DP context
*
* Returns: None
*/
void dp_bbm_context_deinit(struct wlan_objmgr_psoc *psoc);
/**
* dp_bbm_apply_independent_policy() - Function to apply independent policies
* to set the bus bw level
* @dp_ctx: DP context
* @params: BBM policy related params
*
* The function applies BBM related policies and appropriately sets the bus
* bandwidth level.
*
* Returns: None
*/
void dp_bbm_apply_independent_policy(struct wlan_objmgr_psoc *psoc,
struct bbm_params *params);
#else
static inline int dp_bbm_context_init(struct wlan_objmgr_psoc *psoc)
{
return 0;
}
static inline void dp_bbm_context_deinit(struct wlan_objmgr_psoc *psoc)
{
}
static inline
void dp_bbm_apply_independent_policy(struct wlan_objmgr_psoc *psoc,
struct bbm_params *params)
{
}
#endif /* FEATURE_BUS_BANDWIDTH_MGR */
#endif /* WLAN_DP_BUS_BANDWIDTH_H */

Ver arquivo

@@ -0,0 +1,118 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: wlan_dp_main.c
*
*
*/
#include "wlan_dp_main.h"
#include "wlan_dp_public_struct.h"
#include "cfg_ucfg_api.h"
/**
* dp_get_intf_by_macaddr() - Get DP interface by mac address.
* @dp_ctx: dp_ctx handle
* @addr: MAC address
*
* Return: DP interface on success else NULL.
*/
struct wlan_dp_intf*
dp_get_intf_by_macaddr(struct wlan_dp_psoc_context *dp_ctx,
struct qdf_mac_addr *addr)
{
return NULL;
}
/**
* dp_vdev_obj_create_notification() - DP vdev object creation notification
* @vdev: vdev handle
* @arg_list: arguments list
*
* Return: QDF_STATUS_SUCCESS on success
*/
QDF_STATUS
dp_vdev_obj_create_notification(struct wlan_objmgr_vdev *vdev, void *arg)
{
return QDF_STATUS_SUCCESS;
}
/**
* dp_vdev_obj_destroy_notification() - DP vdev object destroy notification
* @vdev: vdev handle
* @arg_list: arguments list
*
* Return: QDF_STATUS_SUCCESS on success
*/
QDF_STATUS
dp_vdev_obj_destroy_notification(struct wlan_objmgr_vdev *vdev, void *arg)
{
return QDF_STATUS_SUCCESS;
}
/**
* dp_pdev_obj_create_notification() - DP pdev object creation notification
* @pdev: pdev handle
* @arg_list: arguments list
*
* Return: QDF_STATUS_SUCCESS on success
*/
QDF_STATUS
dp_pdev_obj_create_notification(struct wlan_objmgr_pdev *pdev, void *arg)
{
return QDF_STATUS_SUCCESS;
}
/**
* dp_pdev_obj_destroy_notification() - DP pdev object destroy notification
* @pdev: pdev handle
* @arg_list: arguments list
*
* Return: QDF_STATUS_SUCCESS on success
*/
QDF_STATUS
dp_pdev_obj_destroy_notification(struct wlan_objmgr_pdev *pdev, void *arg)
{
return QDF_STATUS_SUCCESS;
}
/**
* dp_psoc_obj_create_notification() - DP pdev object creation notification
* @psoc: psoc handle
* @arg_list: arguments list
*
* Return: QDF_STATUS_SUCCESS on success
*/
QDF_STATUS
dp_psoc_obj_create_notification(struct wlan_objmgr_psoc *psoc, void *arg)
{
return QDF_STATUS_SUCCESS;
}
/**
* dp_psoc_obj_destroy_notification() - DP psoc object destroy notification
* @psoc: psoc handle
* @arg_list: arguments list
*
* Return: QDF_STATUS_SUCCESS on success
*/
QDF_STATUS
dp_psoc_obj_destroy_notification(struct wlan_objmgr_psoc *psoc, void *arg)
{
return QDF_STATUS_SUCCESS;
}

Ver arquivo

@@ -0,0 +1,40 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: contains nud event tracking main function definitions
*/
#include "osif_sync.h"
#include "wlan_dp_main.h"
#include "wlan_dlm_ucfg_api.h"
#include "wlan_dp_cfg.h"
#include <cdp_txrx_misc.h>
#include "wlan_cm_roam_ucfg_api.h"
#include <wlan_cm_ucfg_api.h>
#include "wlan_dp_nud_tracking.h"
#ifdef WLAN_NUD_TRACKING
void dp_nud_deinit_tracking(struct wlan_dp_intf *dp_intf)
{
}
void dp_nud_init_tracking(struct wlan_dp_intf *dp_intf)
{
}
#endif

Ver arquivo

@@ -0,0 +1,53 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: contains nud event tracking function declarations
*/
#ifndef _WLAN_DP_NUD_TRACKING_H_
#define _WLAN_DP_NUD_TRACKING_H_
#ifdef WLAN_NUD_TRACKING
/**
* dp_nud_init_tracking() - initialize NUD tracking
* @dp_intf: Pointer to dp interface
*
* Return: None
*/
void dp_nud_init_tracking(struct wlan_dp_intf *dp_intf);
/**
* dp_nud_deinit_tracking() - deinitialize NUD tracking
* @dp_intf: Pointer to dp interface
*
* Return: None
*/
void dp_nud_deinit_tracking(struct wlan_dp_intf *dp_intf);
#else
static inline void dp_nud_init_tracking(struct wlan_dp_intf *dp_intf)
{
}
static inline void dp_nud_deinit_tracking(struct wlan_dp_intf *dp_intf)
{
}
#endif
#endif

Ver arquivo

@@ -0,0 +1,51 @@
/*
* Copyright (c) 2022 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: WLAN Host Device Driver periodic STA statistics related implementation
*/
#include "cfg_ucfg_api.h"
#include "wlan_dp_periodic_sta_stats.h"
void dp_periodic_sta_stats_display(struct wlan_dp_psoc_context *dp_ctx)
{
}
void dp_periodic_sta_stats_config(struct dp_config *config,
struct wlan_objmgr_psoc *psoc)
{
}
void dp_periodic_sta_stats_start(struct wlan_dp_intf *dp_intf)
{
}
void dp_periodic_sta_stats_stop(struct wlan_dp_intf *dp_intf)
{
}
void dp_periodic_sta_stats_init(struct wlan_dp_intf *dp_intf)
{
}
void dp_periodic_sta_stats_mutex_create(struct wlan_dp_intf *dp_intf)
{
}
void dp_periodic_sta_stats_mutex_destroy(struct wlan_dp_intf *dp_intf)
{
}

Ver arquivo

@@ -0,0 +1,37 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: wlan_dp_softap_txrx.c
* DP Soft AP TX/RX path implementation
*
*
*/
#include <wlan_dp_txrx.h>
#include <qdf_types.h>
#include <qdf_nbuf.h>
QDF_STATUS dp_softap_start_xmit(qdf_nbuf_t nbuf, struct wlan_dp_intf *dp_intf)
{
return QDF_STATUS_SUCCESS;
}
QDF_STATUS dp_softap_rx_packet_cbk(void *intf_ctx, qdf_nbuf_t rx_buf)
{
return QDF_STATUS_SUCCESS;
}

Ver arquivo

@@ -0,0 +1,39 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: wlan_dp_txrx.c
* DP TX/RX path implementation
*
*
*/
#include <wlan_dp_txrx.h>
#include <qdf_types.h>
#include <qdf_nbuf.h>
QDF_STATUS
dp_start_xmit(struct wlan_dp_intf *dp_intf, qdf_nbuf_t nbuf)
{
return QDF_STATUS_SUCCESS;
}
QDF_STATUS
dp_rx_packet_cbk(void *dp_intf_context, qdf_nbuf_t rx_buf)
{
return QDF_STATUS_SUCCESS;
}

Ver arquivo

@@ -0,0 +1,57 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
#ifndef WLAN_DP_CFG_H__
#define WLAN_DP_CFG_H__
#define CFG_DP_RPS_RX_QUEUE_CPU_MAP_LIST_LEN 30
#ifdef CONFIG_DP_TRACE
/* Max length of gDptraceConfig string. e.g.- "1, 6, 1, 62" */
#define DP_TRACE_CONFIG_STRING_LENGTH (20)
/* At max 4 DP Trace config parameters are allowed. Refer - gDptraceConfig */
#define DP_TRACE_CONFIG_NUM_PARAMS (4)
/*
* Default value of live mode in case it cannot be determined from cfg string
* gDptraceConfig
*/
#define DP_TRACE_CONFIG_DEFAULT_LIVE_MODE (1)
/*
* Default value of thresh (packets/second) beyond which DP Trace is disabled.
* Use this default in case the value cannot be determined from cfg string
* gDptraceConfig
*/
#define DP_TRACE_CONFIG_DEFAULT_THRESH (6)
/*
* Number of intervals of BW timer to wait before enabling/disabling DP Trace.
* Since throughput threshold to disable live logging for DP Trace is very low,
* we calculate throughput based on # packets received in a second.
* For example assuming bandwidth timer interval is 100ms, and if more than 6
* prints are received in 10 * 100 ms interval, we want to disable DP Trace
* live logging. DP_TRACE_CONFIG_DEFAULT_THRESH_TIME_LIMIT is the default
* value, to be used in case the real value cannot be derived from
* bw timer interval
*/
#define DP_TRACE_CONFIG_DEFAULT_THRESH_TIME_LIMIT (10)
#endif
#endif /* WLAN_DP_CFG_H__ */

Ver arquivo

@@ -0,0 +1,58 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: Contains DP public data structure definations.
*
*/
#ifndef _WLAN_DP_PUBLIC_STRUCT_H_
#define _WLAN_DP_PUBLIC_STRUCT_H_
#include "wlan_cmn.h"
#include "wlan_objmgr_cmn.h"
#include "wlan_objmgr_global_obj.h"
#include "wmi_unified.h"
#include "qdf_status.h"
/**
* struct wlan_dp_psoc_callbacks - struct containing callback
* to non-converged driver
* @os_if_dp_gro_rx: OS IF Callback to handle GRO packet to n/w stack
*/
struct wlan_dp_psoc_callbacks {
void (*os_if_dp_gro_rx)(struct sk_buff *skb, uint8_t napi_to_use,
bool flush_gro);
};
struct wlan_dp_psoc_sb_ops {
/*TODO to add target if TX ops*/
};
struct wlan_dp_psoc_nb_ops {
/*TODO to add target if RX ops*/
};
/**
* struct wlan_dp_user_config - DP component user config
* @ipa_enable: IPA enabled/disabled config
*/
struct wlan_dp_user_config {
bool ipa_enable;
};
#endif /* end of _WLAN_DP_PUBLIC_STRUCT_H_ */

Ver arquivo

@@ -0,0 +1,75 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: wlan_dp_ucfg_api.h
*
* TDLS north bound interface declaration
*/
#if !defined(_WLAN_DP_UCFG_API_H_)
#define _WLAN_DP_UCFG_API_H_
#include <scheduler_api.h>
#include <wlan_objmgr_cmn.h>
#include <wlan_objmgr_psoc_obj.h>
#include <wlan_objmgr_pdev_obj.h>
#include <wlan_objmgr_vdev_obj.h>
#include <wlan_dp_public_struct.h>
void ucfg_dp_update_inf_mac(struct wlan_objmgr_psoc *psoc,
struct qdf_mac_addr *cur_mac,
struct qdf_mac_addr *new_mac);
QDF_STATUS ucfg_dp_destroy_intf(struct wlan_objmgr_psoc *psoc,
struct qdf_mac_addr *intf_addr);
/**
* ucfg_dp_create_intf() - DP module interface creation
*
*/
QDF_STATUS ucfg_dp_create_intf(struct wlan_objmgr_psoc *psoc,
struct qdf_mac_addr *intf_addr);
/**
* ucfg_dp_init() - DP module initialization API
*
* Return: QDF_STATUS
*/
QDF_STATUS ucfg_dp_init(void);
/**
* ucfg_dp_deinit() - DP module deinitialization API
*
* Return: QDF_STATUS
*/
QDF_STATUS ucfg_dp_deinit(void);
/**
* ucfg_dp_update_config() - DP module config update
*
* Return: QDF_STATUS
*/
QDF_STATUS
ucfg_dp_update_config(struct wlan_objmgr_psoc *psoc,
struct wlan_dp_user_config *req);
uint64_t
ucfg_dp_get_rx_softirq_yield_duration(struct wlan_objmgr_psoc *psoc);
#endif

Ver arquivo

@@ -0,0 +1,70 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: public API related to the DP called by north bound HDD/OSIF
*/
#include "wlan_dp_ucfg_api.h"
#include "wlan_dp_main.h"
#include "wlan_dp_objmgr.h"
#include "cdp_txrx_cmn.h"
#include "cfg_ucfg_api.h"
void ucfg_dp_update_inf_mac(struct wlan_objmgr_psoc *psoc,
struct qdf_mac_addr *cur_mac,
struct qdf_mac_addr *new_mac)
{
}
QDF_STATUS
ucfg_dp_create_intf(struct wlan_objmgr_psoc *psoc,
struct qdf_mac_addr *intf_addr)
{
return QDF_STATUS_SUCCESS;
}
QDF_STATUS
ucfg_dp_destroy_intf(struct wlan_objmgr_psoc *psoc,
struct qdf_mac_addr *intf_addr)
{
return QDF_STATUS_SUCCESS;
}
QDF_STATUS ucfg_dp_init(void)
{
return QDF_STATUS_SUCCESS;
}
QDF_STATUS ucfg_dp_deinit(void)
{
return QDF_STATUS_SUCCESS;
}
QDF_STATUS
ucfg_dp_update_config(struct wlan_objmgr_psoc *psoc,
struct wlan_dp_user_config *req)
{
return QDF_STATUS_SUCCESS;
}
uint64_t
ucfg_dp_get_rx_softirq_yield_duration(struct wlan_objmgr_psoc *psoc)
{
return 0;
}

Ver arquivo

@@ -0,0 +1,50 @@
/*
* Copyright (c) 2022 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: target_if_dp_comp.h
*/
#ifndef _WLAN_DP_COMP_TGT_IF_H_
#define _WLAN_DP_COMP_TGT_IF_H_
#include "qdf_types.h"
#include "wlan_dp_public_struct.h"
#include <qdf_mem.h>
#include <qdf_status.h>
#include <wmi_unified_api.h>
#include <wmi_unified_priv.h>
#include <wmi_unified_param.h>
#include <wlan_objmgr_psoc_obj.h>
#include <target_if.h>
/**
* target_if_dp_register_tx_ops() - registers dp tx ops
* @sb_ops: tx ops
*
* Return: none
*/
void target_if_dp_register_tx_ops(struct wlan_dp_psoc_sb_ops *sb_ops);
/**
* target_if_dp_register_rx_ops() - registers dp rx ops
* @nb_ops: rx ops
*
* Return: none
*/
void target_if_dp_register_rx_ops(struct wlan_dp_psoc_nb_ops *nb_ops);
#endif

Ver arquivo

@@ -0,0 +1,40 @@
/*
* Copyright (c) 2022 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: target_if_dp_comp.c
*/
#include "target_if_dp_comp.h"
#include "target_if.h"
#include "qdf_status.h"
#include "wmi.h"
#include "wmi_unified_api.h"
#include "wmi_unified_priv.h"
#include "wmi_unified_param.h"
#include "wlan_objmgr_psoc_obj.h"
#include "wlan_dp_public_struct.h"
#include "cdp_txrx_cmn.h"
#include "wlan_dp_main.h"
#include <wlan_cm_api.h>
void target_if_dp_register_tx_ops(struct wlan_dp_psoc_sb_ops *sb_ops)
{
}
void target_if_dp_register_rx_ops(struct wlan_dp_psoc_nb_ops *nb_ops)
{
}

46
os_if/dp/inc/os_if_dp.h Arquivo normal
Ver arquivo

@@ -0,0 +1,46 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: os_if_dp.h
*
*
*/
#ifndef __OSIF_DP_H__
#define __OSIF_DP_H__
#include "wlan_dp_public_struct.h"
/**
* osif_dp_classify_pkt() - classify packet
* @skb - sk buff
*
* Return: None
*/
void osif_dp_classify_pkt(struct sk_buff *skb);
#ifdef WLAN_FEATURE_DP_BUS_BANDWIDTH
void osif_dp_send_tcp_param_update_event(struct wlan_objmgr_psoc *psoc,
void *data, uint8_t dir);
#else
static inline
void osif_dp_send_tcp_param_update_event(struct wlan_objmgr_psoc *psoc,
void *data, uint8_t dir)
{
}
#endif /* WLAN_FEATURE_DP_BUS_BANDWIDTH */
#endif /* __OSIF_DP_H__ */

41
os_if/dp/inc/os_if_dp_lro.h Arquivo normal
Ver arquivo

@@ -0,0 +1,41 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC : osif_dp_lro.h
*
* WLAN Host Device Driver file for DP LRO support.
*
*/
#ifndef _OSIF_DP_LRO_H_
#define _OSIF_DP_LRO_H_
#include <qdf_types.h>
#include <wlan_objmgr_vdev_obj.h>
/**
* osif_dp_lro_rx() - Handle Rx processing via LRO
* @vdev: Vdev obj mgr
* @nbuf: network buffer
*
* Return: QDF_STATUS_SUCCESS if processed via LRO or non zero return code
*/
QDF_STATUS osif_dp_lro_rx(struct wlan_objmgr_vdev *vdev, qdf_nbuf_t nbuf);
#endif /* _OSIF_DP_LRO_H_ */

45
os_if/dp/src/os_if_dp.c Arquivo normal
Ver arquivo

@@ -0,0 +1,45 @@
/*
* Copyright (c) 2022 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
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: os_if_dp.c
*
*
*/
#include "os_if_dp.h"
#include "wlan_nlink_srv.h"
#include <wlan_cfg80211.h>
#include <wlan_osif_priv.h>
#include <cdp_txrx_cmn.h>
#include "qca_vendor.h"
#ifdef WLAN_FEATURE_DP_BUS_BANDWIDTH
/**
* osif_dp_send_tcp_param_update_event() - Send vendor event to update
* TCP parameter through Wi-Fi HAL
* @psoc: Pointer to psoc context
* @data: Parameters to update
* @dir: Direction(tx/rx) to update
*
* Return: None
*/
void osif_dp_send_tcp_param_update_event(struct wlan_objmgr_psoc *psoc,
void *data,
uint8_t dir)
{
}
#endif /*WLAN_FEATURE_DP_BUS_BANDWIDTH*/

28
os_if/dp/src/os_if_dp_lro.c Arquivo normal
Ver arquivo

@@ -0,0 +1,28 @@
/*
* Copyright (c) 2022 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: osif_dp_lro.c
* This file contains DP component's LRO osif API implementation
*/
#include <wlan_objmgr_vdev_obj.h>
#include "os_if_dp_lro.h"
QDF_STATUS osif_dp_lro_rx(struct wlan_objmgr_vdev *vdev, qdf_nbuf_t nbuf)
{
return QDF_STATUS_SUCCESS;
}

26
os_if/dp/src/os_if_dp_txrx.c Arquivo normal
Ver arquivo

@@ -0,0 +1,26 @@
/*
* Copyright (c) 2022 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC: osif_dp_txrx.c
* This file contains DP component's TX/RX osif API implementation
*/
#include <wlan_objmgr_vdev_obj.h>
#include "os_if_dp.h"
void osif_dp_classify_pkt(struct sk_buff *skb)
{
}