Update for Orange Pi CM5

This commit is contained in:
orangepi-xunlong 2024-04-02 19:15:38 +08:00
parent 94d50c2386
commit cf11d6e48e
11 changed files with 8680 additions and 15 deletions

Binary file not shown.

View File

@ -0,0 +1,14 @@
# Rockchip RK3588s SoC
BOARD_NAME="Orange Pi CM5 Tablet"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="orangepi_cm5_tablet_defconfig"
KERNEL_TARGET="legacy"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588s-orangepi-cm5-tablet.dtb"
BOOT_SCENARIO="spl-blobs"
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 focal jammy"
BOOTFS_TYPE="fat"
REVISION="1.0.0"

View File

@ -9,6 +9,6 @@ BOOT_SCENARIO="spl-blobs"
IMAGE_PARTITION_TABLE="gpt" IMAGE_PARTITION_TABLE="gpt"
BOOT_SUPPORT_SPI="yes" BOOT_SUPPORT_SPI="yes"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
DISTRIB_TYPE_LEGACY="bullseye bookworm bionic focal jammy" DISTRIB_TYPE_LEGACY="bullseye bookworm focal jammy"
BOOTFS_TYPE="fat" BOOTFS_TYPE="fat"
REVISION="1.0.0" REVISION="1.0.0"

View File

@ -5679,7 +5679,7 @@ CONFIG_SND_SOC_TS3A227E=y
# CONFIG_SND_SOC_NAU8822 is not set # CONFIG_SND_SOC_NAU8822 is not set
# CONFIG_SND_SOC_NAU8824 is not set # CONFIG_SND_SOC_NAU8824 is not set
# CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TPA6130A2 is not set
CONFIG_SND_SOC_AW87XXX=y # CONFIG_SND_SOC_AW87XXX is not set
# CONFIG_SND_SOC_AW883XX is not set # CONFIG_SND_SOC_AW883XX is not set
# end of CODEC drivers # end of CODEC drivers

View File

@ -2,10 +2,10 @@
# Automatically generated file; DO NOT EDIT. # Automatically generated file; DO NOT EDIT.
# Linux/arm64 5.10.160 Kernel Configuration # Linux/arm64 5.10.160 Kernel Configuration
# #
CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0" CONFIG_CC_VERSION_TEXT="aarch64-none-linux-gnu-gcc (GNU Toolchain for the Arm Architecture 11.2-2022.02 (arm-11.14)) 11.2.1 20220111"
CONFIG_CC_IS_GCC=y CONFIG_CC_IS_GCC=y
CONFIG_GCC_VERSION=110400 CONFIG_GCC_VERSION=110201
CONFIG_LD_VERSION=238000000 CONFIG_LD_VERSION=202438220000
CONFIG_CLANG_VERSION=0 CONFIG_CLANG_VERSION=0
CONFIG_LLD_VERSION=0 CONFIG_LLD_VERSION=0
CONFIG_CC_CAN_LINK=y CONFIG_CC_CAN_LINK=y
@ -758,6 +758,10 @@ CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
# end of GCOV-based kernel profiling # end of GCOV-based kernel profiling
CONFIG_HAVE_GCC_PLUGINS=y CONFIG_HAVE_GCC_PLUGINS=y
CONFIG_GCC_PLUGINS=y
# CONFIG_GCC_PLUGIN_CYC_COMPLEXITY is not set
# CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set
# CONFIG_GCC_PLUGIN_RANDSTRUCT is not set
# end of General architecture-dependent options # end of General architecture-dependent options
CONFIG_RT_MUTEXES=y CONFIG_RT_MUTEXES=y
@ -4680,7 +4684,7 @@ CONFIG_VIDEO_OV4689=y
# CONFIG_VIDEO_OV50C40 is not set # CONFIG_VIDEO_OV50C40 is not set
# CONFIG_VIDEO_OV5640 is not set # CONFIG_VIDEO_OV5640 is not set
# CONFIG_VIDEO_OV5645 is not set # CONFIG_VIDEO_OV5645 is not set
# CONFIG_VIDEO_OV5647 is not set CONFIG_VIDEO_OV5647=y
# CONFIG_VIDEO_OV6650 is not set # CONFIG_VIDEO_OV6650 is not set
# CONFIG_VIDEO_OV5670 is not set # CONFIG_VIDEO_OV5670 is not set
# CONFIG_VIDEO_OV5675 is not set # CONFIG_VIDEO_OV5675 is not set
@ -5707,7 +5711,7 @@ CONFIG_SND_SOC_TS3A227E=y
# CONFIG_SND_SOC_NAU8822 is not set # CONFIG_SND_SOC_NAU8822 is not set
# CONFIG_SND_SOC_NAU8824 is not set # CONFIG_SND_SOC_NAU8824 is not set
# CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TPA6130A2 is not set
CONFIG_SND_SOC_AW87XXX=y # CONFIG_SND_SOC_AW87XXX is not set
# CONFIG_SND_SOC_AW883XX is not set # CONFIG_SND_SOC_AW883XX is not set
# end of CODEC drivers # end of CODEC drivers
@ -7958,6 +7962,10 @@ CONFIG_LSM="lockdown,yama,loadpin,safesetid,integrity,bpf"
# Memory initialization # Memory initialization
# #
CONFIG_INIT_STACK_NONE=y CONFIG_INIT_STACK_NONE=y
# CONFIG_GCC_PLUGIN_STRUCTLEAK_USER is not set
# CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF is not set
# CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL is not set
# CONFIG_GCC_PLUGIN_STACKLEAK is not set
# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set # CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set # CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
# end of Memory initialization # end of Memory initialization

File diff suppressed because it is too large Load Diff

View File

@ -5629,7 +5629,7 @@ CONFIG_SND_SOC_TS3A227E=y
# CONFIG_SND_SOC_NAU8822 is not set # CONFIG_SND_SOC_NAU8822 is not set
# CONFIG_SND_SOC_NAU8824 is not set # CONFIG_SND_SOC_NAU8824 is not set
# CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TPA6130A2 is not set
CONFIG_SND_SOC_AW87XXX=y # CONFIG_SND_SOC_AW87XXX is not set
# CONFIG_SND_SOC_AW883XX is not set # CONFIG_SND_SOC_AW883XX is not set
# end of CODEC drivers # end of CODEC drivers

View File

@ -5679,7 +5679,7 @@ CONFIG_SND_SOC_TS3A227E=y
# CONFIG_SND_SOC_NAU8822 is not set # CONFIG_SND_SOC_NAU8822 is not set
# CONFIG_SND_SOC_NAU8824 is not set # CONFIG_SND_SOC_NAU8824 is not set
# CONFIG_SND_SOC_TPA6130A2 is not set # CONFIG_SND_SOC_TPA6130A2 is not set
CONFIG_SND_SOC_AW87XXX=y # CONFIG_SND_SOC_AW87XXX is not set
# CONFIG_SND_SOC_AW883XX is not set # CONFIG_SND_SOC_AW883XX is not set
# end of CODEC drivers # end of CODEC drivers

View File

@ -19,6 +19,7 @@ case $BRANCH in
LINUXCONFIG="linux-rockchip-rk3588-legacy" LINUXCONFIG="linux-rockchip-rk3588-legacy"
[[ ${BOARD} == orangepi5pro ]] && LINUXCONFIG="linux-rockchip-rk3588-legacy-opi5pro" [[ ${BOARD} == orangepi5pro ]] && LINUXCONFIG="linux-rockchip-rk3588-legacy-opi5pro"
[[ ${BOARD} == orangepi5max ]] && LINUXCONFIG="linux-rockchip-rk3588-legacy-opi5max" [[ ${BOARD} == orangepi5max ]] && LINUXCONFIG="linux-rockchip-rk3588-legacy-opi5max"
[[ ${BOARD} == orangepicm5-tablet ]] && LINUXCONFIG="linux-rockchip-rk3588-legacy-opicm5-tablet"
if [[ "${build_rt_image}" =~ yes ]]; then if [[ "${build_rt_image}" =~ yes ]]; then
KERNELBRANCH='branch:orange-pi-5.10-rk35xx-rt' KERNELBRANCH='branch:orange-pi-5.10-rk35xx-rt'
@ -110,7 +111,7 @@ family_tweaks_s() {
rsync -a --chown=root:root "${EXTER}"/packages/bsp/rk3588/* ${SDCARD}/ rsync -a --chown=root:root "${EXTER}"/packages/bsp/rk3588/* ${SDCARD}/
fi fi
if [[ ${BOARD} =~ orangepi5plus|orangepi5pro|orangepi900 ]]; then if [[ ${BOARD} =~ orangepi5plus|orangepi5max|orangepi900 ]]; then
if [[ ${SELECTED_CONFIGURATION} == desktop && ${DESKTOP_ENVIRONMENT} == kde-plasma ]]; then if [[ ${SELECTED_CONFIGURATION} == desktop && ${DESKTOP_ENVIRONMENT} == kde-plasma ]]; then
rsync -a --chown=root:root --exclude=etc/pulse "${EXTER}"/packages/bsp/orangepi5plus/* ${SDCARD}/ rsync -a --chown=root:root --exclude=etc/pulse "${EXTER}"/packages/bsp/orangepi5plus/* ${SDCARD}/
@ -146,13 +147,18 @@ family_tweaks_s() {
install_balenaEtcher install_balenaEtcher
# Board audio specific changes # Board audio specific changes
if [[ ${BOARD} =~ orangepi5|orangepi5b ]]; then if [[ ${BOARD}x =~ orangepi5x|orangepi5bx|orangepicm5-tabletx ]]; then
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8388-sound", ENV{SOUND_DESCRIPTION}="ES8388 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8388-sound", ENV{SOUND_DESCRIPTION}="ES8388 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
elif [[ "${BOARD}" =~ orangepi5plus|orangepi900 ]]; then elif [[ ${BOARD}x =~ orangepicm5x ]]; then
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
elif [[ "${BOARD}x" =~ orangepi5plusx|orangepi900x ]]; then
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi1-sound", ENV{SOUND_DESCRIPTION}="HDMI1 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi1-sound", ENV{SOUND_DESCRIPTION}="HDMI1 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
@ -160,7 +166,7 @@ family_tweaks_s() {
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8388-sound", ENV{SOUND_DESCRIPTION}="ES8388 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8388-sound", ENV{SOUND_DESCRIPTION}="ES8388 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
elif [[ "${BOARD}" == orangepi5pro ]]; then elif [[ "${BOARD}x" == orangepi5prox ]]; then
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi1-sound", ENV{SOUND_DESCRIPTION}="HDMI1 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi1-sound", ENV{SOUND_DESCRIPTION}="HDMI1 Audio"' >> ${SDCARD}/etc/udev/rules.d/90-naming-audios.rules

View File

@ -97,9 +97,27 @@ prepare_board() {
rockpro64|renegade-elite|pinebook-pro|station-p1) rockpro64|renegade-elite|pinebook-pro|station-p1)
BOARDFAMILY=rk3399 BOARDFAMILY=rk3399
;; ;;
orangepi5|orangepicm5|orangepi5b|orangepi5plus|orangepi5pro|orangepi5max|orangepitab|orangepi900) orangepi5|orangepicm5|orangepicm5-tablet|orangepi5b|orangepi5plus|orangepi5pro|orangepi5max|orangepitab|orangepi900)
[[ $BOARD =~ orangepi5|orangepi5b ]] && echo host > /sys/kernel/debug/usb/fc000000.usb/mode [[ $BOARD =~ orangepi5|orangepi5b ]] && echo host > /sys/kernel/debug/usb/fc000000.usb/mode
if [[ ${BOARD}x == orangepicm5x ]]; then
declare -A led_map=(
["lan2"]="end|eth"
["lan1"]="enP3"
["wan"]="enP4"
)
for led in "${!led_map[@]}"; do
interface=$(ls /sys/class/net/ | grep -E "${led_map[$led]}" | sed -n 1p)
echo netdev > "/sys/class/leds/$led/trigger"
echo "$interface" > "/sys/class/leds/$led/device_name"
echo 1 > "/sys/class/leds/$led/tx"
echo 1 > "/sys/class/leds/$led/rx"
echo 1 > "/sys/class/leds/$led/link"
done
fi
if [[ $BOARD =~ orangepi900 ]]; then if [[ $BOARD =~ orangepi900 ]]; then
es8388_card=$(aplay -l | grep "es8388" | cut -d ':' -f 1 | cut -d ' ' -f 2) es8388_card=$(aplay -l | grep "es8388" | cut -d ':' -f 1 | cut -d ' ' -f 2)
jack_num=$(tinymix -D ${es8388_card} | grep "Headphone Jack" | cut -c1-2) jack_num=$(tinymix -D ${es8388_card} | grep "Headphone Jack" | cut -c1-2)
@ -149,7 +167,7 @@ prepare_board() {
--baudrate 1500000 --patchram /lib/firmware/ap6275p/BCM4362A2.hcd /dev/ttyS9 & --baudrate 1500000 --patchram /lib/firmware/ap6275p/BCM4362A2.hcd /dev/ttyS9 &
fi fi
if [[ $BOARD =~ orangepi5pro ]]; then if [[ $BOARD =~ orangepi5pro|orangepicm5-tablet ]]; then
es8388_card=$(aplay -l | grep "es8388" | cut -d ':' -f 1 | cut -d ' ' -f 2) es8388_card=$(aplay -l | grep "es8388" | cut -d ':' -f 1 | cut -d ' ' -f 2)
tinymix -D ${es8388_card} 37 1 tinymix -D ${es8388_card} 37 1

View File

@ -235,6 +235,7 @@ if [[ -z $BOARD ]]; then
options+=("orangepi800" "Rockchip RK3399 hexa core 4GB RAM GBE eMMC USB3 USB-C WiFi/BT VGA") options+=("orangepi800" "Rockchip RK3399 hexa core 4GB RAM GBE eMMC USB3 USB-C WiFi/BT VGA")
options+=("orangepi5" "Rockchip RK3588S octa core 4-16GB RAM GBE USB3 USB-C NVMe") options+=("orangepi5" "Rockchip RK3588S octa core 4-16GB RAM GBE USB3 USB-C NVMe")
options+=("orangepicm5" "Rockchip RK3588S octa core 4-16GB RAM GBE USB3 USB-C") options+=("orangepicm5" "Rockchip RK3588S octa core 4-16GB RAM GBE USB3 USB-C")
options+=("orangepicm5-tablet" "Rockchip RK3588S octa core 4-16GB RAM USB3 USB-C WiFi/BT")
options+=("orangepi5b" "Rockchip RK3588S octa core 4-16GB RAM GBE USB3 USB-C WiFi/BT eMMC") options+=("orangepi5b" "Rockchip RK3588S octa core 4-16GB RAM GBE USB3 USB-C WiFi/BT eMMC")
#options+=("orangepitab" "Rockchip RK3588S octa core 4-16GB RAM USB-C WiFi/BT NVMe") #options+=("orangepitab" "Rockchip RK3588S octa core 4-16GB RAM USB-C WiFi/BT NVMe")
#options+=("orangepi900" "Rockchip RK3588 octa core 4-16GB RAM 2.5GBE USB3 USB-C WiFi/BT NVMe") #options+=("orangepi900" "Rockchip RK3588 octa core 4-16GB RAM 2.5GBE USB3 USB-C WiFi/BT NVMe")