
include $(WLAN_ROOT)/configs/genoa.common

# Interface specific features
CONFIG_ROME_IF := usb
CONFIG_HIF_USB := y
CONFIG_LINUX_QCMBR := y
CONFIG_PLD_USB_CNSS := y

# Data Path specific features
CONFIG_ATH_11AC_TXCOMPACT := n
CONFIG_QCA_HL_NETDEV_FLOW_CONTROL := y
CONFIG_FEATURE_HL_GROUP_CREDIT_FLOW_CONTROL := y
CONFIG_FEATURE_HL_DBS_GROUP_CREDIT_SHARING := y
CONFIG_CREDIT_REP_THROUGH_CREDIT_UPDATE := y
CONFIG_HL_DP_SUPPORT := y

# Debug specific features
CONFIG_MPC_UT_FRAMEWORK := y
CONFIG_FEATURE_EPPING := y
CONFIG_WLAN_FEATURE_P2P_DEBUG := y
CONFIG_WLAN_LOG_ENTER := y
CONFIG_WLAN_LOG_EXIT := y

ifeq ($(CONFIG_DEBUG_FS), y)
       CONFIG_WLAN_DEBUGFS := y
       CONFIG_WLAN_POWER_DEBUGFS := y
endif

# Features gets enabled on slub debug
CONFIG_FEATURE_PKTLOG := y
CONFIG_WLAN_DEBUG_CRASH_INJECT := y
CONFIG_FEATURE_MEMDUMP_ENABLE := y

ifeq ($(CONFIG_SLUB_DEBUG_ON), y)
CONFIG_WLAN_OBJMGR_DEBUG:= y
CONFIG_FEATURE_UNIT_TEST_SUSPEND := y
CONFIG_LEAK_DETECTION := y
endif

# Genoa features vs Rome
CONFIG_HTT_PADDR64 := y

CONFIG_QCA_WIFI_FTM := y
ifeq ($(CONFIG_NL80211_TESTMODE), y)
	QCA_WIFI_FTM_NL80211 :=y
else
	QCA_WIFI_FTM_NL80211 :=n
endif
CONFIG_LINUX_QCMBR :=y
###################################
