qcacld-3.0: Add multi-queue NAPI function

Add throughput policy handler which triggers irq/CPU mananagement
functions as required.
Adapt NAPI enablement code to recent changes to the init sequence.
Add to the new files to build.

Change-Id: I8c16667a08982e419c2f2152cf31afcd3a535eb4
CRs-Fixed: 1064917
diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c
index 8bbe09a..77e2558 100644
--- a/core/hdd/src/wlan_hdd_main.c
+++ b/core/hdd/src/wlan_hdd_main.c
@@ -110,6 +110,7 @@
 #include "ol_rx_fwd.h"
 #include "wlan_hdd_lpass.h"
 #include "nan_api.h"
+#include <wlan_hdd_napi.h>
 
 #ifdef MODULE
 #define WLAN_MODULE_NAME  module_name(THIS_MODULE)
@@ -4894,7 +4895,6 @@
 	enum wlan_tp_level next_rx_level = WLAN_SVC_TP_NONE;
 	enum wlan_tp_level next_tx_level = WLAN_SVC_TP_NONE;
 
-
 	if (total > hdd_ctx->config->busBandwidthHighThreshold)
 		next_vote_level = PLD_BUS_WIDTH_HIGH;
 	else if (total > hdd_ctx->config->busBandwidthMediumThreshold)
@@ -4928,6 +4928,7 @@
 			if (cds_sched_handle_throughput_req(true))
 				hdd_err("high bandwidth set rx affinity fail");
 		 }
+		hdd_napi_apply_throughput_policy(hdd_ctx, tx_packets, rx_packets);
 	}
 
 	/* fine-tuning parameters for RX Flows */