Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
0fa474a
Squash-merge collabora/rockchip-devel tracking head as of 12/May/2026:
dongioia May 12, 2026
538af93
FROMLIST(v3): media: rkvdec: Add support for the VDPU346 variant
chewitt Sep 19, 2025
9f78fc9
WIP: media: rkvdec: Add VP9 support for the VDPU381 variant
dvab-sarma Nov 17, 2025
d079697
WIP: media: rkvdec: Add VP9 support for the VDPU346 variant
chewitt Dec 19, 2025
933f33e
WIP: media: rkvdec: Add VP9 Profile2 support for VDPU346 and VDPU381
chewitt Dec 19, 2025
13fdc1a
WIP: media: rkvdec: Add VP9 fixes from github/dvab-sarma issues
chewitt Apr 10, 2026
ebdeaa9
FROMLIST(v1): media: rkvdec: vp9: Fix probs struct alignment
cazou Dec 12, 2025
5e9034f
FROMLIST(v13): arm64: defconfig: enable Verisilicon IOMMU for Rockchi…
Feb 16, 2026
374fb1d
LOCAL: arm64: dts: rockchip: rk3588: disable nodes that block sync_st…
chewitt Feb 28, 2026
30f3bfb
ALSA: pcm_drm_eld: rate-limit ELD parsing errors
dongioia May 10, 2026
b890aab
ASoC: hdmi-codec: bail out silently when sink is disconnected
dongioia May 10, 2026
efb1155
ASoC: soc-utils: do not log -ENOTCONN as ASoC error
dongioia May 10, 2026
a316030
arm64: configs: add beryllium_rk3588_defconfig
dongioia Apr 4, 2026
fb486aa
WIP: drm/rockchip: dw_dp: add no-op sync_state callback
dongioia May 12, 2026
fe80360
WIP: drm/bridge: dw-hdmi-qp: add N coefficients for 497.75 MHz pclk
dongioia May 12, 2026
91f6c02
arm64: configs: beryllium_rk3588_defconfig: enable DW_DP and bump CMA…
dongioia May 12, 2026
525bbfd
arm64: configs: beryllium_rk3588_defconfig: drop CONFIG_ROCKCHIP_DW_DP=y
dongioia May 12, 2026
58acb11
media: rkvdec: fix PM runtime teardown ordering in remove
Kwiboo May 23, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@ modules.order
!.mailmap
!.pylintrc
!.rustfmt.toml
!.gitlab-ci.yml

#
# Generated include files
Expand Down
306 changes: 306 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,306 @@
default:
image: debian:testing

stages:
- build
- test
- generate
- lava

check devicetrees:
stage: build
tags:
- ultra-heavyweight
variables:
DEBIAN_FRONTEND: noninteractive
GIT_SUBMODULE_STRATEGY: normal
ARCH: arm64
DEFCONFIG: defconfig
CROSS_COMPILE: aarch64-linux-gnu-
DUT: rockchip/rk3588s-rock-5a.dtb rockchip/rk3588-rock-5b.dtb rockchip/rk3588-rock-5b-plus.dtb rockchip/rk3588-evb1-v10.dtb rockchip/rk3576-armsom-sige5.dtb rockchip/rk3576-rock-4d.dtb rockchip/rk3576-evb1-v10.dtb
before_script:
- apt update
- apt install -y devscripts
build-essential
crossbuild-essential-arm64
bc
bison
flex
swig
python3-dev
python3-pip
python3-setuptools
yamllint
- pip3 install --break-system-packages dtschema
script:
- make $DEFCONFIG
- make -j$(nproc) dt_binding_check
- make -j$(nproc) CHECK_DTBS=y $DUT 2> dt-warnings.txt
- if [[ $(cat dt-warnings.txt | wc -l) > 0 ]]; then cat dt-warnings.txt; exit 42; fi
allow_failure:
exit_codes:
- 42

.build debian package:
stage: build
tags:
- ultra-heavyweight
cache:
when: on_success
key: $CI_COMMIT_REF_SLUG
paths:
- ccache
variables:
DEBIAN_FRONTEND: noninteractive
GIT_SUBMODULE_STRATEGY: normal
ARCH: amd64
DEFCONFIG: defconfig
CCACHE_BASEDIR: $CI_PROJECT_DIR
CCACHE_DIR: $CI_PROJECT_DIR/ccache
before_script:
- dpkg --add-architecture arm64
- apt update
- apt install -y debhelper
devscripts
build-essential
crossbuild-essential-arm64
bc
bison
ccache
flex
rsync
kmod
cpio
libdw-dev
libelf-dev
libssl-dev
libssl-dev:arm64
# Setup ccache
- export PATH="/usr/lib/ccache:$PATH"
- ccache -s
script:
- make $DEFCONFIG
- ./scripts/config -e WLAN -e WLAN_VENDOR_BROADCOM -m BRCMUTIL -m BRCMFMAC
-e BRCMFMAC_PROTO_BCDC -e BRCMFMAC_PROTO_MSGBUF
-e BRCMFMAC_USB -e BRCMFMAC_PCIE
-e WLAN_VENDOR_REALTEK -m RTW89 -m RTW89_CORE
-e DYNAMIC_DEBUG
-m RTW89_PCI -m RTW89_8825B -m RTW89_8852BE
-m BINFMT_MISC
-e WATCHDOG_SYSFS -e PM_DEBUG
-m XFS_FS -m EROFS_FS -m F2FS_FS
-m EXFAT_FS -m ISO9660_FS
-e DRM_ACCEL -m DRM_ACCEL_ROCKET
-e UDMABUF -m DRM_VKMS -m VIDEO_VIVID -m VIDEO_DEV
-e V4L_TEST_DRIVERS -e MEDIA_TEST_SUPPORT
-m VIDEO_IMX415
-m PHY_ROCKCHIP_INNO_CSIDPHY
- make -j$(nproc) $ADDITIONAL_BUILD_CMD bindeb-pkg
- mkdir artifacts && dcmd mv ../*.changes artifacts/
artifacts:
paths:
- artifacts

.build kselftest tarball:
stage: build
cache:
when: on_success
key: $CI_COMMIT_REF_SLUG
paths:
- ccache
variables:
DEBIAN_FRONTEND: noninteractive
GIT_SUBMODULE_STRATEGY: normal
ARCH: amd64
DEFCONFIG: defconfig
CCACHE_BASEDIR: $CI_PROJECT_DIR
CCACHE_DIR: $CI_PROJECT_DIR/ccache
before_script:
- dpkg --add-architecture arm64
- apt update
- apt install -y devscripts
build-essential
crossbuild-essential-arm64
bc
bison
ccache
flex
rsync
kmod
cpio
libelf-dev
libssl-dev
libssl-dev:arm64
- mkdir artifacts
# Setup ccache
- export PATH="/usr/lib/ccache:$PATH"
- ccache -s
script:
# VEPU121 has 4 cores, but the kernel driver currently only binds to 1
- echo 'rockchip,rk3588-vepu121' >> tools/testing/selftests/dt/compatible_ignore_list
# VDPU381 has 2 cores, but the kernel driver currently only binds to 1
- echo 'rockchip,rk3588-vdec' >> tools/testing/selftests/dt/compatible_ignore_list
# Some boards have hardware problems with the RTC (ROCK 4D)
- echo 'haoyu,hym8563' >> tools/testing/selftests/dt/compatible_ignore_list
# The UFS driver fails to probe if no module is plugged (ROCK 4D)
- echo 'rockchip,rk3576-ufshc' >> tools/testing/selftests/dt/compatible_ignore_list
- make -C tools/testing/selftests/ TARGETS="dt" gen_tar
- mv tools/testing/selftests/kselftest_install/kselftest-packages/kselftest.tar.gz artifacts/
- sed -i s,%%KSELFTEST_BUILD_JOB%%,${CI_JOB_ID},g lava/testjob.yaml
artifacts:
paths:
- artifacts
- lava/testjob.yaml

build arm64 debian package:
extends: .build debian package
variables:
ARCH: arm64
CROSS_COMPILE: aarch64-linux-gnu-
ADDITIONAL_BUILD_CMD: KBUILD_IMAGE=arch/arm64/boot/Image

build arm64 kselftest tarball:
extends: .build kselftest tarball
variables:
ARCH: arm64
CROSS_COMPILE: aarch64-linux-gnu-
ADDITIONAL_BUILD_CMD: KBUILD_IMAGE=arch/arm64/boot/Image

generate tests:
image: debian:trixie-slim
stage: generate
tags:
- lightweight
variables:
GIT_STRATEGY: fetch
GIT_DEPTH: "1"
needs:
- "build arm64 debian package"
- "build arm64 kselftest tarball"
before_script:
- apt update
- apt install -y wget
script:
- mkdir deb
- "for x in artifacts/linux-image*.deb ; do dpkg -x ${x} deb ; done"
- cp deb/boot/vmlinuz* vmlinuz
# TODO: this should be sourced from the CI initramfs instead. It is
# currently not part of it, since mkinitramfs only adds firmwares
# referenced by modules contained in the initramfs and the initramfs
# generated for CI purposes does not contain any kernel. Once this
# has been fixed, the following two lines should be removed.
- mkdir -p deb/lib/firmware/arm/mali/arch10.8
- wget -O deb/lib/firmware/arm/mali/arch10.8/mali_csffw.bin "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/arm/mali/arch10.8/mali_csffw.bin"
- tar -f modules.tar.gz -C deb -c -z -v lib/modules lib/firmware
- mkdir dtbs
- cp -r deb/usr/lib/linux-image*/* dtbs
- sed -i s,%%KERNEL_BUILD_JOB%%,${CI_JOB_ID},g lava/testjob.yaml
artifacts:
paths:
- vmlinuz*
- modules.tar.gz
- dtbs
- lava/testjob.yaml

.lava test:
stage: lava
environment: $DEVTYPE
tags:
- lava-runner
needs:
- "generate tests"
script:
- submit lava/testjob.yaml
artifacts:
when: always
paths:
- "*"
reports:
junit: "*_junit.xml"

lava basic test:
extends: ".lava test"
parallel:
matrix:
- LAVA_TEST_BASELINE: 1
LAVA_TEST: baseline
DEVTYPE:
- rk3588-rock-5b
- rk3576-rock-4d
- rk3576-armsom-sige5
- LAVA_TEST_KSELFTEST_DT: 1
LAVA_TEST: kselftest-dt
DEVTYPE:
- rk3588-rock-5b
- rk3576-rock-4d
- rk3576-armsom-sige5
- LAVA_TEST_WATCHDOG: 1
LAVA_TEST: watchdog
DEVTYPE:
- rk3588-rock-5b
- rk3576-rock-4d
- rk3576-armsom-sige5

lava media codec test:
extends: ".lava test"
parallel:
matrix:
- LAVA_TEST_AVVIDEOCOMPARE: 1
LAVA_TEST: avvideocompare jpeg enc
AVVIDEOCOMPARE_GST_PIPELINE1: "v4l2jpegenc ! jpegdec"
AVVIDEOCOMPARE_GST_PIPELINE2: "jpegenc ! jpegdec"
AVVIDEOCOMPARE_GST_VID_SRC_MEDIA_TYPE: "video/x-raw,framerate=30/1,width=1920,height=1080,format=UYVY"
AVVIDEOCOMPARE_MIN_SCORE: "0.99"
DEVTYPE:
- rk3588-rock-5b
- LAVA_TEST_FLUSTER: 1
LAVA_TEST: fluster vp8
TESTSUITE: 'VP8-TEST-VECTORS'
DECODERS: 'GStreamer-VP8-V4L2SL-Gst1.0'
DEVTYPE:
- rk3588-rock-5b
- LAVA_TEST_FLUSTER: 1
LAVA_TEST: fluster h264
TESTSUITE: 'JVT-AVC_V1'
DECODERS: 'GStreamer-H.264-V4L2SL-Gst1.0'
DEVTYPE:
- rk3588-rock-5b
- LAVA_TEST_FLUSTER: 1
LAVA_TEST: fluster av1
TESTSUITE: 'AV1-TEST-VECTORS'
DECODERS: 'GStreamer-AV1-V4L2SL-Gst1.0'
DEVTYPE:
- rk3588-rock-5b

lava dmesg warning check:
extends: ".lava test"
allow_failure: true
parallel:
matrix:
- LAVA_TEST_DMESG: 1
LAVA_TEST: dmesg
DEVTYPE:
- rk3588-rock-5b
- rk3576-rock-4d
- rk3576-armsom-sige5

lava power management test:
extends: ".lava test"
allow_failure: true
parallel:
matrix:
- LAVA_TEST_RTCWAKE: 1
LAVA_TEST: rtcwake
DEVTYPE:
- rk3576-rock-4d
- rk3576-armsom-sige5
- LAVA_TEST_PM_TEST_SUSPEND: 1
LAVA_TEST: pm-test-suspend
DEVTYPE:
- rk3576-rock-4d
- rk3576-armsom-sige5
- LAVA_TEST_PM_TEST_SUSPEND_DEEP: 1
LAVA_TEST: pm-test-suspend-deep
DEVTYPE:
- rk3576-rock-4d
- rk3576-armsom-sige5
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,8 @@ properties:
maxItems: 1

"#sound-dai-cells":
const: 0
const: 1
description: 0 for I2S, 1 for SPDIF

required:
- compatible
Expand Down Expand Up @@ -144,7 +145,7 @@ examples:
resets = <&cru SRST_DP0>;
phys = <&usbdp_phy0 PHY_TYPE_DP>;
power-domains = <&power RK3588_PD_VO0>;
#sound-dai-cells = <0>;
#sound-dai-cells = <1>;

ports {
#address-cells = <1>;
Expand Down
Loading