1################################################################################ 2# 3# mxs-bootlets 4# 5################################################################################ 6 7ifeq ($(BR2_TARGET_MXS_BOOTLETS_CUSTOM_TARBALL),y) 8MXS_BOOTLETS_TARBALL = $(call qstrip,$(BR2_TARGET_MXS_BOOTLETS_CUSTOM_TARBALL_URL)) 9MXS_BOOTLETS_SITE = $(patsubst %/,%,$(dir $(MXS_BOOTLETS_TARBALL))) 10MXS_BOOTLETS_SOURCE = $(notdir $(MXS_BOOTLETS_TARBALL)) 11BR_NO_CHECK_HASH_FOR += $(MXS_BOOTLETS_SOURCE) 12else ifeq ($(BR2_TARGET_MXS_BOOTLETS_CUSTOM_GIT),y) 13MXS_BOOTLETS_SITE = $(BR2_TARGET_MXS_BOOTLETS_CUSTOM_GIT_URL) 14MXS_BOOTLETS_SITE_METHOD = git 15MXS_BOOTLETS_VERSION = $(call qstrip,$(BR2_TARGET_MXS_BOOTLETS_CUSTOM_GIT_VERSION)) 16BR_NO_CHECK_HASH_FOR += $(MXS_BOOTLETS_SOURCE) 17else 18MXS_BOOTLETS_VERSION = 10.12.01 19MXS_BOOTLETS_SITE = http://download.ossystems.com.br/bsp/freescale/source 20MXS_BOOTLETS_SOURCE = imx-bootlets-src-$(MXS_BOOTLETS_VERSION).tar.gz 21endif 22 23ifeq ($(BR2_TARGET_MXS_BOOTLETS_STMP37xx),y) 24MXS_BOOTLETS_BOARD = stmp37xx_dev 25else ifeq ($(BR2_TARGET_MXS_BOOTLETS_STMP378x),y) 26MXS_BOOTLETS_BOARD = stmp378x_dev 27else ifeq ($(BR2_TARGET_MXS_BOOTLETS_IMX28EVK),y) 28MXS_BOOTLETS_BOARD = iMX28_EVK 29else ifeq ($(BR2_TARGET_MXS_BOOTLETS_CUSTOM_BOARD),y) 30MXS_BOOTLETS_BOARD = $(call qstrip,$(BR2_TARGET_MXS_BOOTLETS_CUSTOM_BOARD_NAME)) 31endif 32 33ifeq ($(BR2_TARGET_MXS_BOOTLETS_HAS_IVT),y) 34MXS_BOOTLETS_IVT_SUFFIX = _ivt 35MXS_BOOTLETS_ELFTOSB_OPTIONS += -f imx28 36endif 37 38MXS_BOOTLETS_DEPENDENCIES = host-elftosb 39MXS_BOOTLETS_LICENSE = GPL-2.0+ 40 41ifeq ($(BR2_TARGET_MXS_BOOTLETS_BAREBOX),y) 42MXS_BOOTLETS_DEPENDENCIES += barebox 43MXS_BOOTLETS_BOOTDESC = barebox$(MXS_BOOTLETS_IVT_SUFFIX).bd 44MXS_BOOTLETS_BOOTSTREAM = $(MXS_BOOTLETS_BOARD)_barebox$(MXS_BOOTLETS_IVT_SUFFIX).sb 45 46else ifeq ($(BR2_TARGET_MXS_BOOTLETS_LINUX),y) 47MXS_BOOTLETS_DEPENDENCIES += linux 48MXS_BOOTLETS_BOOTDESC = linux$(MXS_BOOTLETS_IVT_SUFFIX).bd 49MXS_BOOTLETS_BOOTSTREAM = $(MXS_BOOTLETS_BOARD)_linux$(MXS_BOOTLETS_IVT_SUFFIX).sb 50 51else ifeq ($(BR2_TARGET_MXS_BOOTLETS_UBOOT),y) 52MXS_BOOTLETS_DEPENDENCIES += uboot 53MXS_BOOTLETS_BOOTDESC = uboot$(MXS_BOOTLETS_IVT_SUFFIX).bd 54MXS_BOOTLETS_BOOTSTREAM = $(MXS_BOOTLETS_BOARD)_uboot$(MXS_BOOTLETS_IVT_SUFFIX).sb 55endif 56 57ifeq ($(BR2_TARGET_MXS_BOOTLETS_BAREBOX),y) 58define MXS_BOOTLETS_SED_BAREBOX 59 sed -i 's,[^ *]barebox.*;,\tbarebox="$(BAREBOX_DIR)/barebox";,' $(@D)/$(MXS_BOOTLETS_BOOTDESC) 60endef 61endif 62 63ifeq ($(BR2_TARGET_MXS_BOOTLETS_LINUX),y) 64define MXS_BOOTLETS_BUILD_LINUX_PREP 65 BOARD=$(MXS_BOOTLETS_BOARD) CROSS_COMPILE="$(TARGET_CROSS)" \ 66 $(MAKE1) -C $(@D) linux_prep 67endef 68define MXS_BOOTLETS_SED_LINUX 69 sed -i 's,[^ *]linux_prep.*;,\tlinux_prep="$(@D)/linux_prep/output-target/linux_prep";,' $(@D)/$(MXS_BOOTLETS_BOOTDESC) 70 sed -i 's,[^ *]zImage.*;,\tzImage="$(LINUX_DIR)/arch/arm/boot/zImage";,' $(@D)/$(MXS_BOOTLETS_BOOTDESC) 71endef 72endif 73 74ifeq ($(BR2_TARGET_MXS_BOOTLETS_UBOOT),y) 75define MXS_BOOTLETS_SED_UBOOT 76 sed -i 's,[^ *]u_boot.*;,\tu_boot="$(UBOOT_DIR)/u-boot";,' $(@D)/$(MXS_BOOTLETS_BOOTDESC) 77endef 78endif 79 80define MXS_BOOTLETS_INSTALL_BAREBOX_BOOTDESC 81 cp boot/mxs-bootlets/barebox_ivt.bd $(@D)/ 82endef 83 84MXS_BOOTLETS_POST_EXTRACT_HOOKS += MXS_BOOTLETS_INSTALL_BAREBOX_BOOTDESC 85 86define MXS_BOOTLETS_BUILD_CMDS 87 BOARD=$(MXS_BOOTLETS_BOARD) CROSS_COMPILE="$(TARGET_CROSS)" \ 88 $(MAKE1) -C $(@D) power_prep 89 BOARD=$(MXS_BOOTLETS_BOARD) CROSS_COMPILE="$(TARGET_CROSS)" \ 90 $(MAKE1) -C $(@D) boot_prep 91 $(MXS_BOOTLETS_BUILD_LINUX_PREP) 92 sed -i 's,[^ *]power_prep.*;,\tpower_prep="$(@D)/power_prep/power_prep";,' $(@D)/$(MXS_BOOTLETS_BOOTDESC) 93 sed -i 's,[^ *]sdram_prep.*;,\tsdram_prep="$(@D)/boot_prep/boot_prep";,' $(@D)/$(MXS_BOOTLETS_BOOTDESC) 94 $(MXS_BOOTLETS_SED_BAREBOX) 95 $(MXS_BOOTLETS_SED_LINUX) 96 $(MXS_BOOTLETS_SED_UBOOT) 97 $(HOST_DIR)/bin/elftosb $(MXS_BOOTLETS_ELFTOSB_OPTIONS) \ 98 -z -c $(@D)/$(MXS_BOOTLETS_BOOTDESC) \ 99 -o $(@D)/$(MXS_BOOTLETS_BOOTSTREAM) 100endef 101 102define MXS_BOOTLETS_INSTALL_TARGET_CMDS 103 cp $(@D)/$(MXS_BOOTLETS_BOOTSTREAM) $(BINARIES_DIR)/ 104endef 105 106$(eval $(generic-package)) 107