INNOSMMU_INCLUDE :=-I$(INNOGPU_PRO_PATH)/innosmmu
INNOSMMU_OBJS = \
innosmmu/innosmmu_drv.o \
innosmmu/innosmmu.o

ifeq ($(SEPARATE_BUILD),y)
  innosmmu-y := $(INNOSMMU_OBJS)
  obj-m += innosmmu.o
else
  INNOSMMU := $(INNOSMMU_OBJS)
endif
$(srctree)/$(src)/innosmmu/innosmmu.o:
ifeq (,$(wildcard $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.c))
ifeq ($(CONFIG_X86),y)
	cp -f $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o_shipped.x86 $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o
else ifeq ($(CONFIG_ARM),y)
	cp -f $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o_shipped.arm $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o
else ifeq ($(CONFIG_ARM64),y)
	cp -f $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o_shipped.arm64 $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o
else ifeq ($(CONFIG_LOONGARCH),y)
	cp -f $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o_shipped.loongarch $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o
else ifeq ($(CONFIG_RISCV),y)
	cp -f $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o_shipped.riscv $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o
else ifeq ($(CONFIG_SW64),y)
	cp -f $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o_shipped.sw64 $(INNOGPU_PRO_PATH)/innosmmu/innosmmu.o
endif
endif
