###############################################################################
# export variables
###############################################################################
ifeq ($(CONFIG_SOCT_KMOD_CFLAGS),)
ccflags-y  += $(CONFIG_SOCT_KMOD_CFLAGS) -Wno-error=format-security
endif

ifneq ($(findstring $(CONFIG_SOCT_CHIP_TYPE), "wudangstick", "shaolingun"),)
ENABLE_FAULT_CHECK :=yes
endif

###############################################################################
# local variables
###############################################################################
## header search path
adsp_path := drivers/drv/adsp

ccflags-y += \
    -Idrivers/drv/ioctl_inc/generic \
    -Idrivers/drv/ioctl_inc/common \
    -Idrivers/drv/ioctl_inc/audio \
    -Idrivers/drv/ext_inc/base \
    -Idrivers/drv/ext_inc/osal \
    -Idrivers/drv/ext_inc/adsp \
    -Idrivers/drv/ext_inc/common \
    -Idrivers/drv/ext_inc/mailbox \
    -Idrivers/drv/common/include \
    -I$(adsp_path)/include

hifi_path := $(adsp_path)/hifi

ccflags-y += \
    -I$(adsp_path) \
    -I$(adsp_path)/include \
    -I$(adsp_path)/hal \
    -I$(adsp_path)/osal \
    -I$(hifi_path)/common/include \
    -I$(hifi_path)/aoe/include \
    -I$(hifi_path)/aoe/src/include \
    -I$(hifi_path)/component/sonic

ccflags-y += -DCONFIG_SOCT_SOUND_SPDIF_COMPENSATION_SUPPORT
ccflags-y += -DCONFIG_SOCT_SND_CONTINUE_OUTPUT_SUPPORT

ADSP_FW_NAME:=\"aoe_dsp0.bin\"

ifneq ($(findstring $(CONFIG_PRODUCT_TYPE), "android"),)
ADSP_FW_PATH:=\"/vendor/firmware/\"
else
ADSP_FW_PATH:=\"/lib/firmware/\"
endif

ADSP_FW_NEED:=\"yes\"

ADSP_CFLAGS += -DADSP_FW_PATH=$(ADSP_FW_PATH)
ADSP_CFLAGS += -DADSP_FW_NAME=$(ADSP_FW_NAME)
ADSP_CFLAGS += -DADSP_FW_NEED=$(ADSP_FW_NEED)

ccflags-y += $(ADSP_CFLAGS)
#===============================================================================
MODNAME := soc_adsp

ifeq ($(CONFIG_SOCT_DRV_BUILDIN),y)
obj-y += $(MODNAME).o
else
obj-m += $(MODNAME).o
endif
#===============================================================================
$(MODNAME)-objs-y += \
	drv_adsp_intf.o \
	drv_adsp.o \
	drv_adsp_cmd.o \
	dsp_elf_func.o \
	hal/drv_adsp_hal.o \
	hal/drv_adsp_sw.o \
	hal/drv_adsp_hw.o \
	hal/drv_adsp_hw2.o \
	drv_adsp_proc.o
#===============================================================================
ifeq ($(ENABLE_FAULT_CHECK),yes)
ifeq ($(CONFIG_ANDROID_PRODUCT),y)
ADSP_LOG_PATH:=\"/data/log/adsp/adsp.log\"
else
ADSP_LOG_PATH:=\"/mnt/adsp.log\"
endif
ccflags-y += -DENABLE_FAULT_CHECK -DADSP_LOG_PATH=$(ADSP_LOG_PATH)
ccflags-y += \
	-I$(adsp_path)/fault_check \
        -Idrivers/drv/ext_inc/dftevent

$(MODNAME)-objs-y += \
	drv_adsp_trace.o \
	drv_adsp_trace_proc.o \
	fault_check/drv_adsp_fault_check.o \
	fault_check/drv_adsp_fault_parser.o
endif
#===============================================================================
# SW AOE
$(MODNAME)-objs-y += \
	osal/adsp_osal.o \
	osal/audio_mem.o \
	hifi/common/linear/linear.o \
	hifi/common/mem/dsp_mem.o \
	hifi/common/resampler/resample_rom_good.o \
	hifi/common/resampler/resample_rom_low.o \
	hifi/common/resampler/resample_rom_medium.o \
	hifi/common/resampler/resample.o \
	hifi/common/util/dsp_util.o \
	hifi/common/ringbuf/dsp_ringbuf.o \
	hifi/common/timer/system_timer.o \
	hifi/sw_main.o \
	hifi/aoe/src/aop/aoe_aop.o \
	hifi/aoe/src/aop/aoe_cast.o \
	hifi/aoe/src/aip/aoe_aip.o \
	hifi/aoe/src/aip/aoe_aip_speed.o \
	hifi/aoe/src/engine/aoe_engine.o \
	hifi/aoe/src/aoe_main.o \
	hifi/aoe/src/aoe_reg.o \
	hifi/component/sonic/sonic.o
#===============================================================================
$(MODNAME)-objs := $($(MODNAME)-objs-y)
