Advertisement
danogentili

Custom mkbootimg.mk for s3 neo

Aug 7th, 2015
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.40 KB | None | 0 0
  1. LOCAL_PATH := $(call my-dir)
  2.  
  3. ## Don't change anything under here. The variables are named MSM8226_whatever
  4. ## on purpose, to avoid conflicts with similarly named variables at other
  5. ## parts of the build environment
  6.  
  7. ## Imported from the original makefile...
  8. KERNEL_CONFIG := $(KERNEL_OUT)/.config
  9. MSM8226_DTS_NAMES := msm8226
  10.  
  11. LZMA_BIN := /usr/bin/lzma
  12.  
  13. CL_GRN="\033[32m"
  14. PRT_INS := $(CL_GRN)
  15. PRT_IMG := $(CL_GRN)
  16. CL_RST="\033[0m"
  17.  
  18. MSM8226_DTS_FILES = $(wildcard $(TOP)/$(TARGET_KERNEL_SOURCE)/arch/arm/boot/dts/msm8226-sec-s3ve3geur*.dts)
  19. MSM8226_DTS_FILE = $(lastword $(subst /, ,$(1)))
  20. DTB_FILE = $(addprefix $(KERNEL_OUT)/arch/arm/boot/,$(patsubst %.dts,%.dtb,$(call MSM8226_DTS_FILE,$(1))))
  21. ZIMG_FILE = $(addprefix $(KERNEL_OUT)/arch/arm/boot/,$(patsubst %.dts,%-zImage,$(call MSM8226_DTS_FILE,$(1))))
  22. KERNEL_ZIMG = $(KERNEL_OUT)/arch/arm/boot/zImage
  23. DTC = $(KERNEL_OUT)/scripts/dtc/dtc
  24.  
  25. define append-msm8226-dtb
  26. mkdir -p $(KERNEL_OUT)/arch/arm/boot;\
  27. $(foreach MSM8226_DTS_NAME, $(MSM8226_DTS_NAMES), \
  28. $(foreach d, $(MSM8226_DTS_FILES), \
  29. $(DTC) -p 1024 -O dtb -o $(call DTB_FILE,$(d)) $(d); \
  30. cat $(KERNEL_ZIMG) $(call DTB_FILE,$(d)) > $(call ZIMG_FILE,$(d));))
  31. endef
  32.  
  33.  
  34. ## Build and run dtbtool
  35. DTBTOOL := $(HOST_OUT_EXECUTABLES)/dtbToolCM$(HOST_EXECUTABLE_SUFFIX)
  36. INSTALLED_DTIMAGE_TARGET := $(PRODUCT_OUT)/dt.img
  37.  
  38. $(INSTALLED_DTIMAGE_TARGET): $(DTBTOOL) $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr $(INSTALLED_KERNEL_TARGET)
  39. @echo -e ${CL_CYN}"Start DT image: $@"${CL_RST}
  40. $(call append-msm8226-dtb)
  41. $(call pretty,"Target dt image: $(INSTALLED_DTIMAGE_TARGET)")
  42. $(DTBTOOL) -2 -o $(INSTALLED_DTIMAGE_TARGET) -s $(BOARD_KERNEL_PAGESIZE) -p $(KERNEL_OUT)/scripts/dtc/ $(KERNEL_OUT)/arch/arm/boot/
  43. @echo -e ${CL_CYN}"Made DT image: $@"${CL_RST}
  44.  
  45.  
  46. ## Overload bootimg generation: Same as the original, + --dt arg
  47. $(INSTALLED_BOOTIMAGE_TARGET): $(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_FILES) $(INSTALLED_DTIMAGE_TARGET)
  48. $(call pretty,"Target boot image: $@")
  49. $(hide) $(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_ARGS) $(BOARD_MKBOOTIMG_ARGS) --dt $(INSTALLED_DTIMAGE_TARGET) --output $@
  50. $(hide) $(call assert-max-image-size,$@,$(BOARD_BOOTIMAGE_PARTITION_SIZE),raw)
  51. @echo -e ${CL_CYN}"Made boot image: $@"${CL_RST}
  52.  
  53. ## Overload recoveryimg generation: Same as the original, + --dt arg
  54. ifndef BOARD_LZMA_RECOVERY_RD
  55. $(INSTALLED_RECOVERYIMAGE_TARGET): $(MKBOOTIMG) $(INSTALLED_DTIMAGE_TARGET) \
  56. $(recovery_ramdisk) \
  57. $(recovery_kernel)
  58. @echo -e ${CL_CYN}"----- Making recovery image ------"${CL_RST}
  59. $(hide) $(MKBOOTIMG) $(INTERNAL_RECOVERYIMAGE_ARGS) $(BOARD_MKBOOTIMG_ARGS) --dt $(INSTALLED_DTIMAGE_TARGET) --output $@
  60. $(hide) $(call assert-max-image-size,$@,$(BOARD_RECOVERYIMAGE_PARTITION_SIZE),raw)
  61. @echo -e ${CL_CYN}"Made recovery image: $@"${CL_RST}
  62. else
  63. $(INSTALLED_RECOVERYIMAGE_TARGET): $(MKBOOTIMG) $(INSTALLED_DTIMAGE_TARGET) \
  64. $(recovery_uncompressed_ramdisk) \
  65. $(recovery_ramdisk) \
  66. $(recovery_kernel)
  67. $(LZMA_BIN) $(recovery_uncompressed_ramdisk)
  68. $(hide) cp $(recovery_uncompressed_ramdisk).lzma $(recovery_ramdisk)
  69. @echo -e ${CL_CYN}"----- Making compressed recovery image ------"${CL_RST}
  70. $(hide) $(MKBOOTIMG) $(INTERNAL_RECOVERYIMAGE_ARGS) $(BOARD_MKBOOTIMG_ARGS) --dt $(INSTALLED_DTIMAGE_TARGET) --output $@
  71. $(hide) $(call assert-max-image-size,$@,$(BOARD_RECOVERYIMAGE_PARTITION_SIZE),raw)
  72. @echo -e ${CL_CYN}"Made compressed recovery image: $@"${CL_RST}
  73. endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement