emigen.mk 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. ifndef EMIGEN_OUT
  2. EMIGEN_OUT := $(PRELOADER_OUT)
  3. endif
  4. ifndef PERL
  5. PERL := perl
  6. endif
  7. export EMIGEN_OUT
  8. ALL_EMIGEN_FILE := \
  9. inc/custom_emi.h \
  10. MTK_Loader_Info.tag
  11. ifeq ($(MTK_PLATFORM),MT2601)
  12. ALL_EMIGEN_FILE += \
  13. custom_emi.c
  14. endif
  15. EMIGEN_FILE_LIST := $(addprefix $(EMIGEN_OUT)/,$(ALL_EMIGEN_FILE))
  16. CUSTOM_MEMORY_HDR := $(MTK_PATH_CUSTOM)/inc/custom_MemoryDevice.h
  17. ifeq ($(MACH_TYPE),mt6735m)
  18. MEMORY_DEVICE_XLS := $(D_ROOT)/tools/emigen/MT6735/MemoryDeviceList_MT6735M.xls
  19. else ifeq ($(MACH_TYPE),mt6753)
  20. MEMORY_DEVICE_XLS := $(D_ROOT)/tools/emigen/MT6735/MemoryDeviceList_MT6753.xls
  21. else ifeq ($(MACH_TYPE),mt6737t)
  22. MEMORY_DEVICE_XLS := $(D_ROOT)/tools/emigen/MT6735/MemoryDeviceList_MT6737T.xls
  23. else ifeq ($(MACH_TYPE),mt6737m)
  24. MEMORY_DEVICE_XLS := $(D_ROOT)/tools/emigen/MT6735/MemoryDeviceList_MT6737M.xls
  25. else
  26. MEMORY_DEVICE_XLS := $(D_ROOT)/tools/emigen/$(MTK_PLATFORM)/MemoryDeviceList_$(MTK_PLATFORM).xls
  27. endif
  28. EMIGEN_SCRIPT := $(D_ROOT)/tools/emigen/$(MTK_PLATFORM)/emigen.pl
  29. EMIGEN_PREBUILT_PATH := $(MTK_PATH_CUSTOM)
  30. EMIGEN_PREBUILT_CHECK := $(filter-out $(wildcard $(addprefix $(EMIGEN_PREBUILT_PATH)/,$(ALL_EMIGEN_FILE))),$(addprefix $(EMIGEN_PREBUILT_PATH)/,$(ALL_EMIGEN_FILE)))
  31. ##############################################################
  32. # Emigen generate parameter for header and tag files
  33. #
  34. BUILD_EMI_H := 0
  35. BUILD_LOADER_TAG := 1
  36. export EMIGEN_TAG_OUT := $(EMIGEN_OUT)
  37. export EMIGEN_H_OUT := $(EMIGEN_OUT)/inc
  38. .PHONY: emigen
  39. emigen: $(EMIGEN_FILE_LIST)
  40. ifneq ($(EMIGEN_PREBUILT_CHECK),)
  41. $(EMIGEN_H_OUT)/custom_emi.h: $(EMIGEN_SCRIPT) $(CUSTOM_MEMORY_HDR) $(MEMORY_DEVICE_XLS)
  42. @mkdir -p $(dir $@)
  43. $(PERL) $(EMIGEN_SCRIPT) $(CUSTOM_MEMORY_HDR) $(MEMORY_DEVICE_XLS) $(MTK_PLATFORM) $(MTK_PROJECT) $(EMIGEN_H_OUT) $(BUILD_EMI_H) $(MACH_TYPE)
  44. echo "heeeeeeee loooooooooooooooooooooooooooooooooooooooooooo"
  45. $(EMIGEN_TAG_OUT)/MTK_Loader_Info.tag: $(EMIGEN_SCRIPT) $(CUSTOM_MEMORY_HDR) $(MEMORY_DEVICE_XLS)
  46. @mkdir -p $(dir $@)
  47. $(PERL) $(EMIGEN_SCRIPT) $(CUSTOM_MEMORY_HDR) $(MEMORY_DEVICE_XLS) $(MTK_PLATFORM) $(MTK_PROJECT) $(EMIGEN_TAG_OUT) $(BUILD_LOADER_TAG) $(MACH_TYPE)
  48. else
  49. $(EMIGEN_FILE_LIST): $(EMIGEN_OUT)/% : $(EMIGEN_PREBUILT_PATH)/%
  50. @mkdir -p $(dir $@)
  51. cp -f $< $@
  52. endif