From 1b156c2b5bfae59312d263fb9c25f37f949fa544 Mon Sep 17 00:00:00 2001 From: Alex Bee Date: Tue, 8 Mar 2022 21:12:31 +0100 Subject: [PATCH 1/4] linux: update to 5.10.103 --- packages/linux/package.mk | 4 ++-- .../default/linux-0000-nop-gcc-plugin.patch | 24 ------------------- 2 files changed, 2 insertions(+), 26 deletions(-) delete mode 100644 packages/linux/patches/default/linux-0000-nop-gcc-plugin.patch diff --git a/packages/linux/package.mk b/packages/linux/package.mk index efd47baaab..ebcd40ba8a 100644 --- a/packages/linux/package.mk +++ b/packages/linux/package.mk @@ -28,8 +28,8 @@ case "${LINUX}" in PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz" ;; *) - PKG_VERSION="5.10.76" - PKG_SHA256="480a09ba1962862ff18df9453fa0df6ba11cbe19eefedeab81bf2c84f49e1890" + PKG_VERSION="5.10.103" + PKG_SHA256="4fb8ad55e6430342e4fbc94d54e594e9be8eb6a8bea1d71eccf835948d08580a" PKG_URL="https://www.kernel.org/pub/linux/kernel/v5.x/${PKG_NAME}-${PKG_VERSION}.tar.xz" PKG_PATCH_DIRS="default" ;; diff --git a/packages/linux/patches/default/linux-0000-nop-gcc-plugin.patch b/packages/linux/patches/default/linux-0000-nop-gcc-plugin.patch deleted file mode 100644 index 29819e5ca9..0000000000 --- a/packages/linux/patches/default/linux-0000-nop-gcc-plugin.patch +++ /dev/null @@ -1,24 +0,0 @@ -From a7163ecab9b2a395e809e41255f3567d7a188a5d Mon Sep 17 00:00:00 2001 -From: MilhouseVH -Date: Fri, 14 Feb 2020 00:34:00 +0000 -Subject: [PATCH] gcc-plugin.sh: use CONFIG_PLUGIN_HOSTCC="" on all distros - ---- - scripts/gcc-plugin.sh | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/scripts/gcc-plugin.sh b/scripts/gcc-plugin.sh -index d3caefe..6ba7f13 100755 ---- a/scripts/gcc-plugin.sh -+++ b/scripts/gcc-plugin.sh -@@ -1,6 +1,6 @@ - #!/bin/sh - # SPDX-License-Identifier: GPL-2.0 -- -+exit 0 - set -e - - srctree=$(dirname "$0") --- -2.20.1 - From d714b15a77dd64b860fc3348106c956f0feccf0a Mon Sep 17 00:00:00 2001 From: Alex Bee Date: Tue, 8 Mar 2022 21:13:53 +0100 Subject: [PATCH 2/4] Rockchip: linux update patches for 5.10.103 --- .../linux-0001-rockchip-from-5.11.patch | 84 ++++----- .../linux-0002-rockchip-from-5.12.patch | 24 +-- .../linux-0004-rockchip-from-next.patch | 8 +- .../linux-0005-rockchip-from-list.patch | 38 +--- .../default/linux-0010-v4l2-from-list.patch | 58 ++---- .../default/linux-0020-drm-from-5.11.patch | 6 +- .../default/linux-0021-drm-from-list.patch | 16 +- .../default/linux-1000-drm-rockchip.patch | 170 +++++++++--------- .../default/linux-1001-v4l2-rockchip.patch | 22 +-- .../default/linux-1002-for-libreelec.patch | 74 ++++---- .../linux-2000-v4l-wip-rkvdec-vp9.patch | 35 +--- .../linux-2001-v4l-wip-rkvdec-hevc.patch | 26 +-- .../linux-2002-v4l-wip-iep-driver.patch | 12 +- 13 files changed, 231 insertions(+), 342 deletions(-) diff --git a/projects/Rockchip/patches/linux/default/linux-0001-rockchip-from-5.11.patch b/projects/Rockchip/patches/linux/default/linux-0001-rockchip-from-5.11.patch index 8217d0efe8..d5fd0769f1 100644 --- a/projects/Rockchip/patches/linux/default/linux-0001-rockchip-from-5.11.patch +++ b/projects/Rockchip/patches/linux/default/linux-0001-rockchip-from-5.11.patch @@ -349,7 +349,7 @@ diff --git a/arch/arm/boot/dts/rk3288-veyron-jaq.dts b/arch/arm/boot/dts/rk3288- index af77ab20586d..4a148cf1defc 100644 --- a/arch/arm/boot/dts/rk3288-veyron-jaq.dts +++ b/arch/arm/boot/dts/rk3288-veyron-jaq.dts -@@ -20,7 +20,7 @@ / { +@@ -20,7 +20,7 @@ &backlight { /* Jaq panel PWM must be >= 3%, so start non-zero brightness at 8 */ @@ -362,7 +362,7 @@ diff --git a/arch/arm/boot/dts/rk3288-veyron-minnie.dts b/arch/arm/boot/dts/rk32 index f8b69e0a16a0..82fc6fba9999 100644 --- a/arch/arm/boot/dts/rk3288-veyron-minnie.dts +++ b/arch/arm/boot/dts/rk3288-veyron-minnie.dts -@@ -39,7 +39,7 @@ volum_up { +@@ -39,7 +39,7 @@ &backlight { /* Minnie panel PWM must be >= 1%, so start non-zero brightness at 3 */ @@ -375,7 +375,7 @@ diff --git a/arch/arm/boot/dts/rk3288-veyron-tiger.dts b/arch/arm/boot/dts/rk328 index 069f0c2c1fdf..52a84cbe7a90 100644 --- a/arch/arm/boot/dts/rk3288-veyron-tiger.dts +++ b/arch/arm/boot/dts/rk3288-veyron-tiger.dts -@@ -23,7 +23,7 @@ / { +@@ -23,7 +23,7 @@ &backlight { /* Tiger panel PWM must be >= 1%, so start non-zero brightness at 3 */ @@ -413,7 +413,7 @@ diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi index a1a08cb9364e..e491964b1c3d 100644 --- a/arch/arm/boot/dts/rv1108.dtsi +++ b/arch/arm/boot/dts/rv1108.dtsi -@@ -299,7 +299,7 @@ timer: timer@10350000 { +@@ -299,7 +299,7 @@ clock-names = "timer", "pclk"; }; @@ -443,7 +443,7 @@ diff --git a/arch/arm/boot/dts/rk3288-vmarc-som.dtsi b/arch/arm/boot/dts/rk3288- index 4a373f5aa600..da80bfd5f2d5 100644 --- a/arch/arm/boot/dts/rk3288-vmarc-som.dtsi +++ b/arch/arm/boot/dts/rk3288-vmarc-som.dtsi -@@ -231,6 +231,23 @@ regulator-state-mem { +@@ -231,6 +231,23 @@ }; }; @@ -467,7 +467,7 @@ index 4a373f5aa600..da80bfd5f2d5 100644 &i2c5 { status = "okay"; }; -@@ -245,6 +262,12 @@ &io_domains { +@@ -245,6 +262,12 @@ }; &pinctrl { @@ -505,7 +505,7 @@ diff --git a/arch/arm/boot/dts/rk3288-vmarc-som.dtsi b/arch/arm/boot/dts/rk3288- index da80bfd5f2d5..0ae2bd150e37 100644 --- a/arch/arm/boot/dts/rk3288-vmarc-som.dtsi +++ b/arch/arm/boot/dts/rk3288-vmarc-som.dtsi -@@ -258,6 +258,7 @@ &io_domains { +@@ -258,6 +258,7 @@ gpio1830-supply = <&vcc_18>; gpio30-supply = <&vcc_io>; sdcard-supply = <&vccio_sd>; @@ -513,7 +513,7 @@ index da80bfd5f2d5..0ae2bd150e37 100644 status = "okay"; }; -@@ -283,6 +284,12 @@ pmic_int: pmic-int { +@@ -283,6 +284,12 @@ }; }; @@ -526,7 +526,7 @@ index da80bfd5f2d5..0ae2bd150e37 100644 sdmmc { sdmmc_bus4: sdmmc-bus4 { rockchip,pins = -@@ -314,6 +321,16 @@ usb0_en_oc: usb0-en-oc { +@@ -314,6 +321,16 @@ }; }; @@ -547,7 +547,7 @@ diff --git a/arch/arm/boot/dts/rockchip-radxa-dalang-carrier.dtsi b/arch/arm/boo index 26b53eac4706..da1d548b7330 100644 --- a/arch/arm/boot/dts/rockchip-radxa-dalang-carrier.dtsi +++ b/arch/arm/boot/dts/rockchip-radxa-dalang-carrier.dtsi -@@ -15,6 +15,14 @@ clkin_gmac: external-gmac-clock { +@@ -15,6 +15,14 @@ #clock-cells = <0>; }; @@ -562,7 +562,7 @@ index 26b53eac4706..da1d548b7330 100644 vcc12v_dcin: vcc12v-dcin-regulator { compatible = "regulator-fixed"; regulator-name = "vcc12v_dcin"; -@@ -78,6 +86,19 @@ &pwm2 { +@@ -78,6 +86,19 @@ status = "okay"; }; @@ -586,7 +586,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi b/arch/arm64/ index 5d087be04af8..7257494d2831 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi -@@ -353,6 +353,12 @@ pmic_int_l: pmic-int-l { +@@ -353,6 +353,12 @@ }; }; @@ -599,7 +599,7 @@ index 5d087be04af8..7257494d2831 100644 vbus_host { usb1_en_oc: usb1-en-oc { rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_up>; -@@ -371,6 +377,16 @@ &pmu_io_domains { +@@ -371,6 +377,16 @@ pmu1830-supply = <&vcc_1v8>; }; @@ -1284,7 +1284,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts b/arch/arm64/boo index 337681038519..97fb93e1cc00 100644 --- a/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts +++ b/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts -@@ -18,6 +18,30 @@ chosen { +@@ -18,6 +18,30 @@ stdout-path = "serial2:115200n8"; }; @@ -1963,7 +1963,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dt index daa9a0c601a9..a853d4b1c10d 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 @@ &hdmiphy { +@@ -161,6 +161,10 @@ status = "okay"; }; @@ -1974,7 +1974,7 @@ index daa9a0c601a9..a853d4b1c10d 100644 &i2c1 { status = "okay"; -@@ -270,6 +274,10 @@ regulator-state-mem { +@@ -270,6 +274,10 @@ }; }; @@ -2009,7 +2009,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dt index a853d4b1c10d..7d9481962f51 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts +++ b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts -@@ -104,6 +104,14 @@ user_led: led-1 { +@@ -104,6 +104,14 @@ }; }; @@ -2024,7 +2024,7 @@ index a853d4b1c10d..7d9481962f51 100644 &cpu0 { cpu-supply = <&vdd_arm>; }; -@@ -278,6 +286,10 @@ &i2s0 { +@@ -278,6 +286,10 @@ status = "okay"; }; @@ -2064,7 +2064,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rock index 4b6065dbba55..aa009063c51d 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi -@@ -331,7 +331,7 @@ sdmmc: mmc@fe320000 { +@@ -331,7 +331,7 @@ status = "disabled"; }; @@ -2096,7 +2096,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/ index bd5bde989e8d..fbbdbb0a40af 100644 --- a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi +++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi -@@ -33,7 +33,31 @@ &sdmmc { +@@ -33,7 +33,31 @@ status = "okay"; }; @@ -2153,7 +2153,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/ index fbbdbb0a40af..8fdd7ff2fdf9 100644 --- a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi +++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi -@@ -25,6 +25,10 @@ &gmac { +@@ -25,6 +25,10 @@ status = "okay"; }; @@ -2235,7 +2235,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi b/arch/arm index db22f776c68f..cdacd3483600 100644 --- a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi +++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi -@@ -192,6 +192,11 @@ regulator-state-mem { +@@ -192,6 +192,11 @@ }; }; @@ -2444,7 +2444,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/ index 8fdd7ff2fdf9..0e1a93ec3234 100644 --- a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi +++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi -@@ -14,6 +14,51 @@ vcc5v0_sys: vcc5v0-sys { +@@ -14,6 +14,51 @@ regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; }; @@ -2520,7 +2520,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts b/ index e54d1e480daa..913444548b59 100644 --- a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts +++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts -@@ -19,3 +19,15 @@ chosen { +@@ -19,3 +19,15 @@ stdout-path = "serial2:115200n8"; }; }; @@ -2566,7 +2566,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/ index 0e1a93ec3234..08b0b9fbcbc9 100644 --- a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi +++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi -@@ -24,6 +24,18 @@ sdio_pwrseq: sdio-pwrseq { +@@ -24,6 +24,18 @@ pinctrl-0 = <&wifi_enable_h>; }; @@ -2602,7 +2602,7 @@ index d5708779c285..bf10a3d29fca 100644 sdio-pwrseq { wifi_enable_h: wifi-enable-h { rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; -@@ -18,3 +24,7 @@ wifi_enable_h: wifi-enable-h { +@@ -18,3 +24,7 @@ &sdio_pwrseq { reset-gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>; }; @@ -2614,7 +2614,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts b/ index 913444548b59..d759478e1c84 100644 --- a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts +++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts -@@ -21,6 +21,12 @@ chosen { +@@ -21,6 +21,12 @@ }; &pinctrl { @@ -2627,7 +2627,7 @@ index 913444548b59..d759478e1c84 100644 sdio-pwrseq { wifi_enable_h: wifi-enable-h { rockchip,pins = <1 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>; -@@ -31,3 +37,7 @@ wifi_enable_h: wifi-enable-h { +@@ -31,3 +37,7 @@ &sdio_pwrseq { reset-gpios = <&gpio1 RK_PC3 GPIO_ACTIVE_LOW>; }; @@ -2673,7 +2673,7 @@ index 6163ae8063a7..ad7c4d00888f 100644 #include "rk3399.dtsi" #include "rk3399-opp.dtsi" -@@ -531,6 +532,43 @@ fusb302@22 { +@@ -531,6 +532,43 @@ pinctrl-names = "default"; pinctrl-0 = <&chg_cc_int_l>; vbus-supply = <&vbus_typec>; @@ -2717,7 +2717,7 @@ index 6163ae8063a7..ad7c4d00888f 100644 }; }; -@@ -717,6 +755,22 @@ &tcphy0 { +@@ -717,6 +755,22 @@ status = "okay"; }; @@ -2740,7 +2740,7 @@ index 6163ae8063a7..ad7c4d00888f 100644 &tcphy1 { status = "okay"; }; -@@ -739,6 +793,12 @@ u2phy0_host: host-port { +@@ -739,6 +793,12 @@ phy-supply = <&vcc5v0_host>; status = "okay"; }; @@ -2753,7 +2753,7 @@ index 6163ae8063a7..ad7c4d00888f 100644 }; &u2phy1 { -@@ -799,7 +859,7 @@ &usbdrd3_0 { +@@ -799,7 +859,7 @@ &usbdrd_dwc3_0 { status = "okay"; @@ -2787,7 +2787,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rock index aa009063c51d..7cc4a0267f46 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi -@@ -1725,6 +1725,32 @@ vopb_mmu: iommu@ff903f00 { +@@ -1725,6 +1725,32 @@ status = "disabled"; }; @@ -2899,7 +2899,7 @@ index e9ecffc409c0..5d7a9d96d163 100644 }; &cdn_dp { -@@ -353,10 +399,38 @@ &io_domains { +@@ -353,10 +399,38 @@ camera: &i2c7 { gpio1830-supply = <&pp1800_s0>; /* APIO4_VDD; 4c 4d */ }; @@ -2963,10 +2963,10 @@ Signed-off-by: Heiko Stuebner 1 file changed, 8 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -index 678a336010bf..06df2397bbb4 100644 +index f121203081b9..d74cf3aba6ce 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -@@ -111,10 +111,6 @@ vcc_lan: vcc3v3-phy-regulator { +@@ -111,10 +111,6 @@ regulator-boot-on; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; @@ -2977,7 +2977,7 @@ index 678a336010bf..06df2397bbb4 100644 }; vdd_log: vdd-log { -@@ -362,8 +358,6 @@ vcc_cam: SWITCH_REG1 { +@@ -362,8 +358,6 @@ regulator-name = "vcc_cam"; regulator-always-on; regulator-boot-on; @@ -2986,7 +2986,7 @@ index 678a336010bf..06df2397bbb4 100644 regulator-state-mem { regulator-off-in-suspend; }; -@@ -373,8 +367,6 @@ vcc_mipi: SWITCH_REG2 { +@@ -373,8 +367,6 @@ regulator-name = "vcc_mipi"; regulator-always-on; regulator-boot-on; @@ -3015,10 +3015,10 @@ Signed-off-by: Heiko Stuebner 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -index 06df2397bbb4..63b029a543c1 100644 +index d74cf3aba6ce..cfb4f65d18bc 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -@@ -432,8 +432,9 @@ &i2c4 { +@@ -432,8 +432,9 @@ }; &i2s0 { @@ -3054,10 +3054,10 @@ Signed-off-by: Heiko Stuebner 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -index 63b029a543c1..fb7599f07af4 100644 +index cfb4f65d18bc..ec5c12121d52 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -@@ -673,7 +673,7 @@ &usbdrd3_0 { +@@ -673,7 +673,7 @@ &usbdrd_dwc3_0 { status = "okay"; diff --git a/projects/Rockchip/patches/linux/default/linux-0002-rockchip-from-5.12.patch b/projects/Rockchip/patches/linux/default/linux-0002-rockchip-from-5.12.patch index 5578ef104f..782b7ba07b 100644 --- a/projects/Rockchip/patches/linux/default/linux-0002-rockchip-from-5.12.patch +++ b/projects/Rockchip/patches/linux/default/linux-0002-rockchip-from-5.12.patch @@ -16,7 +16,7 @@ diff --git a/arch/arm/boot/dts/rk3288-miqi.dts b/arch/arm/boot/dts/rk3288-miqi.d index cf54d5ffff2f..713f55e143c6 100644 --- a/arch/arm/boot/dts/rk3288-miqi.dts +++ b/arch/arm/boot/dts/rk3288-miqi.dts -@@ -123,6 +123,11 @@ &gmac { +@@ -123,6 +123,11 @@ status = "okay"; }; @@ -49,10 +49,10 @@ Signed-off-by: Heiko Stuebner 1 file changed, 3 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -index e546c9d1d646..169a8064673d 100644 +index 72112fe05a5c..4a04ca9dd344 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -@@ -27,6 +27,9 @@ aliases { +@@ -27,6 +27,9 @@ i2c1 = &i2c1; i2c2 = &i2c2; i2c3 = &i2c3; @@ -125,7 +125,7 @@ diff --git a/arch/arm/boot/dts/rk3xxx.dtsi b/arch/arm/boot/dts/rk3xxx.dtsi index 859a7477909f..49bcdf46d03c 100644 --- a/arch/arm/boot/dts/rk3xxx.dtsi +++ b/arch/arm/boot/dts/rk3xxx.dtsi -@@ -151,42 +151,42 @@ uart1: serial@10126000 { +@@ -151,42 +151,42 @@ }; qos_gpu: qos@1012d000 { @@ -201,7 +201,7 @@ diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index 0d89ad274268..94f691f16944 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi -@@ -1329,72 +1329,72 @@ opp-600000000 { +@@ -1329,72 +1329,72 @@ }; qos_gpu_r: qos@ffaa0000 { @@ -313,7 +313,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/px30.dtsi b/arch/arm64/boot/dts/rockch index 0d6761074b11..3ece5344574d 100644 --- a/arch/arm64/boot/dts/rockchip/px30.dtsi +++ b/arch/arm64/boot/dts/rockchip/px30.dtsi -@@ -1107,102 +1107,102 @@ vopl_mmu: iommu@ff470f00 { +@@ -1107,102 +1107,102 @@ }; qos_gmac: qos@ff518000 { @@ -498,7 +498,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts b/arch/arm64/boot/dt index 95ab6928cfd4..ecf3fcf24ff3 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts +++ b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts -@@ -84,34 +84,32 @@ standby_led: led-1 { +@@ -84,34 +84,32 @@ }; }; @@ -549,7 +549,7 @@ index 95ab6928cfd4..ecf3fcf24ff3 100644 }; &cpu0 { -@@ -163,6 +161,10 @@ &hdmi { +@@ -163,6 +161,10 @@ status = "okay"; }; @@ -560,7 +560,7 @@ index 95ab6928cfd4..ecf3fcf24ff3 100644 &hdmiphy { status = "okay"; }; -@@ -278,16 +280,12 @@ regulator-state-mem { +@@ -278,16 +280,12 @@ }; }; @@ -581,7 +581,7 @@ index 95ab6928cfd4..ecf3fcf24ff3 100644 }; &io_domains { -@@ -337,12 +335,6 @@ &sdmmc { +@@ -337,12 +335,6 @@ &spdif { pinctrl-0 = <&spdifm0_tx>; status = "okay"; @@ -619,7 +619,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi b/arch/arm64/boo index 6e553ff47534..58097245994a 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi -@@ -76,6 +76,23 @@ sound { +@@ -76,6 +76,23 @@ dais = <&i2s1_p0>; }; @@ -643,7 +643,7 @@ index 6e553ff47534..58097245994a 100644 vcc12v_dcin: vcc12v-dcin { compatible = "regulator-fixed"; regulator-name = "vcc12v_dcin"; -@@ -698,6 +715,16 @@ &sdhci { +@@ -698,6 +715,16 @@ status = "okay"; }; diff --git a/projects/Rockchip/patches/linux/default/linux-0004-rockchip-from-next.patch b/projects/Rockchip/patches/linux/default/linux-0004-rockchip-from-next.patch index db890c1c7b..86af32babc 100644 --- a/projects/Rockchip/patches/linux/default/linux-0004-rockchip-from-next.patch +++ b/projects/Rockchip/patches/linux/default/linux-0004-rockchip-from-next.patch @@ -277,10 +277,10 @@ Signed-off-by: Heiko Stuebner 1 file changed, 28 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -index fb7599f07af4..619471a1fb46 100644 +index ec5c12121d52..c5d4463e4c93 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -@@ -31,6 +31,12 @@ sdio_pwrseq: sdio-pwrseq { +@@ -31,6 +31,12 @@ reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; }; @@ -293,7 +293,7 @@ index fb7599f07af4..619471a1fb46 100644 vcc12v_dcin: dc-12v { compatible = "regulator-fixed"; regulator-name = "vcc12v_dcin"; -@@ -417,6 +423,20 @@ &i2c1 { +@@ -417,6 +423,20 @@ i2c-scl-rising-time-ns = <300>; i2c-scl-falling-time-ns = <15>; status = "okay"; @@ -314,7 +314,7 @@ index fb7599f07af4..619471a1fb46 100644 }; &i2c3 { -@@ -436,6 +456,14 @@ &i2s0 { +@@ -436,6 +456,14 @@ rockchip,capture-channels = <2>; rockchip,playback-channels = <2>; status = "okay"; diff --git a/projects/Rockchip/patches/linux/default/linux-0005-rockchip-from-list.patch b/projects/Rockchip/patches/linux/default/linux-0005-rockchip-from-list.patch index d187c25eec..c6c3fcaec2 100644 --- a/projects/Rockchip/patches/linux/default/linux-0005-rockchip-from-list.patch +++ b/projects/Rockchip/patches/linux/default/linux-0005-rockchip-from-list.patch @@ -1092,7 +1092,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 8 insertions(+) diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c -index b5f3f160c842..6eb76c6cfd45 100644 +index eb82f6aac951..16639d2b6c2b 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c @@ -1352,6 +1352,14 @@ void mmc_power_off(struct mmc_host *host) @@ -1181,39 +1181,3 @@ index f3f49cf3731b..bc8242e1dd0f 100644 }, { }, }; -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Alex Bee -Date: Wed, 27 Oct 2021 16:17:26 +0200 -Subject: [PATCH] arm64: dts: rockchip: fix audio-supply for Rock Pi 4 - -As stated in the schematics [1] and [2] P5 the APIO5 domain is supplied -by RK808-D Buck4, which in our case vcc1v8_codec - i.e. a 1.8 V regulator. - -Currently only white noise comes from the ES8316's output, which - for -whatever reason - came up only after the the correct switch from i2s0_8ch_bus -to i2s0_2ch_bus for i2s0's pinctrl was done. - -Fix this by setting the correct regulator for audio-supply. - -[1] https://dl.radxa.com/rockpi4/docs/hw/rockpi4/rockpi4_v13_sch_20181112.pdf -[2] https://dl.radxa.com/rockpi4/docs/hw/rockpi4/rockpi_4c_v12_sch_20200620.pdf - -Fixes: 1b5715c602fd ("arm64: dts: rockchip: add ROCK Pi 4 DTS support") -Signed-off-by: Alex Bee ---- - arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -index 98136c88fa49..6a434be62819 100644 ---- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -+++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -@@ -502,7 +502,7 @@ &io_domains { - status = "okay"; - - bt656-supply = <&vcc_3v0>; -- audio-supply = <&vcc_3v0>; -+ audio-supply = <&vcc1v8_codec>; - sdmmc-supply = <&vcc_sdio>; - gpio1830-supply = <&vcc_3v0>; - }; diff --git a/projects/Rockchip/patches/linux/default/linux-0010-v4l2-from-list.patch b/projects/Rockchip/patches/linux/default/linux-0010-v4l2-from-list.patch index 1d7fcf55af..bdee8130fc 100644 --- a/projects/Rockchip/patches/linux/default/linux-0010-v4l2-from-list.patch +++ b/projects/Rockchip/patches/linux/default/linux-0010-v4l2-from-list.patch @@ -20,7 +20,7 @@ Reviewed-by: Ezequiel Garcia 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/staging/media/rkvdec/rkvdec-h264.c -index 7cc3b478a5f4..054d2e3eed67 100644 +index 5487f6d0bcb6..89658c0060bc 100644 --- a/drivers/staging/media/rkvdec/rkvdec-h264.c +++ b/drivers/staging/media/rkvdec/rkvdec-h264.c @@ -752,7 +752,7 @@ static void assemble_hw_rps(struct rkvdec_ctx *ctx, @@ -47,7 +47,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 2 insertions(+) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index e68303e2b390..38982049c7b8 100644 +index a7788e7a9542..5622f4c77252 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -223,6 +223,8 @@ static int rkvdec_try_capture_fmt(struct file *file, void *priv, @@ -83,7 +83,7 @@ Signed-off-by: Jonas Karlman 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/staging/media/rkvdec/rkvdec-h264.c -index 054d2e3eed67..d46424ba88e8 100644 +index 89658c0060bc..cbaecdcd3def 100644 --- a/drivers/staging/media/rkvdec/rkvdec-h264.c +++ b/drivers/staging/media/rkvdec/rkvdec-h264.c @@ -671,8 +671,8 @@ static void assemble_hw_pps(struct rkvdec_ctx *ctx, @@ -98,7 +98,7 @@ index 054d2e3eed67..d46424ba88e8 100644 FRAME_MBS_ONLY_FLAG); WRITE_PPS(!!(sps->flags & V4L2_H264_SPS_FLAG_MB_ADAPTIVE_FRAME_FIELD), diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index 38982049c7b8..ba2026d79a1b 100644 +index 5622f4c77252..943838d17f54 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -29,8 +29,11 @@ @@ -146,7 +146,7 @@ Reviewed-by: Ezequiel Garcia 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/staging/media/rkvdec/rkvdec-h264.c -index d46424ba88e8..6536cf0d6054 100644 +index cbaecdcd3def..bf632d45282b 100644 --- a/drivers/staging/media/rkvdec/rkvdec-h264.c +++ b/drivers/staging/media/rkvdec/rkvdec-h264.c @@ -661,8 +661,8 @@ static void assemble_hw_pps(struct rkvdec_ctx *ctx, @@ -161,40 +161,6 @@ index d46424ba88e8..6536cf0d6054 100644 WRITE_PPS(sps->log2_max_frame_num_minus4, LOG2_MAX_FRAME_NUM_MINUS4); WRITE_PPS(sps->max_num_ref_frames, MAX_NUM_REF_FRAMES); -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Jonas Karlman -Date: Mon, 6 Jul 2020 21:54:35 +0000 -Subject: [PATCH] media: rkvdec: h264: Do not override output buffer sizeimage - -The output buffer sizeimage is currently forced to 2 bytes per pixel, this -can lead to high memory usage for 4K content when multiple output buffers -is created by userspace. - -Do not override output buffer sizeimage and let userspace have control of -output buffer sizeimage by only setting sizeimage if none is provided. - -Signed-off-by: Jonas Karlman ---- - drivers/staging/media/rkvdec/rkvdec-h264.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/staging/media/rkvdec/rkvdec-h264.c -index 6536cf0d6054..bf632d45282b 100644 ---- a/drivers/staging/media/rkvdec/rkvdec-h264.c -+++ b/drivers/staging/media/rkvdec/rkvdec-h264.c -@@ -1015,8 +1015,9 @@ static int rkvdec_h264_adjust_fmt(struct rkvdec_ctx *ctx, - struct v4l2_pix_format_mplane *fmt = &f->fmt.pix_mp; - - fmt->num_planes = 1; -- fmt->plane_fmt[0].sizeimage = fmt->width * fmt->height * -- RKVDEC_H264_MAX_DEPTH_IN_BYTES; -+ if (!fmt->plane_fmt[0].sizeimage) -+ fmt->plane_fmt[0].sizeimage = fmt->width * fmt->height * -+ RKVDEC_H264_MAX_DEPTH_IN_BYTES; - return 0; - } - - From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Jonas Karlman Date: Mon, 6 Jul 2020 21:54:35 +0000 @@ -593,10 +559,10 @@ index 4102c373b48a..0caac755d303 100644 { .format = V4L2_PIX_FMT_YVU410, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 3, .bpp = { 1, 1, 1, 0 }, .hdiv = 4, .vdiv = 4 }, { .format = V4L2_PIX_FMT_YUV411P, .pixel_enc = V4L2_PIXEL_ENC_YUV, .mem_planes = 1, .comp_planes = 3, .bpp = { 1, 1, 1, 0 }, .hdiv = 4, .vdiv = 1 }, diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c -index 9eda8b91d17a..1ff68c1bf14a 100644 +index 6d6d30dbbe68..b570fa7e6fc8 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c -@@ -1319,6 +1319,8 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt) +@@ -1337,6 +1337,8 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt) case V4L2_PIX_FMT_NV61: descr = "Y/CrCb 4:2:2"; break; case V4L2_PIX_FMT_NV24: descr = "Y/CbCr 4:4:4"; break; case V4L2_PIX_FMT_NV42: descr = "Y/CrCb 4:4:4"; break; @@ -682,7 +648,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index ba2026d79a1b..4f36783c7881 100644 +index 943838d17f54..a59c8981b65c 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -27,6 +27,17 @@ @@ -754,7 +720,7 @@ Signed-off-by: Jonas Karlman 2 files changed, 55 insertions(+), 6 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index 4f36783c7881..1a99b3a9ddce 100644 +index a59c8981b65c..4e07422608ad 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -38,6 +38,16 @@ static void rkvdec_fill_decoded_pixfmt(struct rkvdec_ctx *ctx, @@ -845,7 +811,7 @@ index 4f36783c7881..1a99b3a9ddce 100644 /* Always apply the frmsize constraint of the coded end. */ pix_mp->width = max(pix_mp->width, ctx->coded_fmt.fmt.pix_mp.width); -@@ -312,6 +350,7 @@ static int rkvdec_s_capture_fmt(struct file *file, void *priv, +@@ -301,6 +339,7 @@ static int rkvdec_s_capture_fmt(struct file *file, void *priv, return ret; ctx->decoded_fmt = *f; @@ -947,7 +913,7 @@ index 6f2d41b2e076..c115cd362a7f 100644 .stop = rkvdec_h264_stop, .run = rkvdec_h264_run, diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index 1a99b3a9ddce..85b9530bcddb 100644 +index 4e07422608ad..d3848aff5a53 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -31,7 +31,7 @@ static void rkvdec_fill_decoded_pixfmt(struct rkvdec_ctx *ctx, @@ -1014,7 +980,7 @@ Reviewed-by: Ezequiel Garcia 1 file changed, 13 insertions(+) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index 85b9530bcddb..539b0c5efdcc 100644 +index d3848aff5a53..ac313639c63b 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -132,6 +132,19 @@ static const struct rkvdec_ctrl_desc rkvdec_h264_ctrl_descs[] = { diff --git a/projects/Rockchip/patches/linux/default/linux-0020-drm-from-5.11.patch b/projects/Rockchip/patches/linux/default/linux-0020-drm-from-5.11.patch index 3ff851bdf3..28cd212fb9 100644 --- a/projects/Rockchip/patches/linux/default/linux-0020-drm-from-5.11.patch +++ b/projects/Rockchip/patches/linux/default/linux-0020-drm-from-5.11.patch @@ -144,7 +144,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20200921131019.91558-1-miaoq 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/gpu/drm/panfrost/panfrost_device.c b/drivers/gpu/drm/panfrost/panfrost_device.c -index bf7c34cfb84c..a83b2ff5837a 100644 +index c256929e859b..2e30686859b1 100644 --- a/drivers/gpu/drm/panfrost/panfrost_device.c +++ b/drivers/gpu/drm/panfrost/panfrost_device.c @@ -18,19 +18,13 @@ @@ -229,10 +229,10 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20201004200653.14702-1-rikar 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c -index 9fef6413741d..feb04f127b55 100644 +index 9682416056ed..f50b47ac11a8 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c -@@ -170,7 +170,7 @@ static int dw_hdmi_i2s_hook_plugged_cb(struct device *dev, void *data, +@@ -177,7 +177,7 @@ static int dw_hdmi_i2s_hook_plugged_cb(struct device *dev, void *data, return dw_hdmi_set_plugged_cb(hdmi, fn, codec_dev); } diff --git a/projects/Rockchip/patches/linux/default/linux-0021-drm-from-list.patch b/projects/Rockchip/patches/linux/default/linux-0021-drm-from-list.patch index 429da540fc..cdaff7671d 100644 --- a/projects/Rockchip/patches/linux/default/linux-0021-drm-from-list.patch +++ b/projects/Rockchip/patches/linux/default/linux-0021-drm-from-list.patch @@ -160,7 +160,7 @@ index 857d97cdc67c..b7169010622a 100644 struct vop_reg act_info; struct vop_reg dsp_info; diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c -index a6fe03c3748a..c78b711765fd 100644 +index 39e1e1ebea92..5f78697da1b6 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c @@ -50,6 +50,23 @@ static const uint32_t formats_win_full[] = { @@ -230,8 +230,8 @@ index a6fe03c3748a..c78b711765fd 100644 .format = VOP_REG(RK3288_WIN0_CTRL0, 0x7, 1), + .fmt_10 = VOP_REG(RK3288_WIN0_CTRL0, 0x1, 4), .rb_swap = VOP_REG(RK3288_WIN0_CTRL0, 0x1, 12), + .x_mir_en = VOP_REG(RK3288_WIN0_CTRL0, 0x1, 21), .y_mir_en = VOP_REG(RK3288_WIN0_CTRL0, 0x1, 22), - .act_info = VOP_REG(RK3288_WIN0_ACT_INFO, 0x1fff1fff, 0), From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Qinglang Miao @@ -257,7 +257,7 @@ Signed-off-by: Qinglang Miao 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/rockchip/cdn-dp-core.c b/drivers/gpu/drm/rockchip/cdn-dp-core.c -index 6802d9b65f82..acf554c6e559 100644 +index dec54c70e008..de7b162f44fe 100644 --- a/drivers/gpu/drm/rockchip/cdn-dp-core.c +++ b/drivers/gpu/drm/rockchip/cdn-dp-core.c @@ -99,7 +99,7 @@ static int cdn_dp_clk_enable(struct cdn_dp_device *dp) @@ -471,10 +471,10 @@ Reviewed-by: Rob Herring 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/drivers/gpu/drm/panfrost/panfrost_mmu.c b/drivers/gpu/drm/panfrost/panfrost_mmu.c -index 198686216317..5a3d18c05802 100644 +index 7fc45b13a52c..0dbbf2cf298a 100644 --- a/drivers/gpu/drm/panfrost/panfrost_mmu.c +++ b/drivers/gpu/drm/panfrost/panfrost_mmu.c -@@ -585,22 +585,20 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data) +@@ -632,22 +632,20 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data) { struct panfrost_device *pfdev = data; u32 status = mmu_read(pfdev, MMU_INT_RAWSTAT); @@ -504,7 +504,7 @@ index 198686216317..5a3d18c05802 100644 /* decode the fault status */ exception_type = fault_status & 0xFF; -@@ -611,8 +609,8 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data) +@@ -658,8 +656,8 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data) /* Page fault only */ ret = -1; @@ -515,7 +515,7 @@ index 198686216317..5a3d18c05802 100644 if (ret) /* terminal fault, print info about the fault */ -@@ -624,7 +622,7 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data) +@@ -671,7 +669,7 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data) "exception type 0x%X: %s\n" "access type 0x%X: %s\n" "source id 0x%X\n", @@ -524,7 +524,7 @@ index 198686216317..5a3d18c05802 100644 "TODO", fault_status, (fault_status & (1 << 10) ? "DECODER FAULT" : "SLAVE FAULT"), -@@ -633,6 +631,10 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data) +@@ -680,6 +678,10 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data) source_id); status &= ~mask; diff --git a/projects/Rockchip/patches/linux/default/linux-1000-drm-rockchip.patch b/projects/Rockchip/patches/linux/default/linux-1000-drm-rockchip.patch index 27fa7fbfb7..630b6d8271 100644 --- a/projects/Rockchip/patches/linux/default/linux-1000-drm-rockchip.patch +++ b/projects/Rockchip/patches/linux/default/linux-1000-drm-rockchip.patch @@ -183,7 +183,7 @@ index b7169010622a..0b1984585082 100644 #define VOP_FEATURE_OUTPUT_RGB10 BIT(0) #define VOP_FEATURE_INTERNAL_RGB BIT(1) diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c -index c78b711765fd..e8b0cc4dc99d 100644 +index 5f78697da1b6..15b0e3c51a05 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c @@ -705,6 +705,7 @@ static const struct vop_intr rk3288_vop_intr = { @@ -210,7 +210,7 @@ index c78b711765fd..e8b0cc4dc99d 100644 .intr = &rk3366_vop_intr, .common = &rk3288_common, .modeset = &rk3288_modeset, -@@ -934,6 +937,7 @@ static const struct vop_afbc rk3399_vop_afbc = { +@@ -936,6 +939,7 @@ static const struct vop_afbc rk3399_vop_afbc = { static const struct vop_data rk3399_vop_big = { .version = VOP_VERSION(3, 5), .feature = VOP_FEATURE_OUTPUT_RGB10, @@ -218,7 +218,7 @@ index c78b711765fd..e8b0cc4dc99d 100644 .intr = &rk3366_vop_intr, .common = &rk3288_common, .modeset = &rk3288_modeset, -@@ -960,6 +964,7 @@ static const struct vop_win_yuv2yuv_data rk3399_vop_lit_win_yuv2yuv_data[] = { +@@ -962,6 +966,7 @@ static const struct vop_win_yuv2yuv_data rk3399_vop_lit_win_yuv2yuv_data[] = { static const struct vop_data rk3399_vop_lit = { .version = VOP_VERSION(3, 6), @@ -226,7 +226,7 @@ index c78b711765fd..e8b0cc4dc99d 100644 .intr = &rk3366_vop_intr, .common = &rk3288_common, .modeset = &rk3288_modeset, -@@ -980,6 +985,7 @@ static const struct vop_win_data rk3228_vop_win_data[] = { +@@ -982,6 +987,7 @@ static const struct vop_win_data rk3228_vop_win_data[] = { static const struct vop_data rk3228_vop = { .version = VOP_VERSION(3, 7), .feature = VOP_FEATURE_OUTPUT_RGB10, @@ -234,7 +234,7 @@ index c78b711765fd..e8b0cc4dc99d 100644 .intr = &rk3366_vop_intr, .common = &rk3288_common, .modeset = &rk3288_modeset, -@@ -1051,6 +1057,7 @@ static const struct vop_win_data rk3328_vop_win_data[] = { +@@ -1053,6 +1059,7 @@ static const struct vop_win_data rk3328_vop_win_data[] = { static const struct vop_data rk3328_vop = { .version = VOP_VERSION(3, 8), .feature = VOP_FEATURE_OUTPUT_RGB10, @@ -340,7 +340,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 23de359a1dec..f78851e7ef16 100644 +index 515e6f187dc7..7058588f93fa 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -181,7 +181,7 @@ static const struct dw_hdmi_curr_ctrl rockchip_cur_ctr[] = { @@ -367,7 +367,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index f78851e7ef16..a308adb56d2f 100644 +index 7058588f93fa..db425e576cf6 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -183,6 +183,7 @@ static const struct dw_hdmi_phy_config rockchip_phy_config[] = { @@ -397,7 +397,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index a308adb56d2f..5b273f26f177 100644 +index db425e576cf6..6943b9a4b02e 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -160,20 +160,8 @@ static const struct dw_hdmi_mpll_config rockchip_mpll_cfg[] = { @@ -455,7 +455,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 69 insertions(+), 61 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 5b273f26f177..b5d2cdaa24fa 100644 +index 6943b9a4b02e..b819b621d1af 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -79,80 +79,88 @@ struct rockchip_hdmi { @@ -628,7 +628,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index b5d2cdaa24fa..5f7ab8e6bb72 100644 +index b819b621d1af..3d6094f6cbd0 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -221,19 +221,11 @@ dw_hdmi_rockchip_mode_valid(struct dw_hdmi *hdmi, void *data, @@ -667,7 +667,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 5f7ab8e6bb72..0e7ca368314d 100644 +index 3d6094f6cbd0..17fc37cc9839 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -225,7 +225,7 @@ dw_hdmi_rockchip_mode_valid(struct dw_hdmi *hdmi, void *data, @@ -693,7 +693,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 0e7ca368314d..6f7641fbe6cc 100644 +index 17fc37cc9839..6d3b6a1c8e2f 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -306,6 +306,8 @@ static int dw_hdmi_rockchip_genphy_init(struct dw_hdmi *dw_hdmi, void *data, @@ -721,7 +721,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 6 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 6f7641fbe6cc..cc20a83fa9b8 100644 +index 6d3b6a1c8e2f..d7ba824fe6ad 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -396,9 +396,6 @@ static struct rockchip_hdmi_chip_data rk3228_chip_data = { @@ -756,20 +756,10 @@ Signed-off-by: Jonas Karlman 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index cc20a83fa9b8..fd614c8a3486 100644 +index d7ba824fe6ad..1dccfb74516d 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -@@ -516,8 +516,7 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master, - - ret = clk_prepare_enable(hdmi->vpll_clk); - if (ret) { -- DRM_DEV_ERROR(hdmi->dev, "Failed to enable HDMI vpll: %d\n", -- ret); -+ DRM_DEV_ERROR(hdmi->dev, "Failed to enable vpll: %d\n", ret); - return ret; - } - -@@ -525,12 +524,16 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master, +@@ -518,19 +518,22 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master, if (IS_ERR(hdmi->phy)) { ret = PTR_ERR(hdmi->phy); if (ret != -EPROBE_DEFER) @@ -779,6 +769,14 @@ index cc20a83fa9b8..fd614c8a3486 100644 + goto err_disable_clk; } + ret = clk_prepare_enable(hdmi->vpll_clk); + if (ret) { +- DRM_DEV_ERROR(hdmi->dev, "Failed to enable HDMI vpll: %d\n", +- ret); ++ DRM_DEV_ERROR(hdmi->dev, "Failed to enable vpll: %d\n", ret); + return ret; + } + drm_encoder_helper_add(encoder, &dw_hdmi_rockchip_encoder_helper_funcs); - drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS); + ret = drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS); @@ -846,7 +844,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c -index e8b0cc4dc99d..4a991d87f00e 100644 +index 15b0e3c51a05..5f8a10ca1e49 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c @@ -702,7 +702,7 @@ static const struct vop_intr rk3288_vop_intr = { @@ -878,7 +876,7 @@ index e8b0cc4dc99d..4a991d87f00e 100644 static const int rk3368_vop_intrs[] = { FS_INTR, 0, 0, -@@ -1080,8 +1093,10 @@ static const struct of_device_id vop_driver_dt_match[] = { +@@ -1082,8 +1095,10 @@ static const struct of_device_id vop_driver_dt_match[] = { .data = &rk3066_vop }, { .compatible = "rockchip,rk3188-vop", .data = &rk3188_vop }, @@ -906,7 +904,7 @@ diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index 94f691f16944..1c62775f5b3c 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi -@@ -1037,7 +1037,7 @@ rga: rga@ff920000 { +@@ -1037,7 +1037,7 @@ }; vopb: vop@ff930000 { @@ -915,7 +913,7 @@ index 94f691f16944..1c62775f5b3c 100644 reg = <0x0 0xff930000 0x0 0x19c>, <0x0 0xff931000 0x0 0x1000>; interrupts = ; clocks = <&cru ACLK_VOP0>, <&cru DCLK_VOP0>, <&cru HCLK_VOP0>; -@@ -1087,7 +1087,7 @@ vopb_mmu: iommu@ff930300 { +@@ -1087,7 +1087,7 @@ }; vopl: vop@ff940000 { @@ -939,7 +937,7 @@ Signed-off-by: Jonas Karlman 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index 0c79a9ba48bb..50199329ad6f 100644 +index 29c0eb4bd754..8b07b055b9a3 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -137,7 +137,8 @@ struct dw_hdmi_phy_data { @@ -952,7 +950,7 @@ index 0c79a9ba48bb..50199329ad6f 100644 }; struct dw_hdmi { -@@ -1441,7 +1442,8 @@ static int dw_hdmi_phy_power_on(struct dw_hdmi *hdmi) +@@ -1449,7 +1450,8 @@ static int dw_hdmi_phy_power_on(struct dw_hdmi *hdmi) */ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, const struct dw_hdmi_plat_data *pdata, @@ -962,7 +960,7 @@ index 0c79a9ba48bb..50199329ad6f 100644 { const struct dw_hdmi_mpll_config *mpll_config = pdata->mpll_cfg; const struct dw_hdmi_curr_ctrl *curr_ctrl = pdata->cur_ctr; -@@ -1516,9 +1518,9 @@ static int hdmi_phy_configure(struct dw_hdmi *hdmi, +@@ -1524,9 +1526,9 @@ static int hdmi_phy_configure(struct dw_hdmi *hdmi, /* Write to the PHY as configured by the platform */ if (pdata->configure_phy) @@ -1016,10 +1014,10 @@ Signed-off-by: Jonas Karlman 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index 50199329ad6f..2581789178c7 100644 +index 8b07b055b9a3..fe4e9876ab70 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -@@ -1448,6 +1448,7 @@ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, +@@ -1456,6 +1456,7 @@ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, const struct dw_hdmi_mpll_config *mpll_config = pdata->mpll_cfg; const struct dw_hdmi_curr_ctrl *curr_ctrl = pdata->cur_ctr; const struct dw_hdmi_phy_config *phy_config = pdata->phy_config; @@ -1027,7 +1025,7 @@ index 50199329ad6f..2581789178c7 100644 /* TOFIX Will need 420 specific PHY configuration tables */ -@@ -1457,11 +1458,11 @@ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, +@@ -1465,11 +1466,11 @@ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, break; for (; curr_ctrl->mpixelclock != ~0UL; curr_ctrl++) @@ -1041,7 +1039,7 @@ index 50199329ad6f..2581789178c7 100644 break; if (mpll_config->mpixelclock == ~0UL || -@@ -1469,11 +1470,17 @@ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, +@@ -1477,11 +1478,17 @@ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, phy_config->mpixelclock == ~0UL) return -EINVAL; @@ -1075,10 +1073,10 @@ Signed-off-by: Jonas Karlman 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index 2581789178c7..6d319b95b992 100644 +index fe4e9876ab70..ab2a97574fa7 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -@@ -1450,7 +1450,9 @@ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, +@@ -1458,7 +1458,9 @@ static int hdmi_phy_configure_dwc_hdmi_3d_tx(struct dw_hdmi *hdmi, const struct dw_hdmi_phy_config *phy_config = pdata->phy_config; int depth; @@ -1113,7 +1111,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index fd614c8a3486..c22add144cf4 100644 +index 1dccfb74516d..be03171cba64 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -221,8 +221,15 @@ dw_hdmi_rockchip_mode_valid(struct dw_hdmi *hdmi, void *data, @@ -1154,7 +1152,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 41 insertions(+) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index c22add144cf4..1e558af2c9b2 100644 +index be03171cba64..d292827a1a7e 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -165,6 +165,46 @@ static const struct dw_hdmi_mpll_config rockchip_mpll_cfg[] = { @@ -1225,7 +1223,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 41 insertions(+) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 1e558af2c9b2..6dbd0e422ca1 100644 +index d292827a1a7e..f79db3933cab 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -205,6 +205,46 @@ static const struct dw_hdmi_mpll_config rockchip_mpll_cfg_420[] = { @@ -1302,7 +1300,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 78 insertions(+), 32 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 6dbd0e422ca1..510ae5d5f133 100644 +index f79db3933cab..0b18bef489b0 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -68,6 +68,7 @@ struct rockchip_hdmi { @@ -1432,7 +1430,7 @@ index 6dbd0e422ca1..510ae5d5f133 100644 struct rockchip_hdmi *hdmi; int ret; @@ -618,19 +647,21 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master, - goto err_disable_clk; + return ret; } - drm_encoder_helper_add(encoder, &dw_hdmi_rockchip_encoder_helper_funcs); @@ -1706,7 +1704,7 @@ diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index 1c62775f5b3c..5b65874525cd 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi -@@ -1046,6 +1046,8 @@ vopb: vop@ff930000 { +@@ -1046,6 +1046,8 @@ resets = <&cru SRST_LCDC0_AXI>, <&cru SRST_LCDC0_AHB>, <&cru SRST_LCDC0_DCLK>; reset-names = "axi", "ahb", "dclk"; iommus = <&vopb_mmu>; @@ -1950,7 +1948,7 @@ diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index 5b65874525cd..61d97fb22be9 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi -@@ -1104,11 +1104,6 @@ vopl_out: port { +@@ -1104,11 +1104,6 @@ #address-cells = <1>; #size-cells = <0>; @@ -1962,7 +1960,7 @@ index 5b65874525cd..61d97fb22be9 100644 vopl_out_edp: endpoint@1 { reg = <1>; remote-endpoint = <&edp_in_vopl>; -@@ -1249,10 +1244,6 @@ hdmi_in_vopb: endpoint@0 { +@@ -1249,10 +1244,6 @@ reg = <0>; remote-endpoint = <&vopb_out_hdmi>; }; @@ -1977,7 +1975,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rock index 7cc4a0267f46..dc21f5451fcd 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi -@@ -1639,11 +1639,6 @@ vopl_out_edp: endpoint@1 { +@@ -1639,11 +1639,6 @@ remote-endpoint = <&edp_in_vopl>; }; @@ -1989,7 +1987,7 @@ index 7cc4a0267f46..dc21f5451fcd 100644 vopl_out_mipi1: endpoint@3 { reg = <3>; remote-endpoint = <&mipi1_in_vopl>; -@@ -1815,10 +1810,6 @@ hdmi_in_vopb: endpoint@0 { +@@ -1815,10 +1810,6 @@ reg = <0>; remote-endpoint = <&vopb_out_hdmi>; }; @@ -2012,10 +2010,10 @@ Subject: [PATCH] WIP: drm/bridge: dw-hdmi: limit mode and bus format to 1 file changed, 76 insertions(+), 44 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index 6d319b95b992..c2425d7fc465 100644 +index ab2a97574fa7..b382fc2f8156 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -@@ -1859,6 +1859,21 @@ static void hdmi_config_drm_infoframe(struct dw_hdmi *hdmi, +@@ -1867,6 +1867,21 @@ static void hdmi_config_drm_infoframe(struct dw_hdmi *hdmi, HDMI_FC_PACKET_TX_EN_DRM_MASK, HDMI_FC_PACKET_TX_EN); } @@ -2037,7 +2035,7 @@ index 6d319b95b992..c2425d7fc465 100644 static void hdmi_av_composer(struct dw_hdmi *hdmi, const struct drm_display_info *display, const struct drm_display_mode *mode) -@@ -1870,29 +1885,11 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi, +@@ -1878,29 +1893,11 @@ static void hdmi_av_composer(struct dw_hdmi *hdmi, unsigned int vdisplay, hdisplay; vmode->mpixelclock = mode->clock * 1000; @@ -2070,7 +2068,7 @@ index 6d319b95b992..c2425d7fc465 100644 dev_dbg(hdmi->dev, "final tmdsclock = %d\n", vmode->mtmdsclock); /* Set up HDMI_FC_INVIDCONF */ -@@ -2544,8 +2541,21 @@ static int dw_hdmi_connector_create(struct dw_hdmi *hdmi) +@@ -2552,8 +2549,21 @@ static int dw_hdmi_connector_create(struct dw_hdmi *hdmi) * - MEDIA_BUS_FMT_RGB888_1X24, */ @@ -2094,7 +2092,7 @@ index 6d319b95b992..c2425d7fc465 100644 static u32 *dw_hdmi_bridge_atomic_get_output_bus_fmts(struct drm_bridge *bridge, struct drm_bridge_state *bridge_state, -@@ -2557,8 +2567,6 @@ static u32 *dw_hdmi_bridge_atomic_get_output_bus_fmts(struct drm_bridge *bridge, +@@ -2565,8 +2575,6 @@ static u32 *dw_hdmi_bridge_atomic_get_output_bus_fmts(struct drm_bridge *bridge, struct drm_display_info *info = &conn->display_info; struct drm_display_mode *mode = &crtc_state->mode; u8 max_bpc = conn_state->max_requested_bpc; @@ -2103,7 +2101,7 @@ index 6d319b95b992..c2425d7fc465 100644 u32 *output_fmts; unsigned int i = 0; -@@ -2581,29 +2589,33 @@ static u32 *dw_hdmi_bridge_atomic_get_output_bus_fmts(struct drm_bridge *bridge, +@@ -2589,29 +2597,33 @@ static u32 *dw_hdmi_bridge_atomic_get_output_bus_fmts(struct drm_bridge *bridge, * If the current mode enforces 4:2:0, force the output but format * to 4:2:0 and do not add the YUV422/444/RGB formats */ @@ -2145,7 +2143,7 @@ index 6d319b95b992..c2425d7fc465 100644 } /* -@@ -2612,40 +2624,51 @@ static u32 *dw_hdmi_bridge_atomic_get_output_bus_fmts(struct drm_bridge *bridge, +@@ -2620,40 +2632,51 @@ static u32 *dw_hdmi_bridge_atomic_get_output_bus_fmts(struct drm_bridge *bridge, */ if (max_bpc >= 16 && info->bpc == 16) { @@ -2208,7 +2206,7 @@ index 6d319b95b992..c2425d7fc465 100644 *num_output_fmts = i; -@@ -2825,11 +2848,20 @@ dw_hdmi_bridge_mode_valid(struct drm_bridge *bridge, +@@ -2833,11 +2856,20 @@ dw_hdmi_bridge_mode_valid(struct drm_bridge *bridge, struct dw_hdmi *hdmi = bridge->driver_private; const struct dw_hdmi_plat_data *pdata = hdmi->plat_data; enum drm_mode_status mode_status = MODE_OK; @@ -2241,7 +2239,7 @@ Subject: [PATCH] WIP: drm/rockchip: dw_hdmi: add 10-bit rgb bus format 2 files changed, 43 insertions(+) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 510ae5d5f133..43ad0278fad1 100644 +index 0b18bef489b0..ffb8da9ce721 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -77,6 +77,7 @@ struct rockchip_hdmi { @@ -2359,10 +2357,10 @@ Signed-off-by: Jonas Karlman 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index c2425d7fc465..f86b8fa40ab6 100644 +index b382fc2f8156..994f4f947506 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -@@ -1646,6 +1646,7 @@ static void hdmi_config_AVI(struct dw_hdmi *hdmi, +@@ -1654,6 +1654,7 @@ static void hdmi_config_AVI(struct dw_hdmi *hdmi, const struct drm_connector *connector, const struct drm_display_mode *mode) { @@ -2370,7 +2368,7 @@ index c2425d7fc465..f86b8fa40ab6 100644 struct hdmi_avi_infoframe frame; u8 val; -@@ -1703,6 +1704,8 @@ static void hdmi_config_AVI(struct dw_hdmi *hdmi, +@@ -1711,6 +1712,8 @@ static void hdmi_config_AVI(struct dw_hdmi *hdmi, HDMI_EXTENDED_COLORIMETRY_XV_YCC_601; } @@ -2379,7 +2377,7 @@ index c2425d7fc465..f86b8fa40ab6 100644 /* * The Designware IP uses a different byte format from standard * AVI info frames, though generally the bits are in the correct -@@ -2431,7 +2434,8 @@ static int dw_hdmi_connector_atomic_check(struct drm_connector *connector, +@@ -2439,7 +2442,8 @@ static int dw_hdmi_connector_atomic_check(struct drm_connector *connector, if (!crtc) return 0; @@ -2389,7 +2387,7 @@ index c2425d7fc465..f86b8fa40ab6 100644 crtc_state = drm_atomic_get_crtc_state(state, crtc); if (IS_ERR(crtc_state)) return PTR_ERR(crtc_state); -@@ -2499,6 +2503,8 @@ static int dw_hdmi_connector_create(struct dw_hdmi *hdmi) +@@ -2507,6 +2511,8 @@ static int dw_hdmi_connector_create(struct dw_hdmi *hdmi) drm_connector_attach_max_bpc_property(connector, 8, 16); @@ -2412,7 +2410,7 @@ Subject: [PATCH] WIP: drm/rockchip: add yuv444 support 4 files changed, 77 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 43ad0278fad1..c8eaeb484672 100644 +index ffb8da9ce721..460375e8584c 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -62,6 +62,7 @@ struct rockchip_hdmi_chip_data { @@ -2572,7 +2570,7 @@ index 0b1984585082..72dd670bf2a7 100644 struct vop_intr { diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c -index 4a991d87f00e..3b87288cca1c 100644 +index 5f8a10ca1e49..baccb09acc0b 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c @@ -667,6 +667,11 @@ static const struct vop_common rk3288_common = { @@ -2587,7 +2585,7 @@ index 4a991d87f00e..3b87288cca1c 100644 }; /* -@@ -1034,6 +1039,10 @@ static const struct vop_output rk3328_output = { +@@ -1036,6 +1041,10 @@ static const struct vop_output rk3328_output = { static const struct vop_misc rk3328_misc = { .global_regdone_en = VOP_REG(RK3328_SYS_CTRL, 0x1, 11), @@ -2598,7 +2596,7 @@ index 4a991d87f00e..3b87288cca1c 100644 }; static const struct vop_common rk3328_common = { -@@ -1046,6 +1055,11 @@ static const struct vop_common rk3328_common = { +@@ -1048,6 +1057,11 @@ static const struct vop_common rk3328_common = { .dsp_blank = VOP_REG(RK3328_DSP_CTRL0, 0x3, 18), .out_mode = VOP_REG(RK3328_DSP_CTRL0, 0xf, 0), .cfg_done = VOP_REG_SYNC(RK3328_REG_CFG_DONE, 0x1, 0), @@ -2624,7 +2622,7 @@ Subject: [PATCH] WIP: drm/rockchip: add yuv420 support 4 files changed, 47 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index c8eaeb484672..9fe690570e3d 100644 +index 460375e8584c..d0e12aaae939 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -386,9 +386,21 @@ static bool is_yuv444(u32 format) @@ -2760,7 +2758,7 @@ index 72dd670bf2a7..a997578e174a 100644 /* output flags */ #define ROCKCHIP_OUTPUT_DSI_DUAL BIT(0) diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c -index 3b87288cca1c..60ff2f7fd9ac 100644 +index baccb09acc0b..cca28de06152 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c @@ -669,6 +669,7 @@ static const struct vop_common rk3288_common = { @@ -2771,7 +2769,7 @@ index 3b87288cca1c..60ff2f7fd9ac 100644 .dsp_data_swap = VOP_REG(RK3288_DSP_CTRL0, 0x1f, 12), .dsp_out_yuv = VOP_REG(RK3288_POST_SCL_CTRL, 0x1, 2), .dsp_background = VOP_REG(RK3288_DSP_BG, 0xffffffff, 0), -@@ -1057,6 +1058,7 @@ static const struct vop_common rk3328_common = { +@@ -1059,6 +1060,7 @@ static const struct vop_common rk3328_common = { .cfg_done = VOP_REG_SYNC(RK3328_REG_CFG_DONE, 0x1, 0), .overlay_mode = VOP_REG(RK3328_SYS_CTRL, 0x1, 16), @@ -2791,7 +2789,7 @@ Subject: [PATCH] drm/rockchip: enable ycbcr_420_allowed and ycbcr_444_allowed 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index 9fe690570e3d..bccdbb3e0a54 100644 +index d0e12aaae939..b01e8d6627f4 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -595,6 +595,7 @@ static const struct dw_hdmi_phy_ops rk3228_hdmi_phy_ops = { @@ -2826,7 +2824,7 @@ Signed-off-by: Alex Bee 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index bccdbb3e0a54..a612bf3da9ee 100644 +index b01e8d6627f4..7ba2faf338cd 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -305,16 +305,30 @@ dw_hdmi_rockchip_mode_valid(struct dw_hdmi *hdmi, void *data, @@ -2874,7 +2872,7 @@ Subject: [PATCH] !fixup drm/rockchip: rk3368's vop does not support 10-bit 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c -index 60ff2f7fd9ac..f791d8504dba 100644 +index cca28de06152..071803a77939 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c @@ -756,8 +756,8 @@ static const struct vop_intr rk3368_vop_intr = { @@ -2900,10 +2898,10 @@ Signed-off-by: Alex Bee 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c -index f791d8504dba..af6fe3687f09 100644 +index 071803a77939..b1dbed5ba2da 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c -@@ -1074,12 +1074,36 @@ static const struct vop_intr rk3328_vop_intr = { +@@ -1076,12 +1076,36 @@ static const struct vop_intr rk3328_vop_intr = { .clear = VOP_REG_MASK_SYNC(RK3328_INTR_CLEAR0, 0xffff, 0), }; @@ -3014,10 +3012,10 @@ Signed-off-by: Jonas Karlman 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -index 169a8064673d..8b76a7b16f00 100644 +index 4a04ca9dd344..2e9fa9f13806 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -@@ -805,8 +805,8 @@ cru: clock-controller@ff440000 { +@@ -805,8 +805,8 @@ <0>, <24000000>, <24000000>, <24000000>, <15000000>, <15000000>, @@ -3085,7 +3083,7 @@ Signed-off-by: Alex Bee 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index f86b8fa40ab6..3340aef73d8d 100644 +index 994f4f947506..8329c07e47ac 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -81,15 +81,15 @@ static const u16 csc_coeff_rgb_out_eitu709[3][4] = { @@ -3445,10 +3443,10 @@ Signed-off-by: Algea Cao 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index 3340aef73d8d..d798846579f5 100644 +index 8329c07e47ac..398c6c036e3f 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -@@ -1060,7 +1060,7 @@ static void hdmi_video_csc(struct dw_hdmi *hdmi) +@@ -1068,7 +1068,7 @@ static void hdmi_video_csc(struct dw_hdmi *hdmi) if (is_color_space_interpolation(hdmi)) interpolation = HDMI_CSC_CFG_INTMODE_CHROMA_INT_FORMULA1; else if (is_color_space_decimation(hdmi)) @@ -3475,7 +3473,7 @@ Signed-off-by: Alex Bee 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c -index a612bf3da9ee..e4cfa6adbd87 100644 +index 7ba2faf338cd..2b32df8a8466 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c @@ -329,7 +329,7 @@ dw_hdmi_rockchip_mode_valid(struct dw_hdmi *hdmi, void *data, @@ -3562,10 +3560,10 @@ Signed-off-by: Jonas Karlman 4 files changed, 29 insertions(+), 1 deletion(-) diff --git a/drivers/media/cec/core/cec-adap.c b/drivers/media/cec/core/cec-adap.c -index d5d5d28d0b36..06f30ff78723 100644 +index 2e5698fbc3a8..ba627cf8cd35 100644 --- a/drivers/media/cec/core/cec-adap.c +++ b/drivers/media/cec/core/cec-adap.c -@@ -1613,8 +1613,15 @@ void cec_s_phys_addr(struct cec_adapter *adap, u16 phys_addr, bool block) +@@ -1614,8 +1614,15 @@ void cec_s_phys_addr(struct cec_adapter *adap, u16 phys_addr, bool block) if (IS_ERR_OR_NULL(adap)) return; @@ -3673,14 +3671,14 @@ depending on sink's implementation. Signed-off-by: Alex Bee --- - drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 16 ++++++++-------- + drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -index d798846579f5..184a4a47558e 100644 +index 398c6c036e3f..ebde464454fb 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c -@@ -3052,18 +3052,11 @@ static irqreturn_t dw_hdmi_irq(int irq, void *dev_id) +@@ -3060,18 +3060,11 @@ static irqreturn_t dw_hdmi_irq(int irq, void *dev_id) * ask the source to re-read the EDID. */ if (intr_stat & @@ -3700,7 +3698,7 @@ index d798846579f5..184a4a47558e 100644 if (intr_stat & HDMI_IH_PHY_STAT0_HPD) { enum drm_connector_status status = phy_int_pol & HDMI_PHY_HPD ? connector_status_connected -@@ -3077,6 +3070,14 @@ static irqreturn_t dw_hdmi_irq(int irq, void *dev_id) +@@ -3085,6 +3078,14 @@ static irqreturn_t dw_hdmi_irq(int irq, void *dev_id) drm_helper_hpd_irq_event(hdmi->bridge.dev); drm_bridge_hpd_notify(&hdmi->bridge, status); } diff --git a/projects/Rockchip/patches/linux/default/linux-1001-v4l2-rockchip.patch b/projects/Rockchip/patches/linux/default/linux-1001-v4l2-rockchip.patch index 0e33f0bfd2..e9cd7e8a84 100644 --- a/projects/Rockchip/patches/linux/default/linux-1001-v4l2-rockchip.patch +++ b/projects/Rockchip/patches/linux/default/linux-1001-v4l2-rockchip.patch @@ -10,7 +10,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index 539b0c5efdcc..e3615c4125a8 100644 +index ac313639c63b..48361783e671 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -1032,7 +1032,8 @@ static irqreturn_t rkvdec_irq_handler(int irq, void *priv) @@ -46,7 +46,7 @@ Signed-off-by: Jonas Karlman 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index e3615c4125a8..e5842aa83225 100644 +index 48361783e671..6b9508635be5 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -1153,9 +1153,9 @@ static int rkvdec_remove(struct platform_device *pdev) @@ -712,7 +712,7 @@ index 15b9bee92016..3acc914888f6 100644 #define RKVDEC_REG_SYSCTRL 0x008 #define RKVDEC_IN_ENDIAN BIT(0) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index e5842aa83225..b4c3f4f7baac 100644 +index 6b9508635be5..c840a0912647 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -10,12 +10,15 @@ @@ -869,7 +869,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rock index dc21f5451fcd..da09403a6860 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi -@@ -1022,7 +1022,10 @@ power-domain@RK3399_PD_VCODEC { +@@ -1022,7 +1022,10 @@ power-domain@RK3399_PD_VDU { reg = ; clocks = <&cru ACLK_VDU>, @@ -881,7 +881,7 @@ index dc21f5451fcd..da09403a6860 100644 pm_qos = <&qos_video_m1_r>, <&qos_video_m1_w>; }; -@@ -1283,6 +1286,11 @@ vdec: video-codec@ff660000 { +@@ -1283,6 +1286,11 @@ clock-names = "axi", "ahb", "cabac", "core"; iommus = <&vdec_mmu>; power-domains = <&power RK3399_PD_VDU>; @@ -908,7 +908,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rock index da09403a6860..59b69f069b0c 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi -@@ -1279,7 +1279,7 @@ vpu_mmu: iommu@ff650800 { +@@ -1279,7 +1279,7 @@ vdec: video-codec@ff660000 { compatible = "rockchip,rk3399-vdec"; @@ -946,10 +946,10 @@ index dfafdb671798..360b750e5514 100644 reg: maxItems: 1 diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -index 8b76a7b16f00..ee539487dfc7 100644 +index 2e9fa9f13806..91aaedccec90 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -@@ -326,6 +326,10 @@ power-domain@RK3328_PD_HEVC { +@@ -326,6 +326,10 @@ }; power-domain@RK3328_PD_VIDEO { reg = ; @@ -960,7 +960,7 @@ index 8b76a7b16f00..ee539487dfc7 100644 }; power-domain@RK3328_PD_VPU { reg = ; -@@ -670,6 +674,26 @@ vpu_mmu: iommu@ff350800 { +@@ -670,6 +674,26 @@ power-domains = <&power RK3328_PD_VPU>; }; @@ -987,7 +987,7 @@ index 8b76a7b16f00..ee539487dfc7 100644 rkvdec_mmu: iommu@ff360480 { compatible = "rockchip,iommu"; reg = <0x0 0xff360480 0x0 0x40>, <0x0 0xff3604c0 0x0 0x40>; -@@ -678,7 +702,7 @@ rkvdec_mmu: iommu@ff360480 { +@@ -678,7 +702,7 @@ clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>; clock-names = "aclk", "iface"; #iommu-cells = <0>; @@ -1008,7 +1008,7 @@ Signed-off-by: Alex Bee 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index b4c3f4f7baac..7df90a03e7d4 100644 +index c840a0912647..3752acd6d370 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -1142,10 +1142,12 @@ static int rkvdec_probe(struct platform_device *pdev) diff --git a/projects/Rockchip/patches/linux/default/linux-1002-for-libreelec.patch b/projects/Rockchip/patches/linux/default/linux-1002-for-libreelec.patch index fffd1b61ff..ca16496f1a 100644 --- a/projects/Rockchip/patches/linux/default/linux-1002-for-libreelec.patch +++ b/projects/Rockchip/patches/linux/default/linux-1002-for-libreelec.patch @@ -11,14 +11,14 @@ is running at the same time (voltage to high) Signed-off-by: Alex Bee --- - arch/arm64/boot/dts/rockchip/rk3328.dtsi | 33 ++++++++++++++++++++++++ + arch/arm64/boot/dts/rockchip/rk3328.dtsi | 34 ++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -index ee539487dfc7..da54409aa50c 100644 +index 91aaedccec90..9ec15415d30e 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -@@ -321,6 +321,10 @@ power: power-controller { +@@ -321,6 +321,10 @@ #address-cells = <1>; #size-cells = <0>; @@ -29,7 +29,7 @@ index ee539487dfc7..da54409aa50c 100644 power-domain@RK3328_PD_HEVC { reg = ; }; -@@ -546,6 +550,11 @@ map0 { +@@ -546,6 +550,11 @@ <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; contribution = <4096>; }; @@ -41,7 +41,7 @@ index ee539487dfc7..da54409aa50c 100644 }; }; -@@ -627,7 +636,32 @@ gpu: gpu@ff300000 { +@@ -627,7 +636,32 @@ "ppmmu1"; clocks = <&cru ACLK_GPU>, <&cru ACLK_GPU>; clock-names = "bus", "core"; @@ -86,10 +86,10 @@ Signed-off-by: Alex Bee 1 file changed, 14 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -index da54409aa50c..0c6e35ef77b9 100644 +index 9ec15415d30e..2ac2c22befb7 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -@@ -1063,6 +1063,20 @@ usbdrd3: usb@ff600000 { +@@ -1064,6 +1064,20 @@ status = "disabled"; }; @@ -125,7 +125,7 @@ diff --git a/arch/arm/boot/dts/rk3288-miqi.dts b/arch/arm/boot/dts/rk3288-miqi.d index 713f55e143c6..8d30c49f406e 100644 --- a/arch/arm/boot/dts/rk3288-miqi.dts +++ b/arch/arm/boot/dts/rk3288-miqi.dts -@@ -78,6 +78,21 @@ vcc_sys: vsys-regulator { +@@ -78,6 +78,21 @@ regulator-always-on; regulator-boot-on; }; @@ -147,7 +147,7 @@ index 713f55e143c6..8d30c49f406e 100644 }; &cpu0 { -@@ -284,6 +299,11 @@ &i2c5 { +@@ -284,6 +299,11 @@ status = "okay"; }; @@ -175,7 +175,7 @@ diff --git a/arch/arm/boot/dts/rk3288-tinker.dtsi b/arch/arm/boot/dts/rk3288-tin index 9c1e38c54eae..ee332fc9cf1f 100644 --- a/arch/arm/boot/dts/rk3288-tinker.dtsi +++ b/arch/arm/boot/dts/rk3288-tinker.dtsi -@@ -75,7 +75,7 @@ sdio_pwrseq: sdio-pwrseq { +@@ -75,7 +75,7 @@ sound { compatible = "simple-audio-card"; simple-audio-card,format = "i2s"; @@ -188,7 +188,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rock index 59b69f069b0c..215b37ee5aaa 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi -@@ -1782,7 +1782,7 @@ hdmi_sound: hdmi-sound { +@@ -1782,7 +1782,7 @@ compatible = "simple-audio-card"; simple-audio-card,format = "i2s"; simple-audio-card,mclk-fs = <256>; @@ -377,14 +377,13 @@ Signed-off-by: Alex Bee --- 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(-) + 2 files changed, 8 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts index 7d9481962f51..b6542d3fb311 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 { +@@ -161,6 +161,10 @@ status = "okay"; }; @@ -399,7 +398,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts b/arch/arm64/boot/dt index ecf3fcf24ff3..49582172d49b 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts +++ b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts -@@ -157,6 +157,10 @@ &gmac2io { +@@ -157,6 +157,10 @@ status = "okay"; }; @@ -410,19 +409,6 @@ index ecf3fcf24ff3..49582172d49b 100644 &hdmi { status = "okay"; }; -diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -index 0c6e35ef77b9..1cfd35372c4a 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 = , - , - , From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Alex Bee @@ -440,7 +426,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi b/arch/arm64/boo index 58097245994a..c7c515c6c5cb 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi -@@ -247,8 +247,8 @@ &gmac { +@@ -247,8 +247,8 @@ snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; snps,reset-active-low; snps,reset-delays-us = <0 10000 50000>; @@ -468,7 +454,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328-a1.dts b/arch/arm64/boot/dts/ro index 37f307cfa4cc..68f7c76a3a56 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 { +@@ -52,6 +52,24 @@ gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>; linux,rc-map-name = "rc-beelink-gs1"; }; @@ -493,7 +479,7 @@ index 37f307cfa4cc..68f7c76a3a56 100644 }; &analog_sound { -@@ -319,6 +337,11 @@ &sdmmc { +@@ -319,6 +337,11 @@ status = "okay"; }; @@ -509,7 +495,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dt index b6542d3fb311..9826d0f574f8 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 { +@@ -102,6 +102,24 @@ mode = <0x05>; }; }; @@ -534,7 +520,7 @@ index b6542d3fb311..9826d0f574f8 100644 }; &analog_sound { -@@ -337,6 +355,11 @@ &sdmmc { +@@ -337,6 +355,11 @@ status = "okay"; }; @@ -561,7 +547,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dt index 9826d0f574f8..ea5b606f2dde 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 { +@@ -83,6 +83,13 @@ regulator-boot-on; }; @@ -575,7 +561,7 @@ index 9826d0f574f8..ea5b606f2dde 100644 leds { compatible = "gpio-leds"; -@@ -325,6 +332,13 @@ &io_domains { +@@ -325,6 +332,13 @@ }; &pinctrl { @@ -603,7 +589,7 @@ diff --git a/arch/arm/boot/dts/rk3288-miqi.dts b/arch/arm/boot/dts/rk3288-miqi.d index 8d30c49f406e..6d90db5a3b75 100644 --- a/arch/arm/boot/dts/rk3288-miqi.dts +++ b/arch/arm/boot/dts/rk3288-miqi.dts -@@ -145,6 +145,8 @@ &gpu { +@@ -145,6 +145,8 @@ &hdmi { ddc-i2c-bus = <&i2c5>; @@ -626,7 +612,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328-a1.dts b/arch/arm64/boot/dts/ro index 68f7c76a3a56..47520938d3a3 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328-a1.dts +++ b/arch/arm64/boot/dts/rockchip/rk3328-a1.dts -@@ -142,6 +142,14 @@ rtl8211f: ethernet-phy@0 { +@@ -142,6 +142,14 @@ }; }; @@ -719,7 +705,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rock index 215b37ee5aaa..ad72d1796542 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi -@@ -1390,7 +1390,7 @@ cru: clock-controller@ff760000 { +@@ -1390,7 +1390,7 @@ <1000000000>, <150000000>, <75000000>, <37500000>, @@ -743,10 +729,10 @@ Signed-off-by: Alex Bee 1 file changed, 1 insertion(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -index fb7599f07af4..155f22b53103 100644 +index c5d4463e4c93..05788f57a2a4 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi -@@ -593,6 +593,7 @@ &sdmmc { +@@ -621,6 +621,7 @@ &sdhci { bus-width = <8>; @@ -769,7 +755,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399pro-rock-pi-n10.dts b/arch/arm64 index 369de5dc0ebd..48ac0cfa93c0 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399pro-rock-pi-n10.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399pro-rock-pi-n10.dts -@@ -20,3 +20,7 @@ chosen { +@@ -20,3 +20,7 @@ stdout-path = "serial2:1500000n8"; }; }; @@ -781,7 +767,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi b/arch/arm64/ index 7257494d2831..9e2994e27d05 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi -@@ -57,6 +57,22 @@ &hdmi { +@@ -57,6 +57,22 @@ pinctrl-0 = <&hdmi_cec>; }; @@ -804,7 +790,7 @@ index 7257494d2831..9e2994e27d05 100644 &i2c0 { clock-frequency = <400000>; i2c-scl-falling-time-ns = <30>; -@@ -280,6 +296,50 @@ regulator-state-mem { +@@ -280,6 +296,50 @@ }; }; }; @@ -855,7 +841,7 @@ index 7257494d2831..9e2994e27d05 100644 }; &i2c1 { -@@ -351,6 +411,29 @@ pmic { +@@ -351,6 +411,29 @@ pmic_int_l: pmic-int-l { rockchip,pins = <1 RK_PC2 0 &pcfg_pull_up>; }; diff --git a/projects/Rockchip/patches/linux/default/linux-2000-v4l-wip-rkvdec-vp9.patch b/projects/Rockchip/patches/linux/default/linux-2000-v4l-wip-rkvdec-vp9.patch index bc80ee1923..16a87d13eb 100644 --- a/projects/Rockchip/patches/linux/default/linux-2000-v4l-wip-rkvdec-vp9.patch +++ b/projects/Rockchip/patches/linux/default/linux-2000-v4l-wip-rkvdec-vp9.patch @@ -877,10 +877,10 @@ index 41f8410d08d6..7ed11f296008 100644 elem_size = sizeof(struct v4l2_ctrl_hevc_sps); break; diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c -index 1ff68c1bf14a..783733bef2da 100644 +index b570fa7e6fc8..a3c3677cd4bd 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c -@@ -1429,6 +1429,7 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt) +@@ -1447,6 +1447,7 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt) case V4L2_PIX_FMT_VP8: descr = "VP8"; break; case V4L2_PIX_FMT_VP8_FRAME: descr = "VP8 Frame"; break; case V4L2_PIX_FMT_VP9: descr = "VP9"; break; @@ -1425,9 +1425,9 @@ Signed-off-by: Adrian Ratiu --- drivers/staging/media/rkvdec/Makefile | 2 +- drivers/staging/media/rkvdec/rkvdec-vp9.c | 1577 +++++++++++++++++++++ - drivers/staging/media/rkvdec/rkvdec.c | 60 +- + drivers/staging/media/rkvdec/rkvdec.c | 49 + drivers/staging/media/rkvdec/rkvdec.h | 6 + - 4 files changed, 1643 insertions(+), 2 deletions(-) + 4 files changed, 1633 insertions(+), 1 deletion(-) create mode 100644 drivers/staging/media/rkvdec/rkvdec-vp9.c diff --git a/drivers/staging/media/rkvdec/Makefile b/drivers/staging/media/rkvdec/Makefile @@ -3023,7 +3023,7 @@ index 000000000000..8b443ed511c9 + .done = rkvdec_vp9_done, +}; diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index 7df90a03e7d4..81a14db30285 100644 +index 3752acd6d370..2b495781c742 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -162,6 +162,40 @@ static const u32 rkvdec_h264_decoded_fmts[] = { @@ -3089,31 +3089,6 @@ index 7df90a03e7d4..81a14db30285 100644 } }; -@@ -376,7 +425,7 @@ static int rkvdec_s_output_fmt(struct file *file, void *priv, - struct v4l2_m2m_ctx *m2m_ctx = ctx->fh.m2m_ctx; - const struct rkvdec_coded_fmt_desc *desc; - struct v4l2_format *cap_fmt; -- struct vb2_queue *peer_vq; -+ struct vb2_queue *peer_vq, *vq; - int ret; - - /* -@@ -388,6 +437,15 @@ static int rkvdec_s_output_fmt(struct file *file, void *priv, - if (vb2_is_busy(peer_vq)) - return -EBUSY; - -+ /* -+ * Some codecs like VP9 can contain dynamic resolution changes which -+ * are currently not supported by the V4L2 API or driver, so return -+ * an error if userspace tries to reconfigure the output format. -+ */ -+ vq = v4l2_m2m_get_vq(m2m_ctx, V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE); -+ if (vb2_is_busy(vq)) -+ return -EINVAL; -+ - ret = rkvdec_s_fmt(file, priv, f, rkvdec_try_output_fmt); - if (ret) - return ret; diff --git a/drivers/staging/media/rkvdec/rkvdec.h b/drivers/staging/media/rkvdec/rkvdec.h index c14cd2571bfc..d760c3609e2c 100644 --- a/drivers/staging/media/rkvdec/rkvdec.h diff --git a/projects/Rockchip/patches/linux/default/linux-2001-v4l-wip-rkvdec-hevc.patch b/projects/Rockchip/patches/linux/default/linux-2001-v4l-wip-rkvdec-hevc.patch index 89a0d95939..bb44662b8d 100644 --- a/projects/Rockchip/patches/linux/default/linux-2001-v4l-wip-rkvdec-hevc.patch +++ b/projects/Rockchip/patches/linux/default/linux-2001-v4l-wip-rkvdec-hevc.patch @@ -2898,7 +2898,7 @@ index 3acc914888f6..4addfaefdfb4 100644 #define RKVDEC_MODE_VP9 2 #define RKVDEC_RPS_MODE BIT(24) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index 81a14db30285..dd67e621f36f 100644 +index 2b495781c742..3fd82ebeb553 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -162,6 +162,61 @@ static const u32 rkvdec_h264_decoded_fmts[] = { @@ -3038,7 +3038,7 @@ index c3cceba837c2..b9f7b931d028 100644 .stop = rkvdec_hevc_stop, .run = rkvdec_hevc_run, diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index dd67e621f36f..b0657ab2d029 100644 +index 3fd82ebeb553..957a0eb23241 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -79,6 +79,26 @@ static int rkvdec_try_ctrl(struct v4l2_ctrl *ctrl) @@ -3235,7 +3235,7 @@ Signed-off-by: Alex Bee 2 files changed, 84 insertions(+), 30 deletions(-) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index b0657ab2d029..0c33d6a5a751 100644 +index 957a0eb23241..5a8714ef46b5 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -14,6 +14,7 @@ @@ -3366,7 +3366,7 @@ index b0657ab2d029..0c33d6a5a751 100644 } v4l2_apply_frmsize_constraints(&pix_mp->width, -@@ -541,7 +562,8 @@ static int rkvdec_s_output_fmt(struct file *file, void *priv, +@@ -532,7 +553,8 @@ static int rkvdec_s_output_fmt(struct file *file, void *priv, if (ret) return ret; @@ -3376,7 +3376,7 @@ index b0657ab2d029..0c33d6a5a751 100644 if (!desc) return -EINVAL; ctx->coded_fmt_desc = desc; -@@ -589,7 +611,10 @@ static int rkvdec_g_capture_fmt(struct file *file, void *priv, +@@ -580,7 +602,10 @@ static int rkvdec_g_capture_fmt(struct file *file, void *priv, static int rkvdec_enum_output_fmt(struct file *file, void *priv, struct v4l2_fmtdesc *f) { @@ -3388,7 +3388,7 @@ index b0657ab2d029..0c33d6a5a751 100644 return -EINVAL; f->pixelformat = rkvdec_coded_fmts[f->index].fourcc; -@@ -1040,14 +1065,17 @@ static int rkvdec_init_ctrls(struct rkvdec_ctx *ctx) +@@ -1031,14 +1056,17 @@ static int rkvdec_init_ctrls(struct rkvdec_ctx *ctx) int ret; for (i = 0; i < ARRAY_SIZE(rkvdec_coded_fmts); i++) @@ -3410,7 +3410,7 @@ index b0657ab2d029..0c33d6a5a751 100644 } ret = v4l2_ctrl_handler_setup(&ctx->ctrl_hdl); -@@ -1251,8 +1279,17 @@ static void rkvdec_watchdog_func(struct work_struct *work) +@@ -1242,8 +1270,17 @@ static void rkvdec_watchdog_func(struct work_struct *work) } } @@ -3429,7 +3429,7 @@ index b0657ab2d029..0c33d6a5a751 100644 { /* sentinel */ } }; MODULE_DEVICE_TABLE(of, of_rkvdec_match); -@@ -1265,6 +1302,7 @@ static int rkvdec_probe(struct platform_device *pdev) +@@ -1256,6 +1293,7 @@ static int rkvdec_probe(struct platform_device *pdev) { struct rkvdec_dev *rkvdec; struct resource *res; @@ -3437,7 +3437,7 @@ index b0657ab2d029..0c33d6a5a751 100644 unsigned int i; int ret, irq; -@@ -1290,6 +1328,12 @@ static int rkvdec_probe(struct platform_device *pdev) +@@ -1281,6 +1319,12 @@ static int rkvdec_probe(struct platform_device *pdev) if (ret) return ret; @@ -3507,10 +3507,10 @@ Signed-off-by: Alex Bee 1 file changed, 8 insertions(+) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c -index 0c33d6a5a751..5b20ca492032 100644 +index 5a8714ef46b5..8a45b4a6b7a9 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c -@@ -1285,11 +1285,19 @@ static const struct rkvdec_variant rk3399_rkvdec_variant = { +@@ -1276,11 +1276,19 @@ static const struct rkvdec_variant rk3399_rkvdec_variant = { RKVDEC_CAPABILITY_VP9 }; @@ -3545,7 +3545,7 @@ diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index 61d97fb22be9..7c255244f5ed 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi -@@ -1271,6 +1271,25 @@ vpu_mmu: iommu@ff9a0800 { +@@ -1271,6 +1271,25 @@ power-domains = <&power RK3288_PD_VIDEO>; }; @@ -3571,7 +3571,7 @@ index 61d97fb22be9..7c255244f5ed 100644 hevc_mmu: iommu@ff9c0440 { compatible = "rockchip,iommu"; reg = <0x0 0xff9c0440 0x0 0x40>, <0x0 0xff9c0480 0x0 0x40>; -@@ -1279,7 +1298,7 @@ hevc_mmu: iommu@ff9c0440 { +@@ -1279,7 +1298,7 @@ clocks = <&cru ACLK_HEVC>, <&cru HCLK_HEVC>; clock-names = "aclk", "iface"; #iommu-cells = <0>; diff --git a/projects/Rockchip/patches/linux/default/linux-2002-v4l-wip-iep-driver.patch b/projects/Rockchip/patches/linux/default/linux-2002-v4l-wip-iep-driver.patch index ce4daa38c8..d40d7a475a 100644 --- a/projects/Rockchip/patches/linux/default/linux-2002-v4l-wip-iep-driver.patch +++ b/projects/Rockchip/patches/linux/default/linux-2002-v4l-wip-iep-driver.patch @@ -1680,10 +1680,10 @@ Signed-off-by: Alex Bee 1 file changed, 22 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -index 1cfd35372c4a..b5315833e5b1 100644 +index 2ac2c22befb7..224f0ed6ebc6 100644 --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi -@@ -771,6 +771,28 @@ vop_mmu: iommu@ff373f00 { +@@ -772,6 +772,28 @@ status = "disabled"; }; @@ -1727,7 +1727,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rock index ad72d1796542..ae4c4e770669 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi -@@ -1304,6 +1304,17 @@ vdec_mmu: iommu@ff660480 { +@@ -1304,6 +1304,17 @@ #iommu-cells = <0>; }; @@ -1745,7 +1745,7 @@ index ad72d1796542..ae4c4e770669 100644 iep_mmu: iommu@ff670800 { compatible = "rockchip,iommu"; reg = <0x0 0xff670800 0x0 0x40>; -@@ -1311,8 +1322,8 @@ iep_mmu: iommu@ff670800 { +@@ -1311,8 +1322,8 @@ interrupt-names = "iep_mmu"; clocks = <&cru ACLK_IEP>, <&cru HCLK_IEP>; clock-names = "aclk", "iface"; @@ -1770,7 +1770,7 @@ diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index 7c255244f5ed..78bbeaad0294 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi -@@ -1002,6 +1002,17 @@ crypto: cypto-controller@ff8a0000 { +@@ -1002,6 +1002,17 @@ status = "okay"; }; @@ -1788,7 +1788,7 @@ index 7c255244f5ed..78bbeaad0294 100644 iep_mmu: iommu@ff900800 { compatible = "rockchip,iommu"; reg = <0x0 0xff900800 0x0 0x40>; -@@ -1009,8 +1020,8 @@ iep_mmu: iommu@ff900800 { +@@ -1009,8 +1020,8 @@ interrupt-names = "iep_mmu"; clocks = <&cru ACLK_IEP>, <&cru HCLK_IEP>; clock-names = "aclk", "iface"; From 73240d36bffefd22a203c3d215c6d2e1211e77e8 Mon Sep 17 00:00:00 2001 From: Alex Bee Date: Tue, 8 Mar 2022 21:14:56 +0100 Subject: [PATCH 3/4] Rockchip: linux: update configs --- .../Rockchip/devices/RK3288/linux/default/linux.arm.conf | 5 +++-- .../devices/RK3328/linux/default/linux.aarch64.conf | 8 ++++---- .../devices/RK3399/linux/default/linux.aarch64.conf | 8 ++++---- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/projects/Rockchip/devices/RK3288/linux/default/linux.arm.conf b/projects/Rockchip/devices/RK3288/linux/default/linux.arm.conf index e85c0d51fc..f5673f50f2 100644 --- a/projects/Rockchip/devices/RK3288/linux/default/linux.arm.conf +++ b/projects/Rockchip/devices/RK3288/linux/default/linux.arm.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 5.10.52 Kernel Configuration +# Linux/arm 5.10.103 Kernel Configuration # # @@ -3490,6 +3490,7 @@ CONFIG_HDMI=y # CONFIG_DUMMY_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y # CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set @@ -4559,6 +4560,7 @@ CONFIG_VIDEO_ROCKCHIP_VDEC=m # CONFIG_LTE_GDM724X is not set # CONFIG_GS_FPGABOOT is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set # CONFIG_FB_TFT is not set # CONFIG_KS7010 is not set # CONFIG_PI433 is not set @@ -5511,7 +5513,6 @@ CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" CONFIG_PSTORE_CONSOLE=y CONFIG_PSTORE_PMSG=y CONFIG_PSTORE_RAM=y -# CONFIG_PSTORE_BLK is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # CONFIG_EROFS_FS is not set diff --git a/projects/Rockchip/devices/RK3328/linux/default/linux.aarch64.conf b/projects/Rockchip/devices/RK3328/linux/default/linux.aarch64.conf index 43563cea44..b13baaa076 100644 --- a/projects/Rockchip/devices/RK3328/linux/default/linux.aarch64.conf +++ b/projects/Rockchip/devices/RK3328/linux/default/linux.aarch64.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 5.10.52 Kernel Configuration +# Linux/arm64 5.10.103 Kernel Configuration # # @@ -203,6 +203,7 @@ CONFIG_BPF_SYSCALL=y CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y # CONFIG_BPF_JIT_ALWAYS_ON is not set CONFIG_BPF_JIT_DEFAULT_ON=y +# CONFIG_BPF_UNPRIV_DEFAULT_OFF is not set # CONFIG_BPF_PRELOAD is not set # CONFIG_USERFAULTFD is not set CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y @@ -3563,6 +3564,7 @@ CONFIG_DUMMY_CONSOLE=y CONFIG_DUMMY_CONSOLE_COLUMNS=80 CONFIG_DUMMY_CONSOLE_ROWS=25 CONFIG_FRAMEBUFFER_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set # CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set @@ -4576,6 +4578,7 @@ CONFIG_VIDEO_ROCKCHIP_VDEC=m # CONFIG_LTE_GDM724X is not set # CONFIG_GS_FPGABOOT is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set # CONFIG_FB_TFT is not set # CONFIG_KS7010 is not set # CONFIG_PI433 is not set @@ -5240,8 +5243,6 @@ CONFIG_PARTITION_PERCPU=y # CONFIG_IPACK_BUS is not set CONFIG_ARCH_HAS_RESET_CONTROLLER=y CONFIG_RESET_CONTROLLER=y -# CONFIG_RESET_BRCMSTB_RESCAL is not set -# CONFIG_RESET_INTEL_GW is not set # CONFIG_RESET_TI_SYSCON is not set # @@ -5527,7 +5528,6 @@ CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" CONFIG_PSTORE_CONSOLE=y CONFIG_PSTORE_PMSG=y CONFIG_PSTORE_RAM=y -# CONFIG_PSTORE_BLK is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # CONFIG_EROFS_FS is not set diff --git a/projects/Rockchip/devices/RK3399/linux/default/linux.aarch64.conf b/projects/Rockchip/devices/RK3399/linux/default/linux.aarch64.conf index b29cb683f8..efdc790a1d 100644 --- a/projects/Rockchip/devices/RK3399/linux/default/linux.aarch64.conf +++ b/projects/Rockchip/devices/RK3399/linux/default/linux.aarch64.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 5.10.52 Kernel Configuration +# Linux/arm64 5.10.103 Kernel Configuration # # @@ -203,6 +203,7 @@ CONFIG_BPF_SYSCALL=y CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y # CONFIG_BPF_JIT_ALWAYS_ON is not set CONFIG_BPF_JIT_DEFAULT_ON=y +# CONFIG_BPF_UNPRIV_DEFAULT_OFF is not set # CONFIG_BPF_PRELOAD is not set # CONFIG_USERFAULTFD is not set CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y @@ -4133,6 +4134,7 @@ CONFIG_DUMMY_CONSOLE=y CONFIG_DUMMY_CONSOLE_COLUMNS=80 CONFIG_DUMMY_CONSOLE_ROWS=25 CONFIG_FRAMEBUFFER_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set # CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set @@ -5263,6 +5265,7 @@ CONFIG_VIDEO_ROCKCHIP_VDEC=m # CONFIG_LTE_GDM724X is not set # CONFIG_GS_FPGABOOT is not set # CONFIG_UNISYSSPAR is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set # CONFIG_FB_TFT is not set # CONFIG_KS7010 is not set # CONFIG_PI433 is not set @@ -5933,8 +5936,6 @@ CONFIG_PARTITION_PERCPU=y # CONFIG_IPACK_BUS is not set CONFIG_ARCH_HAS_RESET_CONTROLLER=y CONFIG_RESET_CONTROLLER=y -# CONFIG_RESET_BRCMSTB_RESCAL is not set -# CONFIG_RESET_INTEL_GW is not set # CONFIG_RESET_TI_SYSCON is not set # @@ -6221,7 +6222,6 @@ CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" CONFIG_PSTORE_CONSOLE=y CONFIG_PSTORE_PMSG=y CONFIG_PSTORE_RAM=y -# CONFIG_PSTORE_BLK is not set # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # CONFIG_EROFS_FS is not set From 491bd8f40b964908bc29196ad949c3301d9a2ff7 Mon Sep 17 00:00:00 2001 From: Alex Bee Date: Tue, 8 Mar 2022 21:26:49 +0100 Subject: [PATCH 4/4] linux: update to 5.10.104 --- packages/linux/package.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/linux/package.mk b/packages/linux/package.mk index ebcd40ba8a..002bde865a 100644 --- a/packages/linux/package.mk +++ b/packages/linux/package.mk @@ -28,8 +28,8 @@ case "${LINUX}" in PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz" ;; *) - PKG_VERSION="5.10.103" - PKG_SHA256="4fb8ad55e6430342e4fbc94d54e594e9be8eb6a8bea1d71eccf835948d08580a" + PKG_VERSION="5.10.104" + PKG_SHA256="394a9267ea8e24d0f0cfaad3439bf43abe7bcf6479dc9548e485b48a0ac562f1" PKG_URL="https://www.kernel.org/pub/linux/kernel/v5.x/${PKG_NAME}-${PKG_VERSION}.tar.xz" PKG_PATCH_DIRS="default" ;;