diff --git a/kona/BoardConfigWlan.mk b/kona/BoardConfigWlan.mk
index 4032171269e59accde5c88491310302b33733c94..4300f0538b55fc7db309c4719023eb2c3cece9f0 100644
--- a/kona/BoardConfigWlan.mk
+++ b/kona/BoardConfigWlan.mk
@@ -1,4 +1,4 @@
-BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/qca_cld3_wlan.ko
+BOARD_VENDOR_KERNEL_MODULES += $(foreach chip, $(TARGET_WLAN_CHIP), $(KERNEL_MODULES_OUT)/$(WLAN_CHIPSET)_$(chip).ko)
 
 WIFI_DRIVER_STATE_CTRL_PARAM := "/dev/wlan"
 WIFI_DRIVER_STATE_ON := "ON"
diff --git a/kona/wlan.mk b/kona/wlan.mk
index b0095a013a6d4ca327fdad31627d04de7c6c9c18..c8c713f436ebbcc81446fc868bf17756980abe74 100644
--- a/kona/wlan.mk
+++ b/kona/wlan.mk
@@ -1,9 +1,11 @@
+# Add supported chips for autodetection
+TARGET_WLAN_CHIP := qca6390
+
 WLAN_CHIPSET := qca_cld3
 
 #WPA
 WPA := wpa_cli
 
-PRODUCT_PACKAGES += $(WLAN_CHIPSET)_wlan.ko
 PRODUCT_PACKAGES += wifilearner
 PRODUCT_PACKAGES += $(WPA)
 
@@ -26,3 +28,24 @@ QC_WIFI_HIDL_FEATURE_DUAL_AP := true
 
 # Enable STA + STA Feature.
 QC_WIFI_HIDL_FEATURE_DUAL_STA := true
+
+######## For multiple ko support ########
+
+# WLAN driver configuration file
+PRODUCT_COPY_FILES += \
+		      $(foreach chip, $(TARGET_WLAN_CHIP), \
+		      device/qcom/wlan/kona/WCNSS_qcom_cfg_$(chip).ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/$(chip)/WCNSS_qcom_cfg.ini)
+
+
+PRODUCT_PACKAGES += $(foreach chip, $(TARGET_WLAN_CHIP), $(WLAN_CHIPSET)_$(chip).ko)
+
+# Override WLAN configurations
+# Usage:
+# To disable WLAN_CFG_1/WLAN_CFG_3 and enable WLAN_CFG_2 for <wlan_chip>
+# (<wlan_chip> is from $TARGET_WLAN_CHIP).
+#  WLAN_CFG_OVERRIDE_<wlan_chip> := WLAN_CFG_1=n WLAN_CFG_2=y WLAN_CFG_3=n
+
+WLAN_CFG_OVERRIDE_qca6390 := CONFIG_CNSS_QCA6390=y
+
+# Use default_config for all chips. Used with TARGET_WLAN_CHIP.
+WLAN_CFG_USE_DEFAULT := true