From 56fce18d66951e6d9a8ac46927c975fa2c4ad8eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattias=20Walstr=C3=B6m?= Date: Tue, 12 Aug 2025 15:15:16 +0200 Subject: [PATCH] workflows/build-boot: Add mt7976 bootloader It is the chipset used on banana pi r3. --- .github/workflows/build-boot.yml | 1 + package/board/banana-pi-r3/Config.in | 39 +------------------- package/board/banana-pi-r3/banana-pi-r3.mk | 33 ----------------- src/board/banana-pi-r3/genimage.cfg.in | 4 +- src/board/banana-pi-r3/uboot/mt7986-env.dtsi | 2 +- 5 files changed, 6 insertions(+), 73 deletions(-) diff --git a/.github/workflows/build-boot.yml b/.github/workflows/build-boot.yml index b43bc63b..708337dc 100644 --- a/.github/workflows/build-boot.yml +++ b/.github/workflows/build-boot.yml @@ -20,6 +20,7 @@ jobs: - cn9130_crb_boot - aarch64_qemu_boot - rpi4_boot + - mt7986_sd_boot env: MAKEFLAGS: -j5 steps: diff --git a/package/board/banana-pi-r3/Config.in b/package/board/banana-pi-r3/Config.in index 6b944b69..6c7578cc 100644 --- a/package/board/banana-pi-r3/Config.in +++ b/package/board/banana-pi-r3/Config.in @@ -5,41 +5,6 @@ config BR2_PACKAGE_BANANA_PI_R3 select BR2_PACKAGE_LINUX_FIRMWARE select BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK select BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7986 - #select BR2_PACKAGE_BANANA_PI_R3_SDCARD - select SDCARD_AUX - # select BR2_TARGET_ARM_TRUSTED_FIRMWARE - # select BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT # Does not work, needs a hook in the .mk file - # select BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP - # select BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33 - # select BR2_TARGET_UBOOT - # select BR2_TARGET_UBOOT_FORMAT_CUSTOM - # select BR2_TARGET_UBOOT_NEEDS_DTC - # select BR2_TARGET_UBOOT_NEEDS_UBOOT_TOOLS - # select BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG - help + select SDCARD_AUX + help Build Banana PI R3 support - -# Don't redefine - just set conditional defaults -# config BR2_TARGET_UBOOT_BOARD_DEFCONFIG -# default "mt7986a_bpir3_sd" - -# config BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES -# default "${BR2_EXTERNAL_INFIX_PATH}/board/common/uboot/extras.config ${BR2_EXTERNAL_INFIX_PATH}/src/board/banana-pi-r3/uboot/extras.config" - -# config BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME -# default "arch/arm/dts/infix-key.dtbo arch/arm/dts/rpi-env.dtbo" - -# config BR2_TARGET_UBOOT_CUSTOM_DTS_PATH -# default "${BR2_EXTERNAL_INFIX_PATH}/src/board/banana-pi-r3/uboot/rpi-env.dtso" - -# config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL -# default "https://github.com/mtk-openwrt/arm-trusted-firmware.git" - -# config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION -# default "78a0dfd927bb00ce973a1f8eb4079df0f755887a" - -# config BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM -# default "mt7986" - -# config BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES -# default "BOOT_DEVICE=sdmmc USE_COHERENT_MEM=1" diff --git a/package/board/banana-pi-r3/banana-pi-r3.mk b/package/board/banana-pi-r3/banana-pi-r3.mk index d5fa28d1..b4b2ae95 100644 --- a/package/board/banana-pi-r3/banana-pi-r3.mk +++ b/package/board/banana-pi-r3/banana-pi-r3.mk @@ -1,10 +1,6 @@ GENIMAGE_CFG="$(BUILD_DIR)/genimage.cfg" GENIMAGE_TMP="$(BUILD_DIR)/genimage.tmp" BOARD_DIR="$(BR2_EXTERNAL_INFIX_PATH)/src/board/banana-pi-r3" -BOOTLOADER_NAME=fip.bin -BOOTLOADER2_NAME=bl2.img - -BOOTLOADER_PATH=/home/lazzer/Documents/github.com/kernelkit/infix3/output-bootloader/images define BANANA_PI_R3_LINUX_CONFIG_FIXUPS $(call KCONFIG_ENABLE_OPT,CONFIG_ARCH_MEDIATEK) @@ -40,34 +36,5 @@ define BANANA_PI_R3_LINUX_CONFIG_FIXUPS $(call KCONFIG_SET_OPT,CONFIG_CRYPTO_DEV_SAFEXCEL,m) endef -ifeq ($(BR2_PACKAGE_BANANA_PI_R3),y) -define GENERATE_SD_CARD - VERSION="-$(INFIX_RELEASE)" - cp "$(BOOTLOADER_PATH)/$(BOOTLOADER_NAME)" "$(BINARIES_DIR)" - cp "$(BOOTLOADER_PATH)/$(BOOTLOADER2_NAME)" "$(BINARIES_DIR)" - sed "s|#VERSION#|$(RELEASE)|" "$(BOARD_DIR)/genimage.cfg.in" | \ - sed "s|#INFIX_ID#|$(INFIX_ID)|" > "$(GENIMAGE_CFG)" - # Create temporary root path - ROOTPATH_TMP=$(mktemp -d) - trap 'rm -rf \"$ROOTPATH_TMP\"' EXIT - - # Clean previous genimage temp directory - rm -rf "${GENIMAGE_TMP}" - - # Generate the SD card image - $(HOST_DIR)/bin/genimage \ - --rootpath "${ROOTPATH_TMP}" \ - --tmppath "$(GENIMAGE_TMP)" \ - --inputpath "$(BINARIES_DIR)" \ - --outputpath "$(BINARIES_DIR)" \ - --config "${GENIMAGE_CFG}" -endef -endif -.PHONY: generate-sdcard-image -all: generate-sdcard-image -generate-sdcard-image: target-post-image - $(call GENERATE_SD_CARD) - - $(eval $(ix-board)) $(eval $(generic-package)) diff --git a/src/board/banana-pi-r3/genimage.cfg.in b/src/board/banana-pi-r3/genimage.cfg.in index ce6c84cc..9c9b695f 100644 --- a/src/board/banana-pi-r3/genimage.cfg.in +++ b/src/board/banana-pi-r3/genimage.cfg.in @@ -24,8 +24,8 @@ image #INFIX_ID##VERSION#-bpi-r3-sdcard.img { } # BL2 bootloader partition (MediaTek official location) - partition bl2 { - image = "bl2.img" + partition bl2 { + image = "bl2.img" offset = 1024s # 0x80000 = sector 1024 size = 4M # 0x400000 bootable = true diff --git a/src/board/banana-pi-r3/uboot/mt7986-env.dtsi b/src/board/banana-pi-r3/uboot/mt7986-env.dtsi index 9e45f769..20a532f2 100644 --- a/src/board/banana-pi-r3/uboot/mt7986-env.dtsi +++ b/src/board/banana-pi-r3/uboot/mt7986-env.dtsi @@ -14,7 +14,7 @@ kernel_addr_r = "0x44000000"; scriptaddr = "0x48000000"; ramdisk_addr_r = "0x4A000000"; - + /* This is a development platform, keep * developer mode statically enabled. */