Merge pull request #5192 from knaerzche/rk-cleanup

Rockchip: cleanup / fixup / update
This commit is contained in:
CvH 2021-02-28 17:50:40 +01:00 committed by GitHub
commit 73c0ce662b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 379 additions and 142 deletions

View File

@ -1,36 +0,0 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="gcc-arm-arm-none-linux-gnueabihf"
PKG_VERSION="10.2-2020.11"
PKG_SHA256="102825ae56c9e00142d06f35d2bdd3299edb6060e84a275a25b095e66fd3fc2a"
PKG_LICENSE="GPL"
PKG_SITE="https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a"
PKG_URL="https://developer.arm.com/-/media/Files/downloads/gnu-a/${PKG_VERSION}/binrel/gcc-arm-${PKG_VERSION}-x86_64-arm-none-linux-gnueabihf.tar.xz"
PKG_DEPENDS_HOST="ccache:host"
PKG_LONGDESC="ARM AArch32 GNU Linux Binary Toolchain"
PKG_TOOLCHAIN="manual"
makeinstall_host() {
mkdir -p ${TOOLCHAIN}/lib/gcc-arm-arm-none-linux-gnueabihf/
cp -a * ${TOOLCHAIN}/lib/gcc-arm-arm-none-linux-gnueabihf
# wrap gcc and g++ with ccache like in gcc package.mk
PKG_GCC_PREFIX="${TOOLCHAIN}/lib/gcc-arm-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-"
cp "${PKG_GCC_PREFIX}gcc" "${PKG_GCC_PREFIX}gcc.real"
cat > "${PKG_GCC_PREFIX}gcc" << EOF
#!/bin/sh
${TOOLCHAIN}/bin/ccache ${PKG_GCC_PREFIX}gcc.real "\$@"
EOF
chmod +x "${PKG_GCC_PREFIX}gcc"
cp "${PKG_GCC_PREFIX}g++" "${PKG_GCC_PREFIX}g++.real"
cat > "${PKG_GCC_PREFIX}g++" << EOF
#!/bin/sh
${TOOLCHAIN}/bin/ccache ${PKG_GCC_PREFIX}g++.real "\$@"
EOF
chmod +x "${PKG_GCC_PREFIX}g++"
}

View File

@ -9,16 +9,21 @@ This project is for Rockchip SoC devices
* [mqmaker MiQi](devices/RK3288) * [mqmaker MiQi](devices/RK3288)
**RK3328** **RK3328**
* [Beelink A1 TV BOX](devices/RK3328)
* [PINE64 ROCK64](devices/RK3328) * [PINE64 ROCK64](devices/RK3328)
* [Popcorn Hour RockBox](devices/RK3328)
* [Popcorn Hour Transformer](devices/RK3328) * [Popcorn Hour Transformer](devices/RK3328)
* [Firefly ROC-RK3328-CC](devices/RK3328) * [Firefly ROC-RK3328-CC](devices/RK3328)
**RK3399** **RK3399**
* [96rocks ROCK960](devices/RK3399) * [96rocks ROCK960](devices/RK3399)
* [Hugsun X99 TV BOX](devices/RK3399)
* [Khadas Edge](devices/RK3399) * [Khadas Edge](devices/RK3399)
* [FriendlyARM NanoPC-T4](devices/RK3399)
* [FriendlyARM NanoPi M4](devices/RK3399)
* [Orange Pi RK3399](devices/RK3399)
* [PINE64 RockPro64](devices/RK3399) * [PINE64 RockPro64](devices/RK3399)
* [Radxa ROCK Pi 4](devices/RK3399) * [Radxa ROCK Pi 4](devices/RK3399)
* [ROC-RK3399-PC](devices/RK3399)
* [Rockchip Sapphire Board](devices/RK3399) * [Rockchip Sapphire Board](devices/RK3399)
**My single-board computer is not listed, will it be added in the future?**<br /> **My single-board computer is not listed, will it be added in the future?**<br />
@ -29,7 +34,6 @@ You may have luck if your device vendor is open source friendly, otherwise keep
## Links ## Links
* https://github.com/rockchip-linux
* http://opensource.rock-chips.com * http://opensource.rock-chips.com
## Useful debug commands ## Useful debug commands

View File

@ -1,17 +1,15 @@
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) # Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
# detect legacy kernel installs and abort to prevent upgrades # devices have been renamed after LE9.2
case $(uname -r) in if [ "${1}" = "TinkerBoard.arm" -o "${1}" = "MiQi.arm" ]; then
4.4*) if [ "${2}" = "RK3288.arm" ]; then
echo "Updates from legacy kernels are not supported!" exit 0
sleep 10 fi
exit 1 fi
;;
esac
# Allow upgrades between arm and aarch64 # Allow upgrades between arm and aarch64
if [ "$1" = "@PROJECT@.arm" -o "$1" = "@PROJECT@.aarch64" ]; then if [ "${1}" = "@PROJECT@.arm" -o "${1}" = "@PROJECT@.aarch64" ]; then
exit 0 exit 0
else else
exit 1 exit 1

View File

@ -4,31 +4,31 @@
PKG_RKBIN="$(get_build_dir rkbin)" PKG_RKBIN="$(get_build_dir rkbin)"
PKG_SOC="${DEVICE/RK/rk}" PKG_SOC="${DEVICE/RK/rk}"
case "$PKG_SOC" in case "${PKG_SOC}" in
rk3036) rk3036)
PKG_DATAFILE="spl/u-boot-spl-nodtb.bin" PKG_DATAFILE="spl/u-boot-spl-nodtb.bin"
PKG_LOADER="u-boot-dtb.bin" PKG_LOADER="u-boot-dtb.bin"
;; ;;
rk3288) rk3288)
PKG_DATAFILE="$PKG_RKBIN/rk32/rk3288_ddr_400MHz_v1.08.bin" PKG_DATAFILE="${PKG_RKBIN}/rk32/rk3288_ddr_400MHz_v1.08.bin"
PKG_LOADER="$PKG_RKBIN/rk32/rk3288_miniloader_v2.58.bin" PKG_LOADER="${PKG_RKBIN}/rk32/rk3288_miniloader_v2.58.bin"
PKG_LOAD_ADDR="0x0" PKG_LOAD_ADDR="0x0"
;; ;;
rk3328) rk3328)
if [ "$UBOOT_SYSTEM" = "roc-cc" -o "$UBOOT_SYSTEM" = "box-trn9" ]; then if [ "${UBOOT_SYSTEM}" = "roc-cc" -o "${UBOOT_SYSTEM}" = "box-trn9" ]; then
PKG_DATAFILE="$PKG_RKBIN/rk33/rk3328_ddr_933MHz_v1.16.bin" PKG_DATAFILE="${PKG_RKBIN}/rk33/rk3328_ddr_933MHz_v1.16.bin"
else else
PKG_DATAFILE="$PKG_RKBIN/rk33/rk3328_ddr_786MHz_v1.16.bin" PKG_DATAFILE="${PKG_RKBIN}/rk33/rk3328_ddr_786MHz_v1.16.bin"
fi fi
PKG_LOADER="$PKG_RKBIN/rk33/rk3328_miniloader_v2.50.bin" PKG_LOADER="${PKG_RKBIN}/rk33/rk3328_miniloader_v2.50.bin"
PKG_BL31="$PKG_RKBIN/rk33/rk3328_bl31_v1.42.elf" PKG_BL31="${PKG_RKBIN}/rk33/rk3328_bl31_v1.42.elf"
PKG_BL31_ADDR="0x10000" PKG_BL31_ADDR="0x10000"
PKG_LOAD_ADDR="0x200000" PKG_LOAD_ADDR="0x200000"
;; ;;
rk3399) rk3399)
PKG_DATAFILE="$PKG_RKBIN/rk33/rk3399_ddr_800MHz_v1.17.bin" PKG_DATAFILE="${PKG_RKBIN}/rk33/rk3399_ddr_800MHz_v1.17.bin"
PKG_LOADER="$PKG_RKBIN/rk33/rk3399_miniloader_v1.24.bin" PKG_LOADER="${PKG_RKBIN}/rk33/rk3399_miniloader_v1.24.bin"
PKG_BL31="$PKG_RKBIN/rk33/rk3399_bl31_v1.31.elf" PKG_BL31="${PKG_RKBIN}/rk33/rk3399_bl31_v1.31.elf"
PKG_BL31_ADDR="0x40000" PKG_BL31_ADDR="0x40000"
PKG_LOAD_ADDR="0x200000" PKG_LOAD_ADDR="0x200000"
;; ;;
@ -38,25 +38,25 @@ case "$PKG_SOC" in
;; ;;
esac esac
if [ -n "$PKG_DATAFILE" -a -n "$PKG_LOADER" ]; then if [ -n "${PKG_DATAFILE}" -a -n "${PKG_LOADER}" ]; then
tools/mkimage -n $PKG_SOC -T rksd -d "$PKG_DATAFILE" idbloader.img tools/mkimage -n ${PKG_SOC} -T rksd -d "${PKG_DATAFILE}" idbloader.img
cat "$PKG_LOADER" >> idbloader.img cat "${PKG_LOADER}" >> idbloader.img
cp -av idbloader.img $INSTALL/usr/share/bootloader cp -av idbloader.img ${INSTALL}/usr/share/bootloader
fi fi
if [ -n "$PKG_LOAD_ADDR" ]; then if [ -n "${PKG_LOAD_ADDR}" ]; then
$PKG_RKBIN/tools/loaderimage --pack --uboot u-boot-dtb.bin uboot.img $PKG_LOAD_ADDR ${PKG_RKBIN}/tools/loaderimage --pack --uboot u-boot-dtb.bin uboot.img ${PKG_LOAD_ADDR}
cp -av uboot.img $INSTALL/usr/share/bootloader cp -av uboot.img ${INSTALL}/usr/share/bootloader
fi fi
if [ -n "$PKG_BL31" ]; then if [ -n "${PKG_BL31}" ]; then
cat >trust.ini <<EOF cat >trust.ini <<EOF
[BL30_OPTION] [BL30_OPTION]
SEC=0 SEC=0
[BL31_OPTION] [BL31_OPTION]
SEC=1 SEC=1
PATH=$PKG_BL31 PATH=${PKG_BL31}
ADDR=$PKG_BL31_ADDR ADDR=${PKG_BL31_ADDR}
[BL32_OPTION] [BL32_OPTION]
SEC=0 SEC=0
[BL33_OPTION] [BL33_OPTION]
@ -64,6 +64,6 @@ SEC=0
[OUTPUT] [OUTPUT]
PATH=trust.img PATH=trust.img
EOF EOF
$PKG_RKBIN/tools/trust_merger --verbose trust.ini ${PKG_RKBIN}/tools/trust_merger --verbose trust.ini
cp -av trust.img $INSTALL/usr/share/bootloader cp -av trust.img ${INSTALL}/usr/share/bootloader
fi fi

View File

@ -1,15 +1,15 @@
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) # Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
if [ -f "$RELEASE_DIR/3rdparty/bootloader/idbloader.img" ]; then if [ -f "${RELEASE_DIR}/3rdparty/bootloader/idbloader.img" ]; then
echo "image: burn idbloader.img to image..." echo "image: burn idbloader.img to image..."
dd if="$RELEASE_DIR/3rdparty/bootloader/idbloader.img" of="$DISK" bs=32k seek=1 conv=fsync,notrunc >"$SAVE_ERROR" 2>&1 || show_error dd if="${RELEASE_DIR}/3rdparty/bootloader/idbloader.img" of="${DISK}" bs=32k seek=1 conv=fsync,notrunc >"${SAVE_ERROR}" 2>&1 || show_error
fi fi
if [ -f "$RELEASE_DIR/3rdparty/bootloader/uboot.img" ]; then if [ -f "${RELEASE_DIR}/3rdparty/bootloader/uboot.img" ]; then
echo "image: burn uboot.img to image..." echo "image: burn uboot.img to image..."
dd if="$RELEASE_DIR/3rdparty/bootloader/uboot.img" of="$DISK" bs=64k seek=128 conv=fsync,notrunc >"$SAVE_ERROR" 2>&1 || show_error dd if="${RELEASE_DIR}/3rdparty/bootloader/uboot.img" of="${DISK}" bs=64k seek=128 conv=fsync,notrunc >"${SAVE_ERROR}" 2>&1 || show_error
fi fi
if [ -f "$RELEASE_DIR/3rdparty/bootloader/trust.img" ]; then if [ -f "${RELEASE_DIR}/3rdparty/bootloader/trust.img" ]; then
echo "image: burn trust.img to image..." echo "image: burn trust.img to image..."
dd if="$RELEASE_DIR/3rdparty/bootloader/trust.img" of="$DISK" bs=64k seek=192 conv=fsync,notrunc >"$SAVE_ERROR" 2>&1 || show_error dd if="${RELEASE_DIR}/3rdparty/bootloader/trust.img" of="${DISK}" bs=64k seek=192 conv=fsync,notrunc >"${SAVE_ERROR}" 2>&1 || show_error
fi fi

View File

@ -1,20 +1,20 @@
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) # Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
SRCDIR="$BUILD/image/system/usr/share/bootloader" SRCDIR="${BUILD}/image/system/usr/share/bootloader"
DSTDIR="$RELEASE_DIR/3rdparty/bootloader" DSTDIR="${RELEASE_DIR}/3rdparty/bootloader"
mkdir -p "$DSTDIR" mkdir -p "${DSTDIR}"
if [ -n "$UBOOT_SYSTEM" ]; then if [ -n "${UBOOT_SYSTEM}" ]; then
if [ -f "$SRCDIR/idbloader.img" ]; then if [ -f "${SRCDIR}/idbloader.img" ]; then
cp -a "$SRCDIR/idbloader.img" "$DSTDIR" cp -a "${SRCDIR}/idbloader.img" "${DSTDIR}"
fi fi
if [ -f "$SRCDIR/uboot.img" ]; then if [ -f "${SRCDIR}/uboot.img" ]; then
cp -a "$SRCDIR/uboot.img" "$DSTDIR" cp -a "${SRCDIR}/uboot.img" "${DSTDIR}"
fi fi
if [ -f "$SRCDIR/trust.img" ]; then if [ -f "${SRCDIR}/trust.img" ]; then
cp -a "$SRCDIR/trust.img" "$DSTDIR" cp -a "${SRCDIR}/trust.img" "${DSTDIR}"
fi fi
fi fi
cp -a "$SRCDIR"/${DEVICE,,}-*.dtb "$DSTDIR" cp -a "${SRCDIR}"/${DEVICE,,}-*.dtb "${DSTDIR}"

View File

@ -1,50 +1,87 @@
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) # Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
[ -z "$SYSTEM_ROOT" ] && SYSTEM_ROOT="" [ -z "${SYSTEM_ROOT}" ] && SYSTEM_ROOT=""
[ -z "$BOOT_ROOT" ] && BOOT_ROOT="/flash" [ -z "${BOOT_ROOT}" ] && BOOT_ROOT="/flash"
[ -z "$BOOT_PART" ] && BOOT_PART=$(df "$BOOT_ROOT" | tail -1 | awk {' print $1 '}) [ -z "${BOOT_PART}" ] && BOOT_PART=$(df "${BOOT_ROOT}" | tail -1 | awk {' print $1 '})
if [ -z "$BOOT_DISK" ]; then if [ -z "${BOOT_DISK}" ]; then
case $BOOT_PART in case ${BOOT_PART} in
/dev/sd[a-z][0-9]*) /dev/sd[a-z][0-9]*)
BOOT_DISK=$(echo $BOOT_PART | sed -e "s,[0-9]*,,g") BOOT_DISK=$(echo ${BOOT_PART} | sed -e "s,[0-9]*,,g")
;; ;;
/dev/mmcblk*) /dev/mmcblk*)
BOOT_DISK=$(echo $BOOT_PART | sed -e "s,p[0-9]*,,g") BOOT_DISK=$(echo ${BOOT_PART} | sed -e "s,p[0-9]*,,g")
;; ;;
esac esac
fi fi
# mount $BOOT_ROOT r/w # mount ${BOOT_ROOT} r/w
mount -o remount,rw $BOOT_ROOT mount -o remount,rw ${BOOT_ROOT}
# update device tree # update device tree
for all_dtb in $BOOT_ROOT/*.dtb; do for all_dtb in ${BOOT_ROOT}/*.dtb; do
dtb=$(basename $all_dtb) dtb=$(basename ${all_dtb})
if [ -f $SYSTEM_ROOT/usr/share/bootloader/$dtb ]; then
echo -n "Updating $dtb... " # device tree mappings for update from vendor to mainline kernel
cp -p $SYSTEM_ROOT/usr/share/bootloader/$dtb $BOOT_ROOT case "${dtb}" in
rk3288-miniarm.dtb)
new_dtb=rk3288-tinker.dtb
;;
rk3328-box.dtb|rk3328-box-trn9.dtb|rk3328-box-z28.dtb|rk3328-rockbox.dtb)
new_dtb=rk3328-a1.dtb
;;
rk3399-rock-pi-4.dtb)
new_dtb=rk3399-rock-pi-4a.dtb
;;
*)
new_dtb="${dtb}"
;;
esac
if [ "${dtb}" != "${new_dtb}" -a -f ${SYSTEM_ROOT}/usr/share/bootloader/${new_dtb} ]; then
echo -n "Replacing ${dtb} with ${new_dtb} ... "
cp -p ${SYSTEM_ROOT}/usr/share/bootloader/${new_dtb} ${BOOT_ROOT} && \
sed -e "s/FDT \/${dtb}/FDT \/${new_dtb}/g" \
-i ${BOOT_ROOT}/extlinux/extlinux.conf && \
rm -f ${BOOT_ROOT}/${dtb}
echo "done" echo "done"
else
if [ -f ${SYSTEM_ROOT}/usr/share/bootloader/${dtb} ]; then
echo -n "Updating ${dtb}... "
cp -p ${SYSTEM_ROOT}/usr/share/bootloader/${dtb} ${BOOT_ROOT}
echo "done"
elif [ "$(grep -c "FDT /${dtb}" ${BOOT_ROOT}/extlinux/extlinux.conf)" -ne 0 ]; then
non_existend_dtb="${dtb}"
fi
fi fi
done done
# update bootloader # update bootloader
if [ -f $SYSTEM_ROOT/usr/share/bootloader/idbloader.img ]; then if [ -f ${SYSTEM_ROOT}/usr/share/bootloader/idbloader.img ]; then
echo -n "Updating idbloader.img... " echo -n "Updating idbloader.img... "
dd if=$SYSTEM_ROOT/usr/share/bootloader/idbloader.img of=$BOOT_DISK bs=32k seek=1 conv=fsync &>/dev/null dd if=${SYSTEM_ROOT}/usr/share/bootloader/idbloader.img of=${BOOT_DISK} bs=32k seek=1 conv=fsync &>/dev/null
echo "done" echo "done"
fi fi
if [ -f $SYSTEM_ROOT/usr/share/bootloader/uboot.img ]; then if [ -f ${SYSTEM_ROOT}/usr/share/bootloader/uboot.img ]; then
echo -n "Updating uboot.img... " echo -n "Updating uboot.img... "
dd if=$SYSTEM_ROOT/usr/share/bootloader/uboot.img of=$BOOT_DISK bs=64k seek=128 conv=fsync &>/dev/null dd if=${SYSTEM_ROOT}/usr/share/bootloader/uboot.img of=${BOOT_DISK} bs=64k seek=128 conv=fsync &>/dev/null
echo "done" echo "done"
fi fi
if [ -f $SYSTEM_ROOT/usr/share/bootloader/trust.img ]; then if [ -f ${SYSTEM_ROOT}/usr/share/bootloader/trust.img ]; then
echo -n "Updating trust.img... " echo -n "Updating trust.img... "
dd if=$SYSTEM_ROOT/usr/share/bootloader/trust.img of=$BOOT_DISK bs=64k seek=192 conv=fsync &>/dev/null dd if=${SYSTEM_ROOT}/usr/share/bootloader/trust.img of=${BOOT_DISK} bs=64k seek=192 conv=fsync &>/dev/null
echo "done" echo "done"
fi fi
# mount $BOOT_ROOT r/o # mount ${BOOT_ROOT} r/o
sync sync
mount -o remount,ro $BOOT_ROOT mount -o remount,ro ${BOOT_ROOT}
# warning if device tree was not updated
if [ -n "${non_existend_dtb}" ]; then
echo "The device tree ${non_existend_dtb} your installation uses does not exist in this update package."
echo "The updated system will continue to use the device tree from the previous system and your installation might be broken."
echo "Please check documentation to find out which boards are supported by this package."
sleep 10
fi

View File

@ -3235,7 +3235,7 @@ CONFIG_DRM_KMS_HELPER=y
CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_KMS_FB_HELPER=y
CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_FBDEV_OVERALLOC=100
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y
# CONFIG_DRM_DP_CEC is not set # CONFIG_DRM_DP_CEC is not set
CONFIG_DRM_GEM_CMA_HELPER=y CONFIG_DRM_GEM_CMA_HELPER=y
CONFIG_DRM_KMS_CMA_HELPER=y CONFIG_DRM_KMS_CMA_HELPER=y
@ -5780,7 +5780,7 @@ CONFIG_CRYPTO_LIB_SHA256=y
CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set # CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set # CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
CONFIG_CRYPTO_DEV_ROCKCHIP=m # CONFIG_CRYPTO_DEV_ROCKCHIP is not set
CONFIG_CRYPTO_DEV_VIRTIO=m CONFIG_CRYPTO_DEV_VIRTIO=m
# CONFIG_CRYPTO_DEV_SAFEXCEL is not set # CONFIG_CRYPTO_DEV_SAFEXCEL is not set
# CONFIG_CRYPTO_DEV_CCREE is not set # CONFIG_CRYPTO_DEV_CCREE is not set

View File

@ -10,7 +10,6 @@
TARGET_CPU="cortex-a17" TARGET_CPU="cortex-a17"
TARGET_FPU="neon-vfpv4" TARGET_FPU="neon-vfpv4"
TARGET_FEATURES="32bit" TARGET_FEATURES="32bit"
KERNEL_TOOLCHAIN="arm-none-linux-gnueabihf"
;; ;;
esac esac

View File

@ -3323,7 +3323,7 @@ CONFIG_DRM_KMS_HELPER=y
CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_KMS_FB_HELPER=y
CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_FBDEV_OVERALLOC=100
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y
# CONFIG_DRM_DP_CEC is not set # CONFIG_DRM_DP_CEC is not set
CONFIG_DRM_GEM_CMA_HELPER=y CONFIG_DRM_GEM_CMA_HELPER=y
CONFIG_DRM_GEM_SHMEM_HELPER=y CONFIG_DRM_GEM_SHMEM_HELPER=y

View File

@ -4,18 +4,13 @@ This is a SoC device for RK3399
**Build** **Build**
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=firefly make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=hugsun-x99 make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=hugsun-x99 make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=khadas-edge make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=khadas-edge make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=khadas-edge-v make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=nanopc-t4 make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=nanopc-t4 make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=nanopi-m4 make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=nanopi-m4 make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=nanopi-neo4 make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=orangepi make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=orangepi make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=rock960 make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=rock960 make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=rock-pi-4a make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=rock-pi-4 make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=rock-pi-4b make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=rock-pi-4c make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=rockpro64 make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=rockpro64 make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=roc-pc make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=roc-pc make image`
* `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=sapphire make image` * `PROJECT=Rockchip DEVICE=RK3399 ARCH=arm UBOOT_SYSTEM=sapphire make image`

View File

@ -3846,7 +3846,7 @@ CONFIG_DRM_KMS_HELPER=y
CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_KMS_FB_HELPER=y
CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_FBDEV_OVERALLOC=100
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set CONFIG_DRM_LOAD_EDID_FIRMWARE=y
# CONFIG_DRM_DP_CEC is not set # CONFIG_DRM_DP_CEC is not set
CONFIG_DRM_GEM_CMA_HELPER=y CONFIG_DRM_GEM_CMA_HELPER=y
CONFIG_DRM_GEM_SHMEM_HELPER=y CONFIG_DRM_GEM_SHMEM_HELPER=y
@ -4755,7 +4755,27 @@ CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
# CONFIG_USB_RAW_GADGET is not set # CONFIG_USB_RAW_GADGET is not set
# end of USB Gadget precomposed configurations # end of USB Gadget precomposed configurations
# CONFIG_TYPEC is not set CONFIG_TYPEC=y
CONFIG_TYPEC_TCPM=m
# CONFIG_TYPEC_TCPCI is not set
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_UCSI is not set
# CONFIG_TYPEC_HD3SS3220 is not set
# CONFIG_TYPEC_TPS6598X is not set
# CONFIG_TYPEC_STUSB160X is not set
#
# USB Type-C Multiplexer/DeMultiplexer Switch support
#
# CONFIG_TYPEC_MUX_PI3USB30532 is not set
# end of USB Type-C Multiplexer/DeMultiplexer Switch support
#
# USB Type-C Alternate Mode drivers
#
# CONFIG_TYPEC_DP_ALTMODE is not set
# end of USB Type-C Alternate Mode drivers
CONFIG_USB_ROLE_SWITCH=y CONFIG_USB_ROLE_SWITCH=y
CONFIG_MMC=y CONFIG_MMC=y
CONFIG_PWRSEQ_EMMC=y CONFIG_PWRSEQ_EMMC=y

View File

@ -450,3 +450,243 @@ index 403d4c6a49a8..7505c3eee4c1 100644
}; };
struct hdmi_codec_priv { struct hdmi_codec_priv {
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Alex Bee <knaerzche@gmail.com>
Date: Sat, 27 Feb 2021 17:41:48 +0100
Subject: [PATCH] ARM64: dts: rockchip: fix gpu register width and supplies
for RK3328
Signed-off-by: Alex Bee <knaerzche@gmail.com>
---
arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts | 4 ++++
arch/arm64/boot/dts/rockchip/rk3328-rock64.dts | 4 ++++
arch/arm64/boot/dts/rockchip/rk3328.dtsi | 2 +-
3 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
index 3ac876c08d61..8607514437f5 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
@@ -161,6 +161,10 @@ &gmac2io {
status = "okay";
};
+&gpu {
+ mali-supply = <&vdd_logic>;
+};
+
&hdmi {
status = "okay";
};
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
index 89fde87f7650..bd62349a9390 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
@@ -157,6 +157,10 @@ &gmac2io {
status = "okay";
};
+&gpu {
+ mali-supply = <&vdd_logic>;
+};
+
&hdmi {
status = "okay";
};
diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
index 2dc257098002..f86f10f7e64e 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
@@ -619,7 +619,7 @@ saradc: adc@ff280000 {
gpu: gpu@ff300000 {
compatible = "rockchip,rk3328-mali", "arm,mali-450";
- reg = <0x0 0xff300000 0x0 0x40000>;
+ reg = <0x0 0xff300000 0x0 0x30000>;
interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>,
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kamil=20Trzci=C5=84ski?= <ayufan@ayufan.eu>
Date: Sun, 30 Dec 2018 13:32:47 +0100
Subject: [PATCH] ayufan: dts: rockpro64: change rx_delay for gmac
Change-Id: Ib3899f684188aa1ed1545717af004bba53fe0e07
---
arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
index 58097245994a..0da80295f09f 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
@@ -248,7 +248,7 @@ &gmac {
snps,reset-active-low;
snps,reset-delays-us = <0 10000 50000>;
tx_delay = <0x28>;
- rx_delay = <0x11>;
+ rx_delay = <0x20>;
status = "okay";
};
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aditya Prayoga <aditya@kobol.io>
Date: Tue, 15 Sep 2020 13:29:45 +0700
Subject: [PATCH] PCI: rockchip: support ep-gpio undefined case
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
---
drivers/pci/controller/pcie-rockchip.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/pci/controller/pcie-rockchip.c b/drivers/pci/controller/pcie-rockchip.c
index 904dec0d3a88..13b0d30b130d 100644
--- a/drivers/pci/controller/pcie-rockchip.c
+++ b/drivers/pci/controller/pcie-rockchip.c
@@ -118,9 +118,9 @@ int rockchip_pcie_parse_dt(struct rockchip_pcie *rockchip)
}
if (rockchip->is_rc) {
- rockchip->ep_gpio = devm_gpiod_get(dev, "ep", GPIOD_OUT_HIGH);
+ rockchip->ep_gpio = devm_gpiod_get_optional(dev, "ep", GPIOD_OUT_HIGH);
if (IS_ERR(rockchip->ep_gpio)) {
- dev_err(dev, "missing ep-gpios property in node\n");
+ dev_err(dev, "invalid ep-gpios property in node\n");
return PTR_ERR(rockchip->ep_gpio);
}
}
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Alex Bee <knaerzche@gmail.com>
Date: Sat, 27 Feb 2021 17:52:02 +0100
Subject: [PATCH] ARM64: dts: rockchip: add SPDIF nodes for RK3328 A1/ROC CC
Signed-off-by: Alex Bee <knaerzche@gmail.com>
---
arch/arm64/boot/dts/rockchip/rk3328-a1.dts | 23 +++++++++++++++++++
.../arm64/boot/dts/rockchip/rk3328-roc-cc.dts | 23 +++++++++++++++++++
2 files changed, 46 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-a1.dts b/arch/arm64/boot/dts/rockchip/rk3328-a1.dts
index 4013f16bb368..1bb3f4a6e496 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328-a1.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3328-a1.dts
@@ -52,6 +52,24 @@ ir-receiver {
gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
linux,rc-map-name = "rc-beelink-gs1";
};
+
+ spdif_sound: spdif-sound {
+ compatible = "simple-audio-card";
+ simple-audio-card,name = "SPDIF";
+
+ simple-audio-card,cpu {
+ sound-dai = <&spdif>;
+ };
+
+ simple-audio-card,codec {
+ sound-dai = <&spdif_dit>;
+ };
+ };
+
+ spdif_dit: spdif-dit {
+ compatible = "linux,spdif-dit";
+ #sound-dai-cells = <0>;
+ };
};
&analog_sound {
@@ -319,6 +337,11 @@ &sdmmc {
status = "okay";
};
+&spdif {
+ pinctrl-0 = <&spdifm0_tx>;
+ status = "okay";
+};
+
&tsadc {
rockchip,hw-tshut-mode = <0>;
rockchip,hw-tshut-polarity = <0>;
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
index 8607514437f5..6ca08854aef3 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
@@ -102,6 +102,24 @@ user_led: led-1 {
mode = <0x05>;
};
};
+
+ spdif_sound: spdif-sound {
+ compatible = "simple-audio-card";
+ simple-audio-card,name = "SPDIF";
+
+ simple-audio-card,cpu {
+ sound-dai = <&spdif>;
+ };
+
+ simple-audio-card,codec {
+ sound-dai = <&spdif_dit>;
+ };
+ };
+
+ spdif_dit: spdif-dit {
+ compatible = "linux,spdif-dit";
+ #sound-dai-cells = <0>;
+ };
};
&analog_sound {
@@ -337,6 +355,11 @@ &sdmmc {
status = "okay";
};
+&spdif {
+ pinctrl-0 = <&spdifm0_tx>;
+ status = "okay";
+};
+
&tsadc {
status = "okay";
};
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Alex Bee <knaerzche@gmail.com>
Date: Sat, 27 Feb 2021 18:01:13 +0100
Subject: [PATCH] ARM64: dts: rockchip: Add ir-receiver node for RK3328 ROC CC
Signed-off-by: Alex Bee <knaerzche@gmail.com>
---
arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
index 6ca08854aef3..fb21ad1324bc 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
@@ -83,6 +83,13 @@ vcc_phy: vcc-phy-regulator {
regulator-boot-on;
};
+ ir-receiver {
+ compatible = "gpio-ir-receiver";
+ gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
+ pinctrl-0 = <&ir_int>;
+ pinctrl-names = "default";
+ };
+
leds {
compatible = "gpio-leds";
@@ -325,6 +332,13 @@ &io_domains {
};
&pinctrl {
+
+ ir {
+ ir_int: ir-int {
+ rockchip,pins = <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+
pmic {
pmic_int_l: pmic-int-l {
rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_up>;

View File

@ -263,10 +263,6 @@ devices = \
}, },
}, },
'RK3399': { 'RK3399': {
'firefly': {
'dtb': 'rk3399-firefly.dtb',
'config': 'evb-rk3399_defconfig'
},
'hugsun-x99': { 'hugsun-x99': {
'dtb': 'rk3399-hugsun-x99.dtb', 'dtb': 'rk3399-hugsun-x99.dtb',
'config': 'evb-rk3399_defconfig' 'config': 'evb-rk3399_defconfig'
@ -275,10 +271,6 @@ devices = \
'dtb': 'rk3399-khadas-edge.dtb', 'dtb': 'rk3399-khadas-edge.dtb',
'config': 'evb-rk3399_defconfig' 'config': 'evb-rk3399_defconfig'
}, },
'khadas-edge-v': {
'dtb': 'rk3399-khadas-edge-v.dtb',
'config': 'evb-rk3399_defconfig'
},
'nanopc-t4': { 'nanopc-t4': {
'dtb': 'rk3399-nanopc-t4.dtb', 'dtb': 'rk3399-nanopc-t4.dtb',
'config': 'evb-rk3399_defconfig' 'config': 'evb-rk3399_defconfig'
@ -287,10 +279,6 @@ devices = \
'dtb': 'rk3399-nanopi-m4.dtb', 'dtb': 'rk3399-nanopi-m4.dtb',
'config': 'evb-rk3399_defconfig' 'config': 'evb-rk3399_defconfig'
}, },
'nanopi-neo4': {
'dtb': 'rk3399-nanopi-neo4.dtb',
'config': 'evb-rk3399_defconfig'
},
'orangepi': { 'orangepi': {
'dtb': 'rk3399-orangepi.dtb', 'dtb': 'rk3399-orangepi.dtb',
'config': 'evb-rk3399_defconfig' 'config': 'evb-rk3399_defconfig'
@ -299,18 +287,10 @@ devices = \
'dtb': 'rk3399-rock960.dtb', 'dtb': 'rk3399-rock960.dtb',
'config': 'evb-rk3399_defconfig' 'config': 'evb-rk3399_defconfig'
}, },
'rock-pi-4a': { 'rock-pi-4': {
'dtb': 'rk3399-rock-pi-4a.dtb', 'dtb': 'rk3399-rock-pi-4a.dtb',
'config': 'evb-rk3399_defconfig' 'config': 'evb-rk3399_defconfig'
}, },
'rock-pi-4b': {
'dtb': 'rk3399-rock-pi-4b.dtb',
'config': 'evb-rk3399_defconfig'
},
'rock-pi-4c': {
'dtb': 'rk3399-rock-pi-4c.dtb',
'config': 'evb-rk3399_defconfig'
},
'rockpro64': { 'rockpro64': {
'dtb': 'rk3399-rockpro64.dtb', 'dtb': 'rk3399-rockpro64.dtb',
'config': 'evb-rk3399_defconfig' 'config': 'evb-rk3399_defconfig'