diff --git a/config/boards/orangepi3-lts.csc b/config/boards/orangepi3-lts.csc index 2574c262d5..457af0fcbd 100644 --- a/config/boards/orangepi3-lts.csc +++ b/config/boards/orangepi3-lts.csc @@ -3,13 +3,71 @@ BOARD_NAME="Orange Pi 3 LTS" BOARD_VENDOR="xunlong" BOARDFAMILY="sun50iw6" BOARD_MAINTAINER="" -BOOTCONFIG="orangepi_3_lts_defconfig" +BOOT_FDT_FILE="sun50i-h6-orangepi-3-lts.dtb" +BOOTCONFIG="orangepi_3_defconfig" BOOT_LOGO="desktop" -KERNEL_TARGET="current,edge,legacy" -KERNEL_TEST_TARGET="current" +MODULES_BLACKLIST="sunxi_addr" # Still loads but later in the boot process CRUSTCONFIG="orangepi_3_lts_defconfig" +KERNEL_TARGET="current,edge" +KERNEL_TEST_TARGET="current" +PACKAGE_LIST_BOARD="rfkill bluetooth bluez bluez-tools" -enable_extension "uwe5622-allwinner" +function post_family_config__use_orangepi3lts_uboot() { + case $BRANCH in + * ) + declare -g ATFBRANCH="tag:lts-v2.12.9" + declare -g BOOTPATCHDIR="v2026.01" + declare -g BOOTBRANCH_BOARD="tag:${BOOTPATCHDIR}" + declare -g BOOTBRANCH="${BOOTBRANCH_BOARD}" + ;; + esac +} + +# UWE5622 Wireless +function post_family_tweaks_bsp__uwe5622_wireless() { + if [[ -f "$SRC/packages/bsp/sunxi/sprd-bluetooth" ]] && \ + [[ -f "$SRC/packages/bsp/sunxi/aw859a-wifi.service" ]] && \ + [[ -f "$SRC/packages/blobs/bt/hciattach/hciattach_opi_${ARCH}_upstream" ]]; then + display_alert "$BOARD" "Installing UWE5622 Tweaks" "info" + mkdir -p "${destination}"/usr/bin + mkdir -p "${destination}"/etc/systemd/system + cp -f "$SRC/packages/bsp/sunxi/sprd-bluetooth" "${destination}"/usr/bin + cp -f "$SRC/packages/blobs/bt/hciattach/hciattach_opi_${ARCH}_upstream" "${destination}"/usr/bin/hciattach_opi + chmod +x "${destination}"/usr/bin/sprd-bluetooth + chmod +x "${destination}"/usr/bin/hciattach_opi + cat > "${destination}"/etc/systemd/system/sprd-bluetooth.service <<- EOT + [Unit] + Description=SPRD Bluetooth + After=bluetooth.service bluetooth.target + + [Service] + Type=simple + ExecStartPre=/usr/sbin/rfkill unblock all + ExecStart=/usr/bin/sprd-bluetooth + TimeoutSec=0 + RemainAfterExit=true + + [Install] + WantedBy=multi-user.target + EOT + cp -f "$SRC/packages/bsp/sunxi/aw859a-wifi.service" "${destination}"/etc/systemd/system/ + mkdir -p "${destination}"/etc/modules-load.d + # Add needed wireless modules + cat > "${destination}"/etc/modules-load.d/uwe5622-wireless.conf <<- EOT + hci_uart + bnep + rfcomm + sprdbt_tty + EOT + fi +} + +# Enable UWE5622 Wireless Services +function post_family_tweaks__enable_uwe5622_wireless_services() { + display_alert "$BOARD" "Enabling UWE5622 Wireless Services" "info" + chroot_sdcard systemctl --no-reload enable sprd-bluetooth.service + chroot_sdcard systemctl --no-reload enable aw859a-wifi.service +} function post_family_config__opi3lts_set_asoundstate_file() { declare -g ASOUND_STATE='asound.state.sun50iw6-current'