###############################################################################
# export variables
###############################################################################
ifeq ($(CONFIG_SOCT_KMOD_CFLAGS),)
ccflags-y += $(CONFIG_SOCT_KMOD_CFLAGS)
endif

hal_ctrl=hdmirx2.0/hal
ifeq ($(CONFIG_SHAOLINAXE),y)
    chip_name=v201
else
    chip_name=v200
endif
hal_phy=$(hal_ctrl)/$(chip_name)/phy

###############################################################################
# local variables
###############################################################################

## header search path
hdmirx_path := hdmirx/v2.0
ccflags-y += -DLOG_MODULE_ID=SOC_ID_HDMIRX
ccflags-y += -D_FORTIFY_SOURCE=2 -O2 -fstack-protector-all

$(warning $(CONFIG_SOCT_CHIP_TYPE))
$(warning $(CONFIG_SOCT_HDMIRX_SUPPORT))

ccflags-y += -Idrivers/drv/ioctl_inc/generic \
             -Idrivers/drv/ioctl_inc/hdmirx \
             -Idrivers/drv/ioctl_inc/video \
             -Idrivers/drv/ioctl_inc/audio \
             -Idrivers/drv/ioctl_inc/i2c \
             -Idrivers/drv/ioctl_inc/common \
             -Idrivers/drv/ext_inc/base \
             -Idrivers/drv/ext_inc/osal \
             -Idrivers/drv/ext_inc/common \
             -Idrivers/drv/ext_inc/hdmirx \
             -Idrivers/drv/ext_inc/i2c \
             -Idrivers/drv/ext_inc/hdmitx \
             -Idrivers/drv/ext_inc/gpio \
             -Idrivers/drv/ext_inc/otp \
             -Idrivers/drv/common/include                          \
             -Idrivers/drv/$(hdmirx_path)                          \
             -Idrivers/drv/$(hdmirx_path)/hdmirx2.0                \
             -Idrivers/drv/$(hdmirx_path)/$(hal_ctrl)              \
             -Idrivers/drv/$(hdmirx_path)/$(hal_ctrl)/$(chip_name) \
             -Idrivers/drv/$(hdmirx_path)/$(hal_phy)

MODNAME := soc_hdmirx

ifeq ($(CONFIG_SOCT_DRV_BUILDIN),y)
    obj-$(CONFIG_SOCT_HDMIRX_SUPPORT) += $(MODNAME).o
else
    obj-m += $(MODNAME).o
endif

$(MODNAME)-objs-y += drv_hdmirx_edid.o \
                     drv_hdmirx_common.o \
                     drv_hdmirx_intf.o

$(MODNAME)-objs-y += hdmirx2.0/drv_hdmirx_audio_v2.o  \
                     hdmirx2.0/drv_hdmirx_cec_v2.o    \
                     hdmirx2.0/drv_hdmirx_ctrl_v2.o   \
                     hdmirx2.0/drv_hdmirx_hdcp_v2.o   \
                     hdmirx2.0/drv_hdmirx_video_v2.o  \
                     hdmirx2.0/drv_hdmirx_packet_v2.o \
                     hdmirx2.0/drv_hdmirx_proc_v2.o   \
                     hdmirx2.0/drv_hdmirx_workround.o

$(MODNAME)-objs-y += $(hal_ctrl)/hal_hdmirx_custom.o \
                     $(hal_ctrl)/hal_hdmirx_log.o \
                     $(hal_ctrl)/$(chip_name)/hal_hdmirx_ctrl.o \
                     $(hal_phy)/hal_hdmirx_damix_cfg_p0.o  \
                     $(hal_phy)/hal_hdmirx_damix_cfg_p1.o  \
                     $(hal_phy)/hal_hdmirx_damix_cfg_p2.o  \
                     $(hal_phy)/hal_hdmirx_damix_p3.o      \
                     $(hal_phy)/hal_hdmirx_phy_driver.o    \
                     $(hal_phy)/hal_hdmirx_platform.o      \
                     $(hal_phy)/hal_hdmirx_reg_dphy.o

ccflags-y += -DCHIP_TYPE_shaolinaxe

###############################################################################
$(MODNAME)-objs := $($(MODNAME)-objs-y)
