官方 Armdebian Build 程序支持到 commits: 901922671e845808abaebbd33d407339174df9d7 可能随着官方提交后, 我的Git补丁不再适用与官方最新.

This commit is contained in:
aixiao 2024-03-12 16:11:16 +08:00
parent 60614c8025
commit 6e2e6ad930
2 changed files with 57 additions and 95 deletions

View File

@ -8569,87 +8569,68 @@ new file mode 100644
index 000000000..c79f80a62 index 000000000..c79f80a62
--- /dev/null --- /dev/null
+++ b/config/sources/families/sun50iw9-blb.conf +++ b/config/sources/families/sun50iw9-blb.conf
@@ -0,0 +1,83 @@ @@ -0,0 +1,64 @@
+# + #
+# SPDX-License-Identifier: GPL-2.0 + # SPDX-License-Identifier: GPL-2.0
+# + #
+# Copyright (c) 2013-2023 Igor Pecovnik, igor@armbian.com + # Copyright (c) 2013-2023 Igor Pecovnik, igor@armbian.com
+# + #
+# This file is a part of the Armbian Build Framework + # This file is a part of the Armbian Build Framework
+# https://github.com/armbian/build/ + # https://github.com/armbian/build/
+# + #
+source "${BASH_SOURCE%/*}/include/sunxi64_common.inc" + source "${BASH_SOURCE%/*}/include/sunxi64_common.inc"
+ +
+[[ -z $CPUMIN ]] && CPUMIN=480000 + [[ -z $CPUMIN ]] && CPUMIN=480000
+[[ -z $CPUMAX ]] && CPUMAX=1512000 + [[ -z $CPUMAX ]] && CPUMAX=1512000
+GOVERNOR=ondemand + GOVERNOR=ondemand
+ +
+case $BRANCH in + case $BRANCH in
+ +
+ legacy) + legacy)
+ LINUXFAMILY=sun50iw9-blb + LINUXFAMILY=sun50iw9-blb
+ KERNELSOURCE='https://github.com/niuyuling/linux.git' + KERNELSOURCE='https://github.com/niuyuling/linux.git'
+ declare -g KERNEL_MAJOR_MINOR="6.1" # Major and minor versions of this kernel. + declare -g KERNEL_MAJOR_MINOR="6.1" # Major and minor versions of this kernel.
+ KERNELBRANCH="branch:linux-6.1.y-blb" + KERNELBRANCH="branch:linux-6.1.y-blb"
+ KERNELPATCHDIR="NEED-NOT" + KERNELPATCHDIR="NEED-NOT"
+ BOOTSOURCE='https://github.com/niuyuling/u-boot.git' + BOOTSOURCE='https://github.com/niuyuling/u-boot.git'
+ BOOTBRANCH='branch:v2023.07-blb' + BOOTBRANCH='branch:v2023.07-blb'
+ BOOTPATCHDIR='NEED-NOT' + BOOTPATCHDIR='NEED-NOT'
+ BOOTDELAY=-2 + BOOTDELAY=-2
+ ASOUND_STATE='asound.state.sun50iw9-legacy' + ASOUND_STATE='asound.state.sun50iw9-legacy'
+ +
+ ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware' + ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware'
+ ATFBRANCH='branch:master' + ATFBRANCH='tag:lts-v2.10.2'
+ ATF_PLAT="sun50i_h616" + ATF_PLAT="sun50i_h616"
+ ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin' + ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin'
+ BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd' + BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd'
+ KERNEL_DRIVERS_SKIP+=(driver_rtw88) # This is custom 6.1 driver, skip rtw88 to avoid patching failures + KERNEL_DRIVERS_SKIP+=(driver_rtw88) # This is custom 6.1 driver, skip rtw88 to avoid patching failures
+ ;; + ;;
+ +
+ current | edge) + current | edge)
+ ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware' + ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware'
+ ATFBRANCH='branch:master' + ATFBRANCH='tag:lts-v2.10.2'
+ ATF_PLAT="sun50i_h616" + ATF_PLAT="sun50i_h616"
+ ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin' + ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin'
+ BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd' + BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd'
+ +
+ # Stick to 6.2.16 kernel for edge until ws2812 driver is fixed + ;;
+ if [[ "$BRANCH" == "edge" ]]; then + esac
+ LINUXFAMILY="sun50iw9-btt" # Use a separate kernel deb
+ LINUXCONFIG="linux-sunxi64-edge" # But the same kernel config, will be modified below in armbian_kernel_config__enable_ws2812_driver
+ KERNEL_MAJOR_MINOR="6.2"
+ KERNELBRANCH="tag:v6.2.16"
+ KERNELPATCHDIR="archive/sunxi-${KERNEL_MAJOR_MINOR}"
+ fi
+ +
+ ;; + # This build requires busybox (and dos2unix)
+esac + function add_host_dependencies__sun50iw9_add_busybox_hostdep() {
+ display_alert "Adding busybox dep" "for ${BOARD} bootloader compile" "debug"
+ declare -g EXTRA_BUILD_DEPS="${EXTRA_BUILD_DEPS} busybox"
+ }
+ +
+# Enable ws2812 driver for edge kernel + function family_tweaks_s() {
+function armbian_kernel_config__enable_ws2812_driver() { + if [[ -f $SDCARD/lib/systemd/system/hdmi-audio.service ]]; then
+ if [[ "$BRANCH" == "edge" ]]; then + chroot $SDCARD /bin/bash -c "systemctl --no-reload enable hdmi-audio.service >/dev/null 2>&1"
+ kernel_config_modifying_hashes+=("CONFIG_LEDS_WS2812=m") + fi
+ if [[ -f .config ]]; then + }
+ kernel_config_set_m CONFIG_LEDS_WS2812
+ fi
+ fi
+}
+ +
+# This build requires busybox (and dos2unix) + function family_tweaks_bsp() {
+function add_host_dependencies__sun50iw9_add_busybox_hostdep() { + install -m 755 $SRC/packages/blobs/sunxi/h616/inithdmiaudio $destination/usr/bin/
+ display_alert "Adding busybox dep" "for ${BOARD} bootloader compile" "debug" + cp $SRC/packages/blobs/sunxi/h616/libtinyalsa.so $destination/usr/lib/
+ declare -g EXTRA_BUILD_DEPS="${EXTRA_BUILD_DEPS} busybox" + cp $SRC/packages/bsp/sunxi/hdmi-audio.service $destination/lib/systemd/system/
+}
+ +
+function family_tweaks_s() { + }
+ if [[ -f $SDCARD/lib/systemd/system/hdmi-audio.service ]]; then
+ chroot $SDCARD /bin/bash -c "systemctl --no-reload enable hdmi-audio.service >/dev/null 2>&1"
+ fi
+}
+
+function family_tweaks_bsp() {
+ install -m 755 $SRC/packages/blobs/sunxi/h616/inithdmiaudio $destination/usr/bin/
+ cp $SRC/packages/blobs/sunxi/h616/libtinyalsa.so $destination/usr/lib/
+ cp $SRC/packages/bsp/sunxi/hdmi-audio.service $destination/lib/systemd/system/
+
+}

View File

@ -27,7 +27,7 @@ case $BRANCH in
ASOUND_STATE='asound.state.sun50iw9-legacy' ASOUND_STATE='asound.state.sun50iw9-legacy'
ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware' ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware'
ATFBRANCH='branch:master' ATFBRANCH='tag:lts-v2.10.2'
ATF_PLAT="sun50i_h616" ATF_PLAT="sun50i_h616"
ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin' ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin'
BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd' BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd'
@ -36,33 +36,14 @@ case $BRANCH in
current | edge) current | edge)
ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware' ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware'
ATFBRANCH='branch:master' ATFBRANCH='tag:lts-v2.10.2'
ATF_PLAT="sun50i_h616" ATF_PLAT="sun50i_h616"
ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin' ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin'
BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd' BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd'
# Stick to 6.2.16 kernel for edge until ws2812 driver is fixed
if [[ "$BRANCH" == "edge" ]]; then
LINUXFAMILY="sun50iw9-btt" # Use a separate kernel deb
LINUXCONFIG="linux-sunxi64-edge" # But the same kernel config, will be modified below in armbian_kernel_config__enable_ws2812_driver
KERNEL_MAJOR_MINOR="6.2"
KERNELBRANCH="tag:v6.2.16"
KERNELPATCHDIR="archive/sunxi-${KERNEL_MAJOR_MINOR}"
fi
;; ;;
esac esac
# Enable ws2812 driver for edge kernel
function armbian_kernel_config__enable_ws2812_driver() {
if [[ "$BRANCH" == "edge" ]]; then
kernel_config_modifying_hashes+=("CONFIG_LEDS_WS2812=m")
if [[ -f .config ]]; then
kernel_config_set_m CONFIG_LEDS_WS2812
fi
fi
}
# This build requires busybox (and dos2unix) # This build requires busybox (and dos2unix)
function add_host_dependencies__sun50iw9_add_busybox_hostdep() { function add_host_dependencies__sun50iw9_add_busybox_hostdep() {
display_alert "Adding busybox dep" "for ${BOARD} bootloader compile" "debug" display_alert "Adding busybox dep" "for ${BOARD} bootloader compile" "debug"