mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-13 16:16:15 -04:00
qcacld-3.0: Featurize WLAN_NS_OFFLOAD
Fix compilation errors when disable WLAN_NS_OFFLOAD Change-Id: Ifba894a4880a226cedf4c88b1121d02c63aceb4b CRs-Fixed: 2271272
This commit is contained in:
parent
aa9d9b09dd
commit
1083f5b0ac
8 changed files with 45 additions and 10 deletions
11
Kbuild
11
Kbuild
|
|
@ -661,7 +661,6 @@ ifeq ($(CONFIG_POWER_MANAGEMENT_OFFLOAD), y)
|
|||
PMO_OBJS := $(PMO_DIR)/core/src/wlan_pmo_main.o \
|
||||
$(PMO_DIR)/core/src/wlan_pmo_apf.o \
|
||||
$(PMO_DIR)/core/src/wlan_pmo_arp.o \
|
||||
$(PMO_DIR)/core/src/wlan_pmo_ns.o \
|
||||
$(PMO_DIR)/core/src/wlan_pmo_gtk.o \
|
||||
$(PMO_DIR)/core/src/wlan_pmo_mc_addr_filtering.o \
|
||||
$(PMO_DIR)/core/src/wlan_pmo_static_config.o \
|
||||
|
|
@ -673,7 +672,6 @@ PMO_OBJS := $(PMO_DIR)/core/src/wlan_pmo_main.o \
|
|||
$(PMO_DIR)/dispatcher/src/wlan_pmo_obj_mgmt_api.o \
|
||||
$(PMO_DIR)/dispatcher/src/wlan_pmo_ucfg_api.o \
|
||||
$(PMO_DIR)/dispatcher/src/wlan_pmo_tgt_arp.o \
|
||||
$(PMO_DIR)/dispatcher/src/wlan_pmo_tgt_ns.o \
|
||||
$(PMO_DIR)/dispatcher/src/wlan_pmo_tgt_gtk.o \
|
||||
$(PMO_DIR)/dispatcher/src/wlan_pmo_tgt_wow.o \
|
||||
$(PMO_DIR)/dispatcher/src/wlan_pmo_tgt_static_config.o \
|
||||
|
|
@ -684,6 +682,11 @@ PMO_OBJS := $(PMO_DIR)/core/src/wlan_pmo_main.o \
|
|||
$(PMO_DIR)/dispatcher/src/wlan_pmo_tgt_pkt_filter.o
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_WLAN_NS_OFFLOAD), y)
|
||||
PMO_OBJS += $(PMO_DIR)/core/src/wlan_pmo_ns.o \
|
||||
$(PMO_DIR)/dispatcher/src/wlan_pmo_tgt_ns.o
|
||||
endif
|
||||
|
||||
########## DISA (ENCRYPTION TEST) ##########
|
||||
|
||||
DISA_DIR := components/disa
|
||||
|
|
@ -736,11 +739,13 @@ CLD_TARGET_IF_OBJ := $(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_arp.o \
|
|||
$(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_lphb.o \
|
||||
$(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_main.o \
|
||||
$(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_mc_addr_filtering.o \
|
||||
$(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_ns.o \
|
||||
$(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_pkt_filter.o \
|
||||
$(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_static_config.o \
|
||||
$(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_suspend_resume.o \
|
||||
$(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_wow.o
|
||||
ifeq ($(CONFIG_WLAN_NS_OFFLOAD), y)
|
||||
CLD_TARGET_IF_OBJ += $(CLD_TARGET_IF_DIR)/pmo/src/target_if_pmo_ns.o
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_WLAN_FEATURE_DSRC), y)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2017 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2017-2018 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
|
||||
|
|
@ -92,6 +92,7 @@ QDF_STATUS pmo_tgt_enable_arp_offload_req(struct wlan_objmgr_vdev *vdev,
|
|||
QDF_STATUS pmo_tgt_disable_arp_offload_req(struct wlan_objmgr_vdev *vdev,
|
||||
uint8_t vdev_id);
|
||||
|
||||
#ifdef WLAN_NS_OFFLOAD
|
||||
/**
|
||||
* pmo_tgt_enable_ns_offload_req() - Send ns offload req to targe
|
||||
* @vdev: objmgr vdev
|
||||
|
|
@ -111,6 +112,7 @@ QDF_STATUS pmo_tgt_enable_ns_offload_req(struct wlan_objmgr_vdev *vdev,
|
|||
*/
|
||||
QDF_STATUS pmo_tgt_disable_ns_offload_req(struct wlan_objmgr_vdev *vdev,
|
||||
uint8_t vdev_id);
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
|
||||
/**
|
||||
* pmo_tgt_enable_wow_wakeup_event() - Send Enable wow wakeup events req to fwr
|
||||
|
|
|
|||
|
|
@ -137,6 +137,7 @@ QDF_STATUS pmo_ucfg_disable_arp_offload_in_fwr(struct wlan_objmgr_vdev *vdev,
|
|||
return pmo_core_disable_arp_offload_in_fwr(vdev, trigger);
|
||||
}
|
||||
|
||||
#ifdef WLAN_NS_OFFLOAD
|
||||
QDF_STATUS pmo_ucfg_cache_ns_offload_req(struct pmo_ns_req *ns_req)
|
||||
{
|
||||
return pmo_core_cache_ns_offload_req(ns_req);
|
||||
|
|
@ -158,6 +159,7 @@ QDF_STATUS pmo_ucfg_disable_ns_offload_in_fwr(struct wlan_objmgr_vdev *vdev,
|
|||
{
|
||||
return pmo_core_disable_ns_offload_in_fwr(vdev, trigger);
|
||||
}
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
|
||||
QDF_STATUS pmo_ucfg_cache_mc_addr_list(
|
||||
struct pmo_mc_addr_list_params *mc_list_config)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2017 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2017-2018 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
|
||||
|
|
@ -211,6 +211,7 @@ QDF_STATUS target_if_pmo_send_arp_offload_req(
|
|||
struct pmo_arp_offload_params *arp_offload_req,
|
||||
struct pmo_ns_offload_params *ns_offload_req);
|
||||
|
||||
#ifdef WLAN_NS_OFFLOAD
|
||||
/**
|
||||
* target_if_pmo_send_ns_offload_req() - sends ns request to fwr
|
||||
* @vdev: objmgr vdev
|
||||
|
|
@ -225,7 +226,15 @@ QDF_STATUS target_if_pmo_send_ns_offload_req(
|
|||
struct wlan_objmgr_vdev *vdev,
|
||||
struct pmo_arp_offload_params *arp_offload_req,
|
||||
struct pmo_ns_offload_params *ns_offload_req);
|
||||
|
||||
#else /* WLAN_NS_OFFLOAD */
|
||||
static inline QDF_STATUS
|
||||
target_if_pmo_send_ns_offload_req(struct wlan_objmgr_vdev *vdev,
|
||||
struct pmo_arp_offload_params *arp_offload_req,
|
||||
struct pmo_ns_offload_params *ns_offload_req)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
/**
|
||||
* target_if_pmo_send_gtk_offload_req() - send gtk offload request in fwr
|
||||
* @vdev: objmgr vdev handle
|
||||
|
|
|
|||
|
|
@ -297,6 +297,7 @@ int wlan_hdd_cfg80211_resume_wlan(struct wiphy *wiphy);
|
|||
*/
|
||||
void hdd_ipv4_notifier_work_queue(struct work_struct *work);
|
||||
|
||||
#ifdef WLAN_NS_OFFLOAD
|
||||
/**
|
||||
* hdd_enable_ns_offload() - enable NS offload
|
||||
* @adapter: pointer to the adapter
|
||||
|
|
@ -313,7 +314,20 @@ void hdd_enable_ns_offload(struct hdd_adapter *adapter,
|
|||
* Return: nothing
|
||||
*/
|
||||
void hdd_disable_ns_offload(struct hdd_adapter *adapter,
|
||||
enum pmo_offload_trigger trigger);
|
||||
enum pmo_offload_trigger trigger);
|
||||
#else /* WLAN_NS_OFFLOAD */
|
||||
static inline
|
||||
void hdd_enable_ns_offload(struct hdd_adapter *adapter,
|
||||
enum pmo_offload_trigger trigger)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
void hdd_disable_ns_offload(struct hdd_adapter *adapter,
|
||||
enum pmo_offload_trigger trigger)
|
||||
{
|
||||
}
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
|
||||
/**
|
||||
* hdd_ipv6_notifier_work_queue() - IP V6 change notifier work handler
|
||||
|
|
|
|||
|
|
@ -8467,6 +8467,7 @@ fail:
|
|||
kfree_skb(skb);
|
||||
}
|
||||
|
||||
#ifdef WLAN_NS_OFFLOAD
|
||||
static const struct nla_policy
|
||||
ns_offload_set_policy[QCA_WLAN_VENDOR_ATTR_ND_OFFLOAD_MAX + 1] = {
|
||||
[QCA_WLAN_VENDOR_ATTR_ND_OFFLOAD_FLAG] = {.type = NLA_U8},
|
||||
|
|
@ -8557,6 +8558,7 @@ static int wlan_hdd_cfg80211_set_ns_offload(struct wiphy *wiphy,
|
|||
|
||||
return ret;
|
||||
}
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
|
||||
static const struct nla_policy get_preferred_freq_list_policy
|
||||
[QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_MAX + 1] = {
|
||||
|
|
@ -14384,6 +14386,7 @@ const struct wiphy_vendor_command hdd_wiphy_vendor_commands[] = {
|
|||
WIPHY_VENDOR_CMD_NEED_RUNNING,
|
||||
.doit = wlan_hdd_cfg80211_monitor_rssi
|
||||
},
|
||||
#ifdef WLAN_NS_OFFLOAD
|
||||
{
|
||||
.info.vendor_id = QCA_NL80211_VENDOR_ID,
|
||||
.info.subcmd = QCA_NL80211_VENDOR_SUBCMD_ND_OFFLOAD,
|
||||
|
|
@ -14392,6 +14395,7 @@ const struct wiphy_vendor_command hdd_wiphy_vendor_commands[] = {
|
|||
WIPHY_VENDOR_CMD_NEED_RUNNING,
|
||||
.doit = wlan_hdd_cfg80211_set_ns_offload
|
||||
},
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
{
|
||||
.info.vendor_id = QCA_NL80211_VENDOR_ID,
|
||||
.info.subcmd = QCA_NL80211_VENDOR_SUBCMD_GET_LOGGER_FEATURE_SET,
|
||||
|
|
|
|||
|
|
@ -167,7 +167,7 @@ static void hdd_disable_gtk_offload(struct hdd_adapter *adapter)
|
|||
|
||||
}
|
||||
|
||||
|
||||
#ifdef WLAN_NS_OFFLOAD
|
||||
/**
|
||||
* __wlan_hdd_ipv6_changed() - IPv6 notifier callback function
|
||||
* @nb: notifier block that was registered with the kernel
|
||||
|
|
@ -470,6 +470,7 @@ void hdd_ipv6_notifier_work_queue(struct work_struct *work)
|
|||
__hdd_ipv6_notifier_work_queue(work);
|
||||
cds_ssr_unprotect(__func__);
|
||||
}
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
|
||||
static void hdd_enable_hw_filter(struct hdd_adapter *adapter)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -511,7 +511,6 @@
|
|||
#define SIR_MAC_OUI_WSM_SCHEDULE_MIN 20
|
||||
#define SIR_MAC_OUI_WSM_SCHEDULE_MAX 20
|
||||
|
||||
#ifdef WLAN_NS_OFFLOAD
|
||||
#define SIR_MAC_NS_OFFLOAD_SIZE 1 /* support only one IPv6 offload */
|
||||
/* Number of target IP V6 addresses for NS offload */
|
||||
#define SIR_MAC_NUM_TARGET_IPV6_NS_OFFLOAD_NA 16
|
||||
|
|
@ -519,7 +518,6 @@
|
|||
#define SIR_IPV6_ADDR_VALID 1
|
||||
#define SIR_IPV6_ADDR_UC_TYPE 0
|
||||
#define SIR_IPV6_ADDR_AC_TYPE 1
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
|
||||
/* ----------------------------------------------------------------------------- */
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue