# # SPDX-License-Identifier: GPL-2.0 # # Copyright (c) 2013-2023 Igor Pecovnik, igor@armbian.com # # This file is a part of the Armbian Build Framework # https://github.com/armbian/build/ # source "${BASH_SOURCE%/*}/include/sunxi64_common.inc" [[ -z $CPUMIN ]] && CPUMIN=480000 [[ -z $CPUMAX ]] && CPUMAX=1512000 GOVERNOR=ondemand case $BRANCH in legacy) LINUXFAMILY=sun50iw9-blb KERNELSOURCE='https://github.com/niuyuling/linux.git' declare -g KERNEL_MAJOR_MINOR="6.1" # Major and minor versions of this kernel. KERNELBRANCH="branch:linux-6.1.y-blb" KERNELPATCHDIR="NEED-NOT" BOOTSOURCE='https://github.com/niuyuling/u-boot.git' BOOTBRANCH='branch:v2023.07-blb' BOOTPATCHDIR='NEED-NOT' BOOTDELAY=-2 ASOUND_STATE='asound.state.sun50iw9-legacy' ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware' ATFBRANCH='branch:master' ATF_PLAT="sun50i_h616" ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin' BOOTSCRIPT='boot-sun50i-next.cmd:boot.cmd' KERNEL_DRIVERS_SKIP+=(driver_rtw88) # This is custom 6.1 driver, skip rtw88 to avoid patching failures ;; current | edge) ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware' ATFBRANCH='branch:master' ATF_PLAT="sun50i_h616" ATF_TARGET_MAP='PLAT=sun50i_h616 DEBUG=1 bl31;;build/sun50i_h616/debug/bl31.bin' 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 # 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) 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" } 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/ }