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:
Qiwei Cai 2018-07-02 19:10:11 +08:00 • committed by nshrivas
commit 1083f5b0ac
8 changed files with 45 additions and 10 deletions

11
Kbuild
View file

@ -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)

View file

@ -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

View file

@ -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)

View file

@ -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

View file

@ -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

View file

@ -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,

View file

@ -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)
{

View file

@ -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 */
/* ----------------------------------------------------------------------------- */