CORE: QCA9377 CLD LEA 2.0 porting to support Android O

QCA9377 CLD LEA 2.0 porting to support Android O.

Signed-off-by: Hangtian Zhu <hangtian@qti.qualcomm.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c
index c2793ce..cb6f03d 100644
--- a/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -7520,6 +7520,8 @@
     hdd_station_ctx_t *hddstactx = WLAN_HDD_GET_STATION_CTX_PTR(pAdapter);
     int status;
 
+    printk("WAR: return ll_stats, because fw didn't enable\n");
+    return 0;
     if (VOS_FTM_MODE == hdd_get_conparam()) {
         hddLog(LOGE, FL("Command not allowed in FTM mode"));
         return -EINVAL;
@@ -29309,6 +29311,7 @@
 	return ret;
 }
 
+#ifdef CONFIG_NL80211_TESTMODE
 #ifdef WLAN_NL80211_TESTMODE
 #ifdef FEATURE_WLAN_LPHB
 void wlan_hdd_cfg80211_lphb_ind_handler
@@ -29558,6 +29561,7 @@
 }
 #endif
 #endif /* CONFIG_NL80211_TESTMODE */
+#endif
 
 /**
  * wlan_hdd_chan_info_cb() - channel info callback
@@ -31911,9 +31915,11 @@
      .resume = wlan_hdd_cfg80211_resume_wlan,
      .suspend = wlan_hdd_cfg80211_suspend_wlan,
      .set_mac_acl = wlan_hdd_cfg80211_set_mac_acl,
+#ifdef CONFIG_NL80211_TESTMODE
 #ifdef WLAN_NL80211_TESTMODE
      .testmode_cmd = wlan_hdd_cfg80211_testmode,
 #endif
+#endif
 #ifdef QCA_HT_2040_COEX
      .set_ap_chanwidth = wlan_hdd_cfg80211_set_ap_channel_width,
 #endif
diff --git a/CORE/HDD/src/wlan_hdd_hostapd.c b/CORE/HDD/src/wlan_hdd_hostapd.c
index 3b8373f..9519764 100644
--- a/CORE/HDD/src/wlan_hdd_hostapd.c
+++ b/CORE/HDD/src/wlan_hdd_hostapd.c
@@ -7670,11 +7670,15 @@
 };
 const struct iw_handler_def hostapd_handler_def = {
    .num_standard     = sizeof(hostapd_handler) / sizeof(hostapd_handler[0]),
+#ifdef CONFIG_WEXT_PRIV
    .num_private      = sizeof(hostapd_private) / sizeof(hostapd_private[0]),
    .num_private_args = sizeof(hostapd_private_args) / sizeof(hostapd_private_args[0]),
+#endif
    .standard         = (iw_handler *)hostapd_handler,
+#ifdef CONFIG_WEXT_PRIV
    .private          = (iw_handler *)hostapd_private,
    .private_args     = hostapd_private_args,
+#endif
    .get_wireless_stats = NULL,
 };
 
@@ -7704,7 +7708,9 @@
 VOS_STATUS hdd_init_ap_mode(hdd_adapter_t *pAdapter, bool reinit)
 {
     hdd_hostapd_state_t * phostapdBuf;
+#ifdef CONFIG_WIRELESS_EXT
     struct net_device *dev = pAdapter->dev;
+#endif
     hdd_context_t *pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
     VOS_STATUS status;
 #ifdef WLAN_FEATURE_MBSSID
@@ -7841,7 +7847,9 @@
     sema_init(&(WLAN_HDD_GET_AP_CTX_PTR(pAdapter))->semWpsPBCOverlapInd, 1);
 
      // Register as a wireless device
+#ifdef CONFIG_WIRELESS_EXT
     dev->wireless_handlers = (struct iw_handler_def *)& hostapd_handler_def;
+#endif
 
     //Initialize the data path module
     status = hdd_softap_init_tx_rx(pAdapter);
@@ -8013,6 +8021,7 @@
       detach the wireless device handlers */
    if (pAdapter->dev)
    {
+#ifdef CONFIG_WIRELESS_EXT
       if (rtnl_held)
           pAdapter->dev->wireless_handlers = NULL;
       else {
@@ -8020,6 +8029,7 @@
           pAdapter->dev->wireless_handlers = NULL;
           rtnl_unlock();
       }
+#endif
    }
 
 #ifdef WLAN_FEATURE_MBSSID
diff --git a/CORE/HDD/src/wlan_hdd_wext.c b/CORE/HDD/src/wlan_hdd_wext.c
index eeeeab6..d139555 100644
--- a/CORE/HDD/src/wlan_hdd_wext.c
+++ b/CORE/HDD/src/wlan_hdd_wext.c
@@ -12822,12 +12822,16 @@
 
 const struct iw_handler_def we_handler_def = {
    .num_standard     = sizeof(we_handler) / sizeof(we_handler[0]),
+#ifdef CONFIG_WEXT_PRIV
    .num_private      = sizeof(we_private) / sizeof(we_private[0]),
    .num_private_args = sizeof(we_private_args) / sizeof(we_private_args[0]),
+#endif
 
    .standard         = (iw_handler *)we_handler,
+#ifdef CONFIG_WEXT_PRIV
    .private          = (iw_handler *)we_private,
    .private_args     = we_private_args,
+#endif
    .get_wireless_stats = get_wireless_stats,
 };
 
@@ -13116,7 +13120,9 @@
     }
     hdd_initialize_fils_info(pwextBuf);
     /* Register as a wireless device */
+#ifdef CONFIG_WIRELESS_EXT
     dev->wireless_handlers = (struct iw_handler_def *)&we_handler_def;
+#endif
 
     EXIT();
     return 0;
@@ -13127,9 +13133,11 @@
 	hddLog(LOG1, FL("dev(%pK)"), dev);
 
 	if (dev != NULL) {
+#ifdef CONFIG_WIRELESS_EXT
 		rtnl_lock();
 		dev->wireless_handlers = NULL;
 		rtnl_unlock();
+#endif
 	}
 
 	return 0;
diff --git a/CORE/SERVICES/BMI/ol_fw.c b/CORE/SERVICES/BMI/ol_fw.c
index 83ae0d9..4f7dfbd 100644
--- a/CORE/SERVICES/BMI/ol_fw.c
+++ b/CORE/SERVICES/BMI/ol_fw.c
@@ -552,7 +552,7 @@
 	if (board_id > 0xFF)
 		board_id = 0x0;
 
-	snprintf(&dest[input_len - 2], 3, "%.2x", board_id);
+	//snprintf(&dest[input_len - 2], 3, "%.2x", board_id);
 out:
 	return dest;
 }
@@ -2314,6 +2314,7 @@
 	}
 
 	address = BMI_SEGMENTED_WRITE_ADDR;
+#if 0
 	if (scn->enablesinglebinary == FALSE) {
 		if (ol_transfer_bin_file(scn, ATH_SETUP_FILE,
 					BMI_SEGMENTED_WRITE_ADDR, TRUE) == EOK) {
@@ -2322,6 +2323,7 @@
 			BMIExecute(scn->hif_hdl, address, &param, scn);
 		}
 	}
+#endif
 
 	/* Download Target firmware - TODO point to target specific files in runtime */
 	if (ol_transfer_bin_file(scn, ATH_FIRMWARE_FILE, address, TRUE) != EOK) {
diff --git a/CORE/SERVICES/HIF/sdio/linux/if_ath_sdio.c b/CORE/SERVICES/HIF/sdio/linux/if_ath_sdio.c
index 24bf785..0f68c58 100644
--- a/CORE/SERVICES/HIF/sdio/linux/if_ath_sdio.c
+++ b/CORE/SERVICES/HIF/sdio/linux/if_ath_sdio.c
@@ -227,7 +227,7 @@
     ol_sc->hif_hdl = hif_handle;
 
     /* Get RAM dump memory address and size */
-    ol_sc->ramdump_base = hif_get_virt_ramdump_mem(&ol_sc->ramdump_size);
+    ol_sc->ramdump_base = NULL;//hif_get_virt_ramdump_mem(&ol_sc->ramdump_size);
     if (ol_sc->ramdump_base == NULL || !ol_sc->ramdump_size) {
         VOS_TRACE(VOS_MODULE_ID_HIF, VOS_TRACE_LEVEL_ERROR,
             "%s: Failed to get RAM dump memory address or size!\n",
diff --git a/CORE/VOSS/inc/vos_cnss.h b/CORE/VOSS/inc/vos_cnss.h
index fa2d7f8..6d7c8f1 100644
--- a/CORE/VOSS/inc/vos_cnss.h
+++ b/CORE/VOSS/inc/vos_cnss.h
@@ -53,10 +53,12 @@
 };
 
 static inline void vos_wlan_pci_link_down(void){ return; }
+#ifdef HIF_PCI
 static inline int vos_pcie_shadow_control(struct pci_dev *dev, bool enable)
 {
 	return -ENODEV;
 }
+#endif
 
 static inline u8 *vos_get_cnss_wlan_mac_buff(struct device *dev, uint32_t *num)
 {
diff --git a/CORE/VOSS/src/vos_nvitem.c b/CORE/VOSS/src/vos_nvitem.c
index bd463d0..ed7a048 100644
--- a/CORE/VOSS/src/vos_nvitem.c
+++ b/CORE/VOSS/src/vos_nvitem.c
@@ -976,7 +976,7 @@
 				      struct ch_params_s *ch_params)
 {
 	eNVChannelEnabledType chan_state = NV_CHANNEL_ENABLE;
-	const struct bonded_chan *bonded_chan_ptr;
+	const struct bonded_chan *bonded_chan_ptr = NULL;
 	uint16_t center_chan;
 
 	if (CH_WIDTH_MAX <= ch_params->ch_width)
@@ -1782,7 +1782,7 @@
 	eNVChannelEnabledType channel_state;
 
 	if (VOS_IS_CHANNEL_5GHZ(operation_channel)) {
-		const struct bonded_chan *bonded_chan_ptr;
+		const struct bonded_chan *bonded_chan_ptr = NULL;
 
 		channel_state =
 		    vos_search_5g_bonded_channel(operation_channel,
diff --git a/Kbuild b/Kbuild
index c386d37..96d9b37 100644
--- a/Kbuild
+++ b/Kbuild
@@ -222,6 +222,8 @@
 endif
 ifeq ($(CONFIG_QCA_WIFI_SDIO), 1)
 CONFIG_ATH_11AC_TXCOMPACT := 0
+CONFIG_WLAN_SYNC_TSF := y
+#CONFIG_WLAN_SYNC_TSF_PLUS := y
 endif
 
 #Enable per vdev Tx desc pool