Support linux6.1 for opi5/5b/5plus

This commit is contained in:
baiywt 2024-01-16 16:03:47 +08:00
parent afe4ff8335
commit 55155f1d73
13 changed files with 8745 additions and 41 deletions

View File

@ -3,7 +3,7 @@ BOARD_NAME="Orange Pi 5"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="orangepi_5_defconfig"
#BOOTCONFIG="orangepi_5_sata_defconfig"
KERNEL_TARGET="legacy"
KERNEL_TARGET="legacy,current"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588s-orangepi-5.dtb"
BOOT_SCENARIO="spl-blobs"
@ -11,5 +11,6 @@ IMAGE_PARTITION_TABLE="gpt"
BOOT_SUPPORT_SPI="yes"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
DISTRIB_TYPE_LEGACY="bullseye bookworm bionic focal jammy"
DISTRIB_TYPE_CURRENT="bullseye bookworm focal jammy"
BOOTFS_TYPE="fat"
REVISION="1.1.8"

View File

@ -2,7 +2,7 @@
BOARD_NAME="Orange Pi 5B"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="orangepi_5b_defconfig"
KERNEL_TARGET="legacy"
KERNEL_TARGET="legacy,current"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588s-orangepi-5b.dtb"
BOOT_SCENARIO="spl-blobs"
@ -10,5 +10,6 @@ IMAGE_PARTITION_TABLE="gpt"
BOOT_SUPPORT_SPI="yes"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
DISTRIB_TYPE_LEGACY="bullseye bookworm bionic focal jammy"
DISTRIB_TYPE_CURRENT="bullseye bookworm focal jammy"
BOOTFS_TYPE="fat"
REVISION="1.0.8"

View File

@ -2,7 +2,7 @@
BOARD_NAME="Orange Pi 5 Plus"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="orangepi_5_plus_defconfig"
KERNEL_TARGET="legacy"
KERNEL_TARGET="legacy,current"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588-orangepi-5-plus.dtb"
BOOT_SCENARIO="spl-blobs"
@ -10,5 +10,6 @@ IMAGE_PARTITION_TABLE="gpt"
BOOT_SUPPORT_SPI="yes"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
DISTRIB_TYPE_LEGACY="bullseye bookworm bionic focal jammy"
DISTRIB_TYPE_CURRENT="bullseye bookworm focal jammy"
BOOTFS_TYPE="fat"
REVISION="1.0.8"

File diff suppressed because it is too large Load Diff

View File

@ -1,14 +1,37 @@
rk35xx_gpu_vpu_tweaks()
{
if [[ ${SELECTED_CONFIGURATION} == desktop && ${DESKTOP_ENVIRONMENT} != gnome ]]; then
local package packages_dir packages_to_install packages_common_to_install
debs_dir="$EXTER/cache/sources/rk35xx_packages"
if [[ $RELEASE =~ raspi|bookworm|bullseye|jammy|focal && ${SELECTED_CONFIGURATION} == desktop ]]; then
debs_common_list+=("rga2" "mpp" "rktoolkit")
debs_list+=("gstreamer" "gst-plugins-base1.0" "gst-plugins-good1.0" "gst-plugins-bad1.0" "gst-plugins-ugly1.0" "gstreamer-rockchip")
debs_list+=("xserver" "glmark2" "libdrm" "libdrm-cursor")
debs_list+=("libv4l" "libv4l-rkmpp" "chromium")
debs_list+=("ffmpeg" "cheese" "mpv" "gst-rkmpp")
packages_dir="$EXTER/cache/sources/rk35xx_packages"
if [[ $RELEASE == bookworm ]]; then
packages_to_install=("rga2" "mpp" "rktoolkit")
packages_to_install+=("gstreamer" "gst-plugins-base1.0" "gst-plugins-good1.0")
packages_to_install+=("gst-plugins-bad1.0" "gst-plugins-ugly1.0" "gstreamer-rockchip")
packages_to_install+=("xserver" "glmark2" "libdrm" "libdrm-cursor" "libv4l" "libv4l-rkmpp")
packages_to_install+=("chromium" "ffmpeg" "cheese" "mpv" "gst-rkmpp")
elif [[ $RELEASE == jammy && ${DESKTOP_ENVIRONMENT} == gnome ]]; then
packages_common_to_install=("rga2" "mpp" "rktoolkit")
packages_to_install=("gstreamer" "gst-plugins-base1.0" "gst-plugins-good1.0")
packages_to_install+=("gst-plugins-bad1.0" "gstreamer-rockchip")
packages_to_install+=("libv4l_gnome" "chromium" "chromium_gnome" "mesa")
packages_to_install+=("ffmpeg" "mpv" "mpv_wayland" "kodi" "gst-rkmpp")
[[ -f $SDCARD/etc/profile.d/x11.sh ]] && rm $SDCARD/etc/profile.d/x11.sh
echo "PAN_MESA_DEBUG=gofaster" >> $SDCARD/etc/environment
else
packages_common_to_install=("rga2" "mpp" "rktoolkit")
packages_to_install=("gstreamer" "gst-plugins-base1.0" "gst-plugins-good1.0")
packages_to_install+=("gst-plugins-bad1.0" "gst-plugins-ugly1.0" "gstreamer-rockchip")
packages_to_install+=("xserver" "glmark2" "libdrm" "libdrm-cursor" "libv4l" "libv4l-rkmpp")
packages_to_install+=("chromium" "ffmpeg" "cheese" "mpv" "gst-rkmpp")
fi
chroot $SDCARD /bin/bash -c "rm -rf /etc/mpv/mpv.conf"
chroot $SDCARD /bin/bash -c "apt-get update" >> "${DEST}"/${LOG_SUBPATH}/install.log 2>&1
@ -17,39 +40,49 @@ rk35xx_gpu_vpu_tweaks()
[[ "$BOARDFAMILY" == "rk3399" ]] && chroot $SDCARD /bin/bash -c "apt install -y libqt5quick5" \
>> "${DEST}"/${LOG_SUBPATH}/install.log 2>&1
for dir in ${debs_common_list[@]}; do
dir=$(find "${debs_dir}/common" -type d -name ${dir})
[[ -n ${dir} ]] && dpkg_install_debs_chroot "${dir}"
for package in ${packages_common_to_install[@]}; do
local package_dir="${packages_dir}/common/${package}"
[[ -d "${package_dir}" ]] && dpkg_install_debs_chroot "${package_dir}"
done
for dir in ${debs_list[@]}; do
for package in ${packages_to_install[@]}; do
local package_dir
if [[ ${RELEASE} == raspi ]]; then
[[ ${dir} == "libdrm" ]] && continue
dir=$(find "${debs_dir}/bullseye" -type d -name ${dir})
[[ ${package} == "libdrm" ]] && continue
package_dir="${packages_dir}/bullseye/${package}"
else
dir=$(find "${debs_dir}/${RELEASE}" -type d -name ${dir})
package_dir="${packages_dir}/${RELEASE}/${package}"
fi
[[ -n ${dir} ]] && dpkg_install_debs_chroot "${dir}"
[[ -d "${package_dir}" ]] && dpkg_install_debs_chroot "${package_dir}"
done
if [[ $BOARDFAMILY == "rockchip-rk3588" ]]; then
dpkg_install_deb_chroot "${debs_dir}/common/libmali/libmali-valhall-g610-g13p0-x11-gbm_1.9-1_arm64.deb"
dpkg_install_deb_chroot "${debs_dir}/common/rkaiq/camera_engine_rkaiq_rk3588_arm64.deb"
if [[ $BRANCH == "current" ]]; then
[[ $DESKTOP_ENVIRONMENT != gnome ]] && dpkg_install_deb_chroot \
"${packages_dir}/common/libmali_linux6.1/libmali-valhall-g610-g13p0-x11-gbm_1.9-1_arm64.deb"
dpkg_install_deb_chroot "${packages_dir}/bookworm/rkaiq/camera_engine_rkaiq_rk3588_arm64.deb"
else
[[ $DESKTOP_ENVIRONMENT != gnome ]] && dpkg_install_deb_chroot \
"${packages_dir}/common/libmali/libmali-valhall-g610-g13p0-x11-gbm_1.9-1_arm64.deb"
dpkg_install_deb_chroot "${packages_dir}/common/rkaiq/camera_engine_rkaiq_rk3588_arm64.deb"
fi
elif [[ $BOARDFAMILY == "rockchip-rk356x" ]]; then
dpkg_install_deb_chroot "${debs_dir}/common/libmali/libmali-bifrost-g52-g13p0-x11-gbm_1.9-1_arm64.deb"
dpkg_install_deb_chroot "${debs_dir}/common/rkaiq/camera_engine_rkaiq_rk3568_arm64.deb"
dpkg_install_deb_chroot "${packages_dir}/common/libmali/libmali-bifrost-g52-g13p0-x11-gbm_1.9-1_arm64.deb"
dpkg_install_deb_chroot "${packages_dir}/common/rkaiq/camera_engine_rkaiq_rk3568_arm64.deb"
elif [[ $BOARDFAMILY == "rk3399" ]]; then
dpkg_install_deb_chroot "${debs_dir}/common/libmali/libmali-midgard-t86x-r18p0-x11-gbm_1.9-1_arm64.deb"
dpkg_install_deb_chroot "${debs_dir}/common/rkisp/camera_engine_rkisp_v2.3.0_arm64.deb"
dpkg_install_deb_chroot "${packages_dir}/common/libmali/libmali-midgard-t86x-r18p0-x11-gbm_1.9-1_arm64.deb"
dpkg_install_deb_chroot "${packages_dir}/common/rkisp/camera_engine_rkisp_v2.3.0_arm64.deb"
fi
cp ${EXTER}/packages/bsp/rk3588/etc/mpv/mpv.conf $SDCARD/etc/mpv/
# The chromium using fixed pathes for libv4l2.so
chroot $SDCARD /bin/bash -c "ln -rsf /usr/lib/*/libv4l2.so /usr/lib/"
chroot $SDCARD /bin/bash -c "[ -e /usr/lib/aarch64-linux-gnu/ ] && ln -Tsf lib /usr/lib64"
chroot $SDCARD /bin/bash -c "cd /usr/lib/aarch64-linux-gnu/dri/;cp kms_swrast_dri.so swrast_dri.so rockchip_dri.so /"
chroot $SDCARD /bin/bash -c "rm /usr/lib/aarch64-linux-gnu/dri/*.so;mv /*.so /usr/lib/aarch64-linux-gnu/dri/"
if [[ $DESKTOP_ENVIRONMENT != gnome ]]; then
# The chromium using fixed pathes for libv4l2.so
chroot $SDCARD /bin/bash -c "ln -rsf /usr/lib/*/libv4l2.so /usr/lib/"
chroot $SDCARD /bin/bash -c "[ -e /usr/lib/aarch64-linux-gnu/ ] && ln -Tsf lib /usr/lib64"
chroot $SDCARD /bin/bash -c "cd /usr/lib/aarch64-linux-gnu/dri/;cp kms_swrast_dri.so swrast_dri.so rockchip_dri.so /"
chroot $SDCARD /bin/bash -c "rm /usr/lib/aarch64-linux-gnu/dri/*.so;mv /*.so /usr/lib/aarch64-linux-gnu/dri/"
fi
apply_common_operations() {
chroot $SDCARD /bin/bash -c "chmod o+x /usr/lib/dbus-1.0/dbus-daemon-launch-helper"
@ -58,16 +91,12 @@ rk35xx_gpu_vpu_tweaks()
if [[ ${RELEASE} == focal ]]; then
apply_common_operations
cp $debs_dir/$RELEASE/chromium/libjpeg.so.62 $SDCARD/usr/lib/aarch64-linux-gnu/
cp $packages_dir/$RELEASE/chromium/libjpeg.so.62 $SDCARD/usr/lib/aarch64-linux-gnu/
fi
if [[ ${RELEASE} == jammy ]]; then
apply_common_operations
cp $debs_dir/$RELEASE/chromium/default $SDCARD/etc/chromium-browser/
fi
if [[ ${RELEASE} == bookworm ]]; then
cp $debs_dir/$RELEASE/chromium/default $SDCARD/etc/chromium-browser/
[[ DESKTOP_ENVIRONMENT != gnome ]] && apply_common_operations
cp $packages_dir/$RELEASE/chromium/default $SDCARD/etc/chromium-browser/
fi
if [[ ${RELEASE} == bullseye ]]; then

View File

@ -11,7 +11,7 @@ BOOTENV_FILE='rockchip.txt'
UBOOT_TARGET_MAP=";;idbloader.bin uboot.img trust.bin"
BOOTDELAY=0
OVERLAY_PREFIX='rockchip'
SERIALCON=${SERIALCON:=$([ $BRANCH == "legacy" ] && echo "ttyFIQ0:1500000" || echo "ttyS2:1500000")}
SERIALCON=${SERIALCON:=$([[ $BRANCH == "legacy" || $BOARDFAMILY == "rockchip-rk3588" && $BRANCH == "current" ]] && echo "ttyFIQ0:1500000" || echo "ttyS2:1500000")}
GOVERNOR="ondemand"
BOOTBRANCH="branch:v2020.10-rockchip64"
PACKAGE_LIST_FAMILY="ethtool can-utils"
@ -61,8 +61,8 @@ if [[ $BOARD =~ orangepir1plus|orangepir1plus-lts ]]; then
elif [[ $BOARDFAMILY == "rockchip-rk3588" ]]; then
BOOT_SCENARIO="${BOOT_SCENARIO:=spl-blobs}"
DDR_BLOB="${DDR_BLOB:=rk35/rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.13.bin}"
BL31_BLOB='rk35/rk3588_bl31_v1.42.elf'
DDR_BLOB="${DDR_BLOB:=rk35/rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.15.bin}"
BL31_BLOB='rk35/rk3588_bl31_v1.44.elf'
elif [[ $BOARD =~ orangepicm4|orangepi3b ]]; then
@ -267,7 +267,7 @@ family_tweaks()
[[ "$BRANCH" =~ legacy ]] && rk3399_gpu_vpu_tweaks
[[ "$BRANCH" =~ current && $BOARDFAMILY == "rk3399" ]] && rk35xx_gpu_vpu_tweaks
[[ "$BRANCH" =~ legacy && $BOARDFAMILY == "rockchip-rk3588" ]] && rk35xx_gpu_vpu_tweaks
[[ "$BRANCH" =~ legacy|current && $BOARDFAMILY == "rockchip-rk3588" ]] && rk35xx_gpu_vpu_tweaks
[[ "$BRANCH" == legacy && $BOARDFAMILY == "rockchip-rk356x" ]] && rk35xx_gpu_vpu_tweaks
#if [[ ${BOARD} == orangepi800 && ${SELECTED_CONFIGURATION} == desktop && ${RELEASE} =~ bullseye|bookworm ]]; then

View File

@ -28,7 +28,17 @@ case $BRANCH in
KERNEL_USE_GCC='> 10.0'
;;
current)
BOOTBRANCH='branch:v2017.09-rk3588'
UBOOT_COMPILER="aarch64-linux-gnu-"
UBOOT_USE_GCC='< 8.0'
KERNELBRANCH='branch:orange-pi-6.1-rk35xx'
KERNELPATCHDIR='rockchip-rk3588-current'
LINUXCONFIG="linux-rockchip-rk3588-current"
KERNEL_USE_GCC='> 10.0'
esac
prepare_boot_configuration

View File

@ -111,6 +111,9 @@ prepare_board() {
tinymix -D ${es8388_card} 25 0
tinymix -D ${es8388_card} 27 0
fi
elif [[ $BOARD =~ orangepi5plus ]]; then
amixer -c ${es8388_card} cset name='PCM Volume' 190 >/dev/null 2>&1
amixer -c ${es8388_card} cset name='Right Mixer Right Playback Switch' off >/dev/null 2>&1
fi
if [[ -c /dev/mpp_service ]]; then

View File

@ -16,5 +16,13 @@ KERNEL=="rga", MODE="0660", GROUP="video"
# MALI devices (/dev/mali for mali400)
KERNEL=="mali*", MODE="0660", GROUP="video"
# DMA heap devices
KERNEL=="cma", MODE="0660", GROUP="video"
KERNEL=="cma-uncached", MODE="0660", GROUP="video"
KERNEL=="system", MODE="0660", GROUP="video"
KERNEL=="system-dma32", MODE="0660", GROUP="video"
KERNEL=="system-uncached", MODE="0660", GROUP="video"
KERNEL=="system-uncached-dma32", MODE="0660", GROUP="video"
LABEL="permissions_end"

View File

@ -16,5 +16,13 @@ KERNEL=="rga", MODE="0660", GROUP="video"
# MALI devices (/dev/mali for mali400)
KERNEL=="mali*", MODE="0660", GROUP="video"
# DMA heap devices
KERNEL=="cma", MODE="0660", GROUP="video"
KERNEL=="cma-uncached", MODE="0660", GROUP="video"
KERNEL=="system", MODE="0660", GROUP="video"
KERNEL=="system-dma32", MODE="0660", GROUP="video"
KERNEL=="system-uncached", MODE="0660", GROUP="video"
KERNEL=="system-uncached-dma32", MODE="0660", GROUP="video"
LABEL="permissions_end"

View File

@ -33,6 +33,7 @@ prepare_board() {
fi
;;
orangepicm4|orangepi3b)
echo host > /sys/devices/platform/fe8a0000.usb2-phy/otg_mode
if [[ -c /dev/mpp_service ]]; then
chmod 666 /dev/mpp_service

View File

@ -253,7 +253,7 @@ dpkg_install_debs_chroot()
[ ! -d "$deb_dir" ] && return
deb_packages=($(find "${deb_dir}" -type f -name "*.deb"))
deb_packages=($(find "${deb_dir}/" -mindepth 1 -maxdepth 1 -type f -name "*.deb"))
find_in_array() {
local target="$1"

View File

@ -501,6 +501,12 @@ if [[ ${IGNORE_UPDATES} != yes ]]; then
After sources are fetched, build host-side tools needed for the build.
BUILD_HOST_TOOLS
if [[ ${BOARDFAMILY} == "rockchip-rk3588" ]]; then
local rkbin_url="https://github.com/orangepi-xunlong/rk-rootfs-build/raw/rkbin/rk35"
wget -qnc -P ${EXTER}/cache/sources/rkbin-tools/rk35/ ${rkbin_url}/rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.15.bin
wget -qnc -P ${EXTER}/cache/sources/rkbin-tools/rk35/ ${rkbin_url}/rk3588_bl31_v1.44.elf
fi
fi
for option in $(tr ',' ' ' <<< "$CLEAN_LEVEL"); do