mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-31 06:36:41 +00:00
linux (Rockchip): update patches for 5.12
This commit is contained in:
parent
5746c7d9bb
commit
36bf5aa381
File diff suppressed because it is too large
Load Diff
@ -1,662 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Demetris Ierokipides <ierokipides.dem@gmail.com>
|
||||
Date: Fri, 8 Jan 2021 17:10:35 +0200
|
||||
Subject: [PATCH] ARM: dts: rockchip: add gpu node to rk3288-miqi
|
||||
|
||||
Add the Mali GPU node to the MiQi device-tree.
|
||||
|
||||
Signed-off-by: Demetris Ierokipides <ierokipides.dem@gmail.com>
|
||||
Link: https://lore.kernel.org/r/20210108151036.36434-2-ierokipides.dem@gmail.com
|
||||
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||||
---
|
||||
arch/arm/boot/dts/rk3288-miqi.dts | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/rk3288-miqi.dts b/arch/arm/boot/dts/rk3288-miqi.dts
|
||||
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 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&gpu {
|
||||
+ mali-supply = <&vdd_gpu>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&hdmi {
|
||||
ddc-i2c-bus = <&i2c5>;
|
||||
status = "okay";
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Johan Jonker <jbx6244@gmail.com>
|
||||
Date: Sat, 19 Dec 2020 22:05:00 +0100
|
||||
Subject: [PATCH] arm64: dts: rockchip: assign a fixed index to mmc devices on
|
||||
rk3328 boards
|
||||
|
||||
Recently introduced async probe on mmc devices can shuffle block IDs.
|
||||
Pin them to fixed values to ease booting in environments where UUIDs
|
||||
are not practical. Use newly introduced aliases for mmcblk devices from [1].
|
||||
|
||||
[1] https://patchwork.kernel.org/patch/11747669/
|
||||
|
||||
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
|
||||
Link: https://lore.kernel.org/r/20201219210500.3855-1-jbx6244@gmail.com
|
||||
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3328.dtsi | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
index 93c734d8a46c..17709faf651b 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
@@ -27,6 +27,9 @@ aliases {
|
||||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c2;
|
||||
i2c3 = &i2c3;
|
||||
+ mmc0 = &sdmmc;
|
||||
+ mmc1 = &sdio;
|
||||
+ mmc2 = &emmc;
|
||||
ethernet0 = &gmac2io;
|
||||
ethernet1 = &gmac2phy;
|
||||
};
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jagan Teki <jagan@amarulasolutions.com>
|
||||
Date: Fri, 31 Jul 2020 21:33:24 +0530
|
||||
Subject: [PATCH] arm64: defconfig: Enable REGULATOR_MP8859
|
||||
|
||||
RK3399 boards like ROC-RK3399-PC is using MP8859 DC/DC converter
|
||||
for 12V supply.
|
||||
|
||||
roc-rk3399-pc initially used 12V fixed regulator for this supply,
|
||||
but the below commit has switched to use MP8859.
|
||||
|
||||
commit <1fc61ed04d309b0b8b3562acf701ab988eee12de> "arm64: dts: rockchip:
|
||||
Enable mp8859 regulator on rk3399-roc-pc"
|
||||
|
||||
So, enable by default on the defconfig.
|
||||
|
||||
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
||||
Tested-by: Suniel Mahesh <sunil@amarulasolutions.com>
|
||||
Link: https://lore.kernel.org/r/20200731160324.142097-1-jagan@amarulasolutions.com
|
||||
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||||
---
|
||||
arch/arm64/configs/defconfig | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
|
||||
index 699c204090b8..9365213589bb 100644
|
||||
--- a/arch/arm64/configs/defconfig
|
||||
+++ b/arch/arm64/configs/defconfig
|
||||
@@ -588,6 +588,7 @@ CONFIG_REGULATOR_HI6421V530=y
|
||||
CONFIG_REGULATOR_HI655X=y
|
||||
CONFIG_REGULATOR_MAX77620=y
|
||||
CONFIG_REGULATOR_MAX8973=y
|
||||
+CONFIG_REGULATOR_MP8859=y
|
||||
CONFIG_REGULATOR_PCA9450=y
|
||||
CONFIG_REGULATOR_PFUZE100=y
|
||||
CONFIG_REGULATOR_PWM=y
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Johan Jonker <jbx6244@gmail.com>
|
||||
Date: Sun, 6 Dec 2020 11:37:08 +0100
|
||||
Subject: [PATCH] ARM: dts: rockchip: add QoS register compatibles for
|
||||
rk3066/rk3188
|
||||
|
||||
With the conversion of syscon.yaml minItems for compatibles
|
||||
was set to 2. Current Rockchip dtsi files only use "syscon" for
|
||||
QoS registers. Add Rockchip QoS compatibles for rk3066/rk3188
|
||||
to reduce notifications produced with:
|
||||
|
||||
make ARCH=arm dtbs_check
|
||||
DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/syscon.yaml
|
||||
|
||||
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
|
||||
Link: https://lore.kernel.org/r/20201206103711.7465-1-jbx6244@gmail.com
|
||||
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||||
---
|
||||
arch/arm/boot/dts/rk3xxx.dtsi | 16 ++++++++--------
|
||||
1 file changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
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 {
|
||||
};
|
||||
|
||||
qos_gpu: qos@1012d000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3066-qos", "syscon";
|
||||
reg = <0x1012d000 0x20>;
|
||||
};
|
||||
|
||||
qos_vpu: qos@1012e000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3066-qos", "syscon";
|
||||
reg = <0x1012e000 0x20>;
|
||||
};
|
||||
|
||||
qos_lcdc0: qos@1012f000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3066-qos", "syscon";
|
||||
reg = <0x1012f000 0x20>;
|
||||
};
|
||||
|
||||
qos_cif0: qos@1012f080 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3066-qos", "syscon";
|
||||
reg = <0x1012f080 0x20>;
|
||||
};
|
||||
|
||||
qos_ipp: qos@1012f100 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3066-qos", "syscon";
|
||||
reg = <0x1012f100 0x20>;
|
||||
};
|
||||
|
||||
qos_lcdc1: qos@1012f180 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3066-qos", "syscon";
|
||||
reg = <0x1012f180 0x20>;
|
||||
};
|
||||
|
||||
qos_cif1: qos@1012f200 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3066-qos", "syscon";
|
||||
reg = <0x1012f200 0x20>;
|
||||
};
|
||||
|
||||
qos_rga: qos@1012f280 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3066-qos", "syscon";
|
||||
reg = <0x1012f280 0x20>;
|
||||
};
|
||||
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Johan Jonker <jbx6244@gmail.com>
|
||||
Date: Sun, 6 Dec 2020 11:37:09 +0100
|
||||
Subject: [PATCH] ARM: dts: rockchip: add QoS register compatibles for rk3288
|
||||
|
||||
With the conversion of syscon.yaml minItems for compatibles
|
||||
was set to 2. Current Rockchip dtsi files only use "syscon" for
|
||||
QoS registers. Add Rockchip QoS compatibles for rk3288
|
||||
to reduce notifications produced with:
|
||||
|
||||
make ARCH=arm dtbs_check
|
||||
DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/syscon.yaml
|
||||
|
||||
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
|
||||
Link: https://lore.kernel.org/r/20201206103711.7465-2-jbx6244@gmail.com
|
||||
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||||
---
|
||||
arch/arm/boot/dts/rk3288.dtsi | 28 ++++++++++++++--------------
|
||||
1 file changed, 14 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi
|
||||
index 68d5a58cfe88..01ea1f170f77 100644
|
||||
--- a/arch/arm/boot/dts/rk3288.dtsi
|
||||
+++ b/arch/arm/boot/dts/rk3288.dtsi
|
||||
@@ -1329,72 +1329,72 @@ opp-600000000 {
|
||||
};
|
||||
|
||||
qos_gpu_r: qos@ffaa0000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffaa0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_gpu_w: qos@ffaa0080 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffaa0080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio1_vop: qos@ffad0000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio1_isp_w0: qos@ffad0100 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0100 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio1_isp_w1: qos@ffad0180 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0180 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio0_vop: qos@ffad0400 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0400 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio0_vip: qos@ffad0480 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0480 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio0_iep: qos@ffad0500 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0500 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio2_rga_r: qos@ffad0800 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0800 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio2_rga_w: qos@ffad0880 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0880 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vio1_isp_r: qos@ffad0900 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffad0900 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_video: qos@ffae0000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffae0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_hevc_r: qos@ffaf0000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffaf0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_hevc_w: qos@ffaf0080 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,rk3288-qos", "syscon";
|
||||
reg = <0x0 0xffaf0080 0x0 0x20>;
|
||||
};
|
||||
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Johan Jonker <jbx6244@gmail.com>
|
||||
Date: Sun, 6 Dec 2020 11:37:11 +0100
|
||||
Subject: [PATCH] arm64: dts: rockchip: add QoS register compatibles for px30
|
||||
|
||||
With the conversion of syscon.yaml minItems for compatibles
|
||||
was set to 2. Current Rockchip dtsi files only use "syscon" for
|
||||
QoS registers. Add Rockchip QoS compatibles for px30
|
||||
to reduce notifications produced with:
|
||||
|
||||
make ARCH=arm64 dtbs_check
|
||||
DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/syscon.yaml
|
||||
|
||||
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
|
||||
Link: https://lore.kernel.org/r/20201206103711.7465-4-jbx6244@gmail.com
|
||||
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/px30.dtsi | 40 +++++++++++++-------------
|
||||
1 file changed, 20 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/px30.dtsi b/arch/arm64/boot/dts/rockchip/px30.dtsi
|
||||
index 64193292d26c..d8b673b486c9 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 {
|
||||
};
|
||||
|
||||
qos_gmac: qos@ff518000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff518000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_gpu: qos@ff520000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff520000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_sdmmc: qos@ff52c000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff52c000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_emmc: qos@ff538000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff538000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_nand: qos@ff538080 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff538080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_sdio: qos@ff538100 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff538100 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_sfc: qos@ff538180 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff538180 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_usb_host: qos@ff540000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff540000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_usb_otg: qos@ff540080 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff540080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp_128: qos@ff548000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp_rd: qos@ff548080 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp_wr: qos@ff548100 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548100 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp_m1: qos@ff548180 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548180 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vip: qos@ff548200 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548200 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_rga_rd: qos@ff550000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff550000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_rga_wr: qos@ff550080 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff550080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vop_m0: qos@ff550100 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff550100 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vop_m1: qos@ff550180 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff550180 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vpu: qos@ff558000 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff558000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vpu_r128: qos@ff558080 {
|
||||
- compatible = "syscon";
|
||||
+ compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff558080 0x0 0x20>;
|
||||
};
|
||||
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Katsuhiro Suzuki <katsuhiro@katsuster.net>
|
||||
Date: Mon, 3 Aug 2020 00:42:31 +0900
|
||||
Subject: [PATCH] arm64: dts: rockchip: enable HDMI sound nodes for
|
||||
rk3328-rock64
|
||||
|
||||
This patch enables HDMI sound (I2S0) and Analog sound (I2S1) which
|
||||
are defined in rk3328.dtsi, and replace SPDIF nodes.
|
||||
|
||||
We can use SPDIF pass-through with suitable ALSA settings and on
|
||||
mpv or other media players.
|
||||
- Settings: https://github.com/LibreELEC/LibreELEC.tv/blob/master/projects/Rockchip/filesystem/usr/share/alsa/cards/SPDIF.conf
|
||||
- Ex.: mpv foo.ac3 --audio-spdif=ac3 --audio-device='alsa/SPDIF.pcm.iec958.0:SPDIF'
|
||||
|
||||
[Why use simple-audio-card for SPDIF?]
|
||||
|
||||
For newly adding nodes, ASoC guys recommend to use audio-graph-card.
|
||||
But all other sound nodes for rk3328 have already been defined by
|
||||
simple-audio-card. In this time, I chose for consistent sound nodes.
|
||||
|
||||
[DMA allocation problem]
|
||||
|
||||
After this patch is applied, UART2 will fail to allocate DMA resources
|
||||
but UART driver can work fine without DMA.
|
||||
|
||||
This error is related to the DMAC of rk3328 (pl330 or compatible).
|
||||
DMAC connected to 16 DMA sources. Each sources have ID number that is
|
||||
called 'Req number' in rk3328 TRM. After this patch is applied total 7
|
||||
of DMA sources will be activated as follows:
|
||||
|
||||
| Req number | Source | Required |
|
||||
| | | channels |
|
||||
|------------+--------+-----------|
|
||||
| 8, 9 | SPI0 | 2ch |
|
||||
| 11, 12 | I2S0 | 2ch |
|
||||
| 14, 15 | I2S1 | 2ch |
|
||||
| 10 | SPDIF | 1ch |
|
||||
|------------+--------+-----------|
|
||||
| | Total | 7ch |
|
||||
|------------+--------+-----------|
|
||||
| 6, 7 | UART2 | 2ch | -> cannot get DMA channels
|
||||
|
||||
Due to rk3328 DMAC specification we can use max 8 channels at same
|
||||
time. If SPI0/I2S0/I2S1/SPDIF will be activated by this patch,
|
||||
required DMAC channels reach to 7. So the last two channels (for
|
||||
UART2) cannot get DMA resources.
|
||||
|
||||
Virt-dma mechanism for pl0330 DMAC driver is needed to fix this
|
||||
problem.
|
||||
|
||||
Signed-off-by: Katsuhiro Suzuki <katsuhiro@katsuster.net>
|
||||
Link: https://lore.kernel.org/r/20200802154231.2639186-1-katsuhiro@katsuster.net
|
||||
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||||
---
|
||||
.../arm64/boot/dts/rockchip/rk3328-rock64.dts | 56 ++++++++-----------
|
||||
1 file changed, 24 insertions(+), 32 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts b/arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
|
||||
index 86cfb5c50a94..c984662043da 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 {
|
||||
};
|
||||
};
|
||||
|
||||
- sound {
|
||||
- compatible = "audio-graph-card";
|
||||
- label = "rockchip,rk3328";
|
||||
- dais = <&i2s1_p0
|
||||
- &spdif_p0>;
|
||||
+ spdif_sound: spdif-sound {
|
||||
+ compatible = "simple-audio-card";
|
||||
+ simple-audio-card,name = "SPDIF";
|
||||
+
|
||||
+ simple-audio-card,cpu {
|
||||
+ sound-dai = <&spdif>;
|
||||
+ };
|
||||
+
|
||||
+ simple-audio-card,codec {
|
||||
+ sound-dai = <&spdif_dit>;
|
||||
+ };
|
||||
};
|
||||
|
||||
- spdif-dit {
|
||||
+ spdif_dit: spdif-dit {
|
||||
compatible = "linux,spdif-dit";
|
||||
#sound-dai-cells = <0>;
|
||||
-
|
||||
- port {
|
||||
- dit_p0_0: endpoint {
|
||||
- remote-endpoint = <&spdif_p0_0>;
|
||||
- };
|
||||
- };
|
||||
};
|
||||
};
|
||||
|
||||
+&analog_sound {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&codec {
|
||||
mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
-
|
||||
- port@0 {
|
||||
- codec_p0_0: endpoint {
|
||||
- remote-endpoint = <&i2s1_p0_0>;
|
||||
- };
|
||||
- };
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
@@ -163,6 +161,10 @@ &hdmi {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&hdmi_sound {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&hdmiphy {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -278,16 +280,12 @@ regulator-state-mem {
|
||||
};
|
||||
};
|
||||
|
||||
-&i2s1 {
|
||||
+&i2s0 {
|
||||
status = "okay";
|
||||
+};
|
||||
|
||||
- i2s1_p0: port {
|
||||
- i2s1_p0_0: endpoint {
|
||||
- dai-format = "i2s";
|
||||
- mclk-fs = <256>;
|
||||
- remote-endpoint = <&codec_p0_0>;
|
||||
- };
|
||||
- };
|
||||
+&i2s1 {
|
||||
+ status = "okay";
|
||||
};
|
||||
|
||||
&io_domains {
|
||||
@@ -337,12 +335,6 @@ &sdmmc {
|
||||
&spdif {
|
||||
pinctrl-0 = <&spdifm0_tx>;
|
||||
status = "okay";
|
||||
-
|
||||
- spdif_p0: port {
|
||||
- spdif_p0_0: endpoint {
|
||||
- remote-endpoint = <&dit_p0_0>;
|
||||
- };
|
||||
- };
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Katsuhiro Suzuki <katsuhiro@katsuster.net>
|
||||
Date: Mon, 10 Aug 2020 18:16:19 +0900
|
||||
Subject: [PATCH] arm64: dts: rockchip: add SPDIF node for rk3399-rockpro64
|
||||
|
||||
This patch adds 'disabled' SPDIF sound node and related settings
|
||||
for rk3399-rockpro64.
|
||||
|
||||
There are 2 reasons:
|
||||
- All RK3399 dma-bus channels have been already used by I2S0/1/2
|
||||
- RockPro64 does not have SPDIF optical nor coaxial connector,
|
||||
just have 3pins
|
||||
|
||||
Signed-off-by: Katsuhiro Suzuki <katsuhiro@katsuster.net>
|
||||
Link: https://lore.kernel.org/r/20200810091619.3170534-1-katsuhiro@katsuster.net
|
||||
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||||
---
|
||||
.../boot/dts/rockchip/rk3399-rockpro64.dtsi | 27 +++++++++++++++++++
|
||||
1 file changed, 27 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
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 {
|
||||
dais = <&i2s1_p0>;
|
||||
};
|
||||
|
||||
+ sound-dit {
|
||||
+ compatible = "audio-graph-card";
|
||||
+ label = "rockchip,rk3399";
|
||||
+ dais = <&spdif_p0>;
|
||||
+ };
|
||||
+
|
||||
+ spdif-dit {
|
||||
+ compatible = "linux,spdif-dit";
|
||||
+ #sound-dai-cells = <0>;
|
||||
+
|
||||
+ port {
|
||||
+ dit_p0_0: endpoint {
|
||||
+ remote-endpoint = <&spdif_p0_0>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
vcc12v_dcin: vcc12v-dcin {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc12v_dcin";
|
||||
@@ -698,6 +715,16 @@ &sdhci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&spdif {
|
||||
+ pinctrl-0 = <&spdif_bus_1>;
|
||||
+
|
||||
+ spdif_p0: port {
|
||||
+ spdif_p0_0: endpoint {
|
||||
+ remote-endpoint = <&dit_p0_0>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
&spi1 {
|
||||
status = "okay";
|
||||
|
@ -784,10 +784,11 @@ diff --git a/drivers/usb/dwc3/Makefile b/drivers/usb/dwc3/Makefile
|
||||
index ae86da0dc5bd..f5eb7de10128 100644
|
||||
--- a/drivers/usb/dwc3/Makefile
|
||||
+++ b/drivers/usb/dwc3/Makefile
|
||||
@@ -51,3 +51,4 @@ obj-$(CONFIG_USB_DWC3_MESON_G12A) += dwc3-meson-g12a.o
|
||||
@@ -51,4 +51,5 @@ obj-$(CONFIG_USB_DWC3_MESON_G12A) += dwc3-meson-g12a.o
|
||||
obj-$(CONFIG_USB_DWC3_OF_SIMPLE) += dwc3-of-simple.o
|
||||
obj-$(CONFIG_USB_DWC3_ST) += dwc3-st.o
|
||||
obj-$(CONFIG_USB_DWC3_QCOM) += dwc3-qcom.o
|
||||
obj-$(CONFIG_USB_DWC3_IMX8MP) += dwc3-imx8mp.o
|
||||
+obj-$(CONFIG_USB_DWC3_ROCKCHIP_INNO) += dwc3-rockchip-inno.o
|
||||
diff --git a/drivers/usb/dwc3/dwc3-rockchip-inno.c b/drivers/usb/dwc3/dwc3-rockchip-inno.c
|
||||
new file mode 100644
|
||||
|
@ -107,7 +107,7 @@ index 71a6b7b0b057..f405dd72ad93 100644
|
||||
{
|
||||
+ struct rkvdec_ctx *ctx = container_of(ctrl->handler, struct rkvdec_ctx, ctrl_hdl);
|
||||
+
|
||||
if (ctrl->id == V4L2_CID_MPEG_VIDEO_H264_SPS) {
|
||||
if (ctrl->id == V4L2_CID_STATELESS_H264_SPS) {
|
||||
const struct v4l2_ctrl_h264_sps *sps = ctrl->p_new.p_h264_sps;
|
||||
+ unsigned int width, height;
|
||||
/*
|
||||
@ -567,17 +567,6 @@ index 000000000000..a8123be0baa3
|
||||
+ - Y
|
||||
+ - C
|
||||
+ - Y
|
||||
diff --git a/Documentation/userspace-api/media/v4l/yuv-formats.rst b/Documentation/userspace-api/media/v4l/yuv-formats.rst
|
||||
index 4a05a105a9e6..e08e5dbdacea 100644
|
||||
--- a/Documentation/userspace-api/media/v4l/yuv-formats.rst
|
||||
+++ b/Documentation/userspace-api/media/v4l/yuv-formats.rst
|
||||
@@ -54,4 +54,6 @@ to brightness information.
|
||||
pixfmt-nv16
|
||||
pixfmt-nv16m
|
||||
pixfmt-nv24
|
||||
+ pixfmt-nv15
|
||||
+ pixfmt-nv20
|
||||
pixfmt-m420
|
||||
diff --git a/drivers/media/v4l2-core/v4l2-common.c b/drivers/media/v4l2-core/v4l2-common.c
|
||||
index 4102c373b48a..0caac755d303 100644
|
||||
--- a/drivers/media/v4l2-core/v4l2-common.c
|
||||
|
@ -1,465 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Date: Wed, 23 Sep 2020 12:21:51 +0200
|
||||
Subject: [PATCH] drm/rockchip: Convert to drm_gem_object_funcs
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
GEM object functions deprecate several similar callback interfaces in
|
||||
struct drm_driver. This patch replaces the per-driver callbacks with
|
||||
per-instance callbacks in rockchip. The only exception is gem_prime_mmap,
|
||||
which is non-trivial to convert.
|
||||
|
||||
v3:
|
||||
* update documentation
|
||||
|
||||
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
||||
Acked-by: Christian König <christian.koenig@amd.com>
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/20200923102159.24084-15-tzimmermann@suse.de
|
||||
(cherry picked from commit 0d590af3140d0f84c537a9ad252aecc780ed7aa5)
|
||||
---
|
||||
drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 5 -----
|
||||
drivers/gpu/drm/rockchip/rockchip_drm_gem.c | 12 +++++++++++-
|
||||
2 files changed, 11 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
|
||||
index 0f3eb392fe39..b7654f5e4225 100644
|
||||
--- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
|
||||
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
|
||||
@@ -212,15 +212,10 @@ static const struct file_operations rockchip_drm_driver_fops = {
|
||||
static struct drm_driver rockchip_drm_driver = {
|
||||
.driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_ATOMIC,
|
||||
.lastclose = drm_fb_helper_lastclose,
|
||||
- .gem_vm_ops = &drm_gem_cma_vm_ops,
|
||||
- .gem_free_object_unlocked = rockchip_gem_free_object,
|
||||
.dumb_create = rockchip_gem_dumb_create,
|
||||
.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
|
||||
.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
|
||||
- .gem_prime_get_sg_table = rockchip_gem_prime_get_sg_table,
|
||||
.gem_prime_import_sg_table = rockchip_gem_prime_import_sg_table,
|
||||
- .gem_prime_vmap = rockchip_gem_prime_vmap,
|
||||
- .gem_prime_vunmap = rockchip_gem_prime_vunmap,
|
||||
.gem_prime_mmap = rockchip_gem_mmap_buf,
|
||||
.fops = &rockchip_drm_driver_fops,
|
||||
.name = DRIVER_NAME,
|
||||
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
|
||||
index 62e5d0970525..1cf4631461c9 100644
|
||||
--- a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
|
||||
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
|
||||
@@ -295,6 +295,14 @@ static void rockchip_gem_release_object(struct rockchip_gem_object *rk_obj)
|
||||
kfree(rk_obj);
|
||||
}
|
||||
|
||||
+static const struct drm_gem_object_funcs rockchip_gem_object_funcs = {
|
||||
+ .free = rockchip_gem_free_object,
|
||||
+ .get_sg_table = rockchip_gem_prime_get_sg_table,
|
||||
+ .vmap = rockchip_gem_prime_vmap,
|
||||
+ .vunmap = rockchip_gem_prime_vunmap,
|
||||
+ .vm_ops = &drm_gem_cma_vm_ops,
|
||||
+};
|
||||
+
|
||||
static struct rockchip_gem_object *
|
||||
rockchip_gem_alloc_object(struct drm_device *drm, unsigned int size)
|
||||
{
|
||||
@@ -309,6 +317,8 @@ static struct rockchip_gem_object *
|
||||
|
||||
obj = &rk_obj->base;
|
||||
|
||||
+ obj->funcs = &rockchip_gem_object_funcs;
|
||||
+
|
||||
drm_gem_object_init(drm, obj, size);
|
||||
|
||||
return rk_obj;
|
||||
@@ -337,7 +347,7 @@ rockchip_gem_create_object(struct drm_device *drm, unsigned int size,
|
||||
}
|
||||
|
||||
/*
|
||||
- * rockchip_gem_free_object - (struct drm_driver)->gem_free_object_unlocked
|
||||
+ * rockchip_gem_free_object - (struct drm_gem_object_funcs)->free
|
||||
* callback function
|
||||
*/
|
||||
void rockchip_gem_free_object(struct drm_gem_object *obj)
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Date: Mon, 28 Sep 2020 10:16:43 +0200
|
||||
Subject: [PATCH] drm/rockchip: Include <drm/drm_gem_cma_helper> for
|
||||
drm_gem_cm_vm_ops
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Include <drm/drm_gem_cma_helper.h> to get drm_gem_cma_vm_ops. Fallout
|
||||
from the recent conversion to GEM object functions.
|
||||
|
||||
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
|
||||
Reported-by: kernel test robot <lkp@intel.com>
|
||||
Fixes: 0d590af3140d ("drm/rockchip: Convert to drm_gem_object_funcs")
|
||||
Cc: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
|
||||
Cc: Christian König <christian.koenig@amd.com>
|
||||
Cc: Sandy Huang <hjc@rock-chips.com>
|
||||
Cc: "Heiko Stübner" <heiko@sntech.de>
|
||||
Cc: dri-devel@lists.freedesktop.org
|
||||
Cc: linux-arm-kernel@lists.infradead.org
|
||||
Cc: linux-rockchip@lists.infradead.org
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/20200928081643.8575-1-tzimmermann@suse.de
|
||||
(cherry picked from commit 8f7db83e6abf863c6a2cfddbe7086f1e3251fdbf)
|
||||
---
|
||||
drivers/gpu/drm/rockchip/rockchip_drm_gem.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
|
||||
index 1cf4631461c9..7d5ebb10323b 100644
|
||||
--- a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
|
||||
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
#include <drm/drm.h>
|
||||
#include <drm/drm_gem.h>
|
||||
+#include <drm/drm_gem_cma_helper.h>
|
||||
#include <drm/drm_prime.h>
|
||||
#include <drm/drm_vma_manager.h>
|
||||
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Qinglang Miao <miaoqinglang@huawei.com>
|
||||
Date: Mon, 21 Sep 2020 21:10:19 +0800
|
||||
Subject: [PATCH] drm/panfrost: simplify the return expression of
|
||||
cz_ih_hw_init()
|
||||
|
||||
Simplify the return expression.
|
||||
|
||||
Signed-off-by: Qinglang Miao <miaoqinglang@huawei.com>
|
||||
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
|
||||
Reviewed-by: Steven Price <steven.price@arm.com>
|
||||
Signed-off-by: Steven Price <steven.price@arm.com>
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/20200921131019.91558-1-miaoqinglang@huawei.com
|
||||
(cherry picked from commit 3c4641d4e75618fa1b5501b9ae9c19f765d75725)
|
||||
---
|
||||
drivers/gpu/drm/panfrost/panfrost_device.c | 8 +-------
|
||||
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
|
||||
--- a/drivers/gpu/drm/panfrost/panfrost_device.c
|
||||
+++ b/drivers/gpu/drm/panfrost/panfrost_device.c
|
||||
@@ -18,19 +18,13 @@
|
||||
|
||||
static int panfrost_reset_init(struct panfrost_device *pfdev)
|
||||
{
|
||||
- int err;
|
||||
-
|
||||
pfdev->rstc = devm_reset_control_array_get(pfdev->dev, false, true);
|
||||
if (IS_ERR(pfdev->rstc)) {
|
||||
dev_err(pfdev->dev, "get reset failed %ld\n", PTR_ERR(pfdev->rstc));
|
||||
return PTR_ERR(pfdev->rstc);
|
||||
}
|
||||
|
||||
- err = reset_control_deassert(pfdev->rstc);
|
||||
- if (err)
|
||||
- return err;
|
||||
-
|
||||
- return 0;
|
||||
+ return reset_control_deassert(pfdev->rstc);
|
||||
}
|
||||
|
||||
static void panfrost_reset_fini(struct panfrost_device *pfdev)
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Qinglang Miao <miaoqinglang@huawei.com>
|
||||
Date: Mon, 21 Sep 2020 21:10:21 +0800
|
||||
Subject: [PATCH] drm/panfrost: simplify the return expression of
|
||||
panfrost_devfreq_target()
|
||||
|
||||
Simplify the return expression.
|
||||
|
||||
Signed-off-by: Qinglang Miao <miaoqinglang@huawei.com>
|
||||
Reviewed-by: Steven Price <steven.price@arm.com>
|
||||
Signed-off-by: Steven Price <steven.price@arm.com>
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/20200921131021.91604-1-miaoqinglang@huawei.com
|
||||
(cherry picked from commit 0c5036590bde1407a6250ea027e836815353820f)
|
||||
---
|
||||
drivers/gpu/drm/panfrost/panfrost_devfreq.c | 7 +------
|
||||
1 file changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/panfrost/panfrost_devfreq.c b/drivers/gpu/drm/panfrost/panfrost_devfreq.c
|
||||
index 8ab025d0035f..913eaa6d0bc6 100644
|
||||
--- a/drivers/gpu/drm/panfrost/panfrost_devfreq.c
|
||||
+++ b/drivers/gpu/drm/panfrost/panfrost_devfreq.c
|
||||
@@ -29,18 +29,13 @@ static int panfrost_devfreq_target(struct device *dev, unsigned long *freq,
|
||||
u32 flags)
|
||||
{
|
||||
struct dev_pm_opp *opp;
|
||||
- int err;
|
||||
|
||||
opp = devfreq_recommended_opp(dev, freq, flags);
|
||||
if (IS_ERR(opp))
|
||||
return PTR_ERR(opp);
|
||||
dev_pm_opp_put(opp);
|
||||
|
||||
- err = dev_pm_opp_set_rate(dev, *freq);
|
||||
- if (err)
|
||||
- return err;
|
||||
-
|
||||
- return 0;
|
||||
+ return dev_pm_opp_set_rate(dev, *freq);
|
||||
}
|
||||
|
||||
static void panfrost_devfreq_reset(struct panfrost_devfreq *pfdevfreq)
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Rikard Falkeborn <rikard.falkeborn@gmail.com>
|
||||
Date: Sun, 4 Oct 2020 22:06:53 +0200
|
||||
Subject: [PATCH] drm: bridge: dw-hdmi: Constify dw_hdmi_i2s_ops
|
||||
|
||||
The only usage of dw_hdmi_i2s_ops is to assign its address to the ops
|
||||
field in the hdmi_codec_pdata struct, which is a const pointer. Make it
|
||||
const to allow the compiler to put it in read-only memory.
|
||||
|
||||
Signed-off-by: Rikard Falkeborn <rikard.falkeborn@gmail.com>
|
||||
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/20201004200653.14702-1-rikard.falkeborn@gmail.com
|
||||
(cherry picked from commit f3d52908f6baffc21ba45058103d0226ca5cb073)
|
||||
---
|
||||
drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c | 2 +-
|
||||
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
|
||||
--- 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,
|
||||
return dw_hdmi_set_plugged_cb(hdmi, fn, codec_dev);
|
||||
}
|
||||
|
||||
-static struct hdmi_codec_ops dw_hdmi_i2s_ops = {
|
||||
+static const struct hdmi_codec_ops dw_hdmi_i2s_ops = {
|
||||
.hw_params = dw_hdmi_i2s_hw_params,
|
||||
.audio_startup = dw_hdmi_i2s_audio_startup,
|
||||
.audio_shutdown = dw_hdmi_i2s_audio_shutdown,
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Liu Shixin <liushixin2@huawei.com>
|
||||
Date: Sat, 19 Sep 2020 18:08:50 +0800
|
||||
Subject: [PATCH] drm/lima: simplify the return expression of
|
||||
lima_devfreq_target
|
||||
|
||||
Simplify the return expression.
|
||||
|
||||
Signed-off-by: Liu Shixin <liushixin2@huawei.com>
|
||||
Signed-off-by: Qiang Yu <yuq825@gmail.com>
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/20200919100850.1639111-1-liushixin2@huawei.com
|
||||
---
|
||||
drivers/gpu/drm/lima/lima_devfreq.c | 7 +------
|
||||
1 file changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/lima/lima_devfreq.c b/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
index bbe02817721b..5914442936ed 100644
|
||||
--- a/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
+++ b/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
@@ -35,18 +35,13 @@ static int lima_devfreq_target(struct device *dev, unsigned long *freq,
|
||||
u32 flags)
|
||||
{
|
||||
struct dev_pm_opp *opp;
|
||||
- int err;
|
||||
|
||||
opp = devfreq_recommended_opp(dev, freq, flags);
|
||||
if (IS_ERR(opp))
|
||||
return PTR_ERR(opp);
|
||||
dev_pm_opp_put(opp);
|
||||
|
||||
- err = dev_pm_opp_set_rate(dev, *freq);
|
||||
- if (err)
|
||||
- return err;
|
||||
-
|
||||
- return 0;
|
||||
+ return dev_pm_opp_set_rate(dev, *freq);
|
||||
}
|
||||
|
||||
static void lima_devfreq_reset(struct lima_devfreq *devfreq)
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Lee Jones <lee.jones@linaro.org>
|
||||
Date: Fri, 13 Nov 2020 13:49:13 +0000
|
||||
Subject: [PATCH] drm/lima/lima_drv: Demote kernel-doc formatting abuse
|
||||
|
||||
Fixes the following W=1 kernel build warning(s):
|
||||
|
||||
drivers/gpu/drm/lima/lima_drv.c:264: warning: cannot understand function prototype: 'const struct drm_driver lima_drm_driver = '
|
||||
|
||||
Cc: Qiang Yu <yuq825@gmail.com>
|
||||
Cc: David Airlie <airlied@linux.ie>
|
||||
Cc: Daniel Vetter <daniel@ffwll.ch>
|
||||
Cc: dri-devel@lists.freedesktop.org
|
||||
Cc: lima@lists.freedesktop.org
|
||||
Signed-off-by: Lee Jones <lee.jones@linaro.org>
|
||||
Signed-off-by: Qiang Yu <yuq825@gmail.com>
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/20201113134938.4004947-16-lee.jones@linaro.org
|
||||
---
|
||||
drivers/gpu/drm/lima/lima_drv.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/lima/lima_drv.c b/drivers/gpu/drm/lima/lima_drv.c
|
||||
index ab460121fd52..065c80c14d10 100644
|
||||
--- a/drivers/gpu/drm/lima/lima_drv.c
|
||||
+++ b/drivers/gpu/drm/lima/lima_drv.c
|
||||
@@ -255,7 +255,7 @@ static const struct drm_ioctl_desc lima_drm_driver_ioctls[] = {
|
||||
|
||||
DEFINE_DRM_GEM_FOPS(lima_drm_driver_fops);
|
||||
|
||||
-/**
|
||||
+/*
|
||||
* Changelog:
|
||||
*
|
||||
* - 1.1.0 - add heap buffer support
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Lee Jones <lee.jones@linaro.org>
|
||||
Date: Fri, 13 Nov 2020 13:49:21 +0000
|
||||
Subject: [PATCH] drm/lima/lima_sched: Remove unused and unnecessary variable
|
||||
'ret'
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Fixes the following W=1 kernel build warning(s):
|
||||
|
||||
drivers/gpu/drm/lima/lima_sched.c: In function ‘lima_sched_run_job’:
|
||||
drivers/gpu/drm/lima/lima_sched.c:227:20: warning: variable ‘ret’ set but not used [-Wunused-but-set-variable]
|
||||
|
||||
Cc: Qiang Yu <yuq825@gmail.com>
|
||||
Cc: David Airlie <airlied@linux.ie>
|
||||
Cc: Daniel Vetter <daniel@ffwll.ch>
|
||||
Cc: Sumit Semwal <sumit.semwal@linaro.org>
|
||||
Cc: "Christian König" <christian.koenig@amd.com>
|
||||
Cc: dri-devel@lists.freedesktop.org
|
||||
Cc: lima@lists.freedesktop.org
|
||||
Cc: linux-media@vger.kernel.org
|
||||
Cc: linaro-mm-sig@lists.linaro.org
|
||||
Signed-off-by: Lee Jones <lee.jones@linaro.org>
|
||||
Signed-off-by: Qiang Yu <yuq825@gmail.com>
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/20201113134938.4004947-24-lee.jones@linaro.org
|
||||
---
|
||||
drivers/gpu/drm/lima/lima_sched.c | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/lima/lima_sched.c b/drivers/gpu/drm/lima/lima_sched.c
|
||||
index f6e7a88a56f1..040ea27b28ce 100644
|
||||
--- a/drivers/gpu/drm/lima/lima_sched.c
|
||||
+++ b/drivers/gpu/drm/lima/lima_sched.c
|
||||
@@ -223,7 +223,6 @@ static struct dma_fence *lima_sched_run_job(struct drm_sched_job *job)
|
||||
struct lima_sched_pipe *pipe = to_lima_pipe(job->sched);
|
||||
struct lima_device *ldev = pipe->ldev;
|
||||
struct lima_fence *fence;
|
||||
- struct dma_fence *ret;
|
||||
int i, err;
|
||||
|
||||
/* after GPU reset */
|
||||
@@ -245,7 +244,7 @@ static struct dma_fence *lima_sched_run_job(struct drm_sched_job *job)
|
||||
/* for caller usage of the fence, otherwise irq handler
|
||||
* may consume the fence before caller use it
|
||||
*/
|
||||
- ret = dma_fence_get(task->fence);
|
||||
+ dma_fence_get(task->fence);
|
||||
|
||||
pipe->current_task = task;
|
||||
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Viresh Kumar <viresh.kumar@linaro.org>
|
||||
Date: Wed, 28 Oct 2020 12:14:21 +0530
|
||||
Subject: [PATCH] drm/lima: Unconditionally call dev_pm_opp_of_remove_table()
|
||||
|
||||
dev_pm_opp_of_remove_table() doesn't report any errors when it fails to
|
||||
find the OPP table with error -ENODEV (i.e. OPP table not present for
|
||||
the device). And we can call dev_pm_opp_of_remove_table()
|
||||
unconditionally here.
|
||||
|
||||
Reviewed-by: Qiang Yu <yuq825@gmail.com>
|
||||
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
|
||||
Signed-off-by: Qiang Yu <yuq825@gmail.com>
|
||||
Link: https://patchwork.freedesktop.org/patch/msgid/c995335d16d8b4b4ff47b1273869c33e14782b32.1603867405.git.viresh.kumar@linaro.org
|
||||
---
|
||||
drivers/gpu/drm/lima/lima_devfreq.c | 6 +-----
|
||||
drivers/gpu/drm/lima/lima_devfreq.h | 1 -
|
||||
2 files changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/lima/lima_devfreq.c b/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
index 5914442936ed..da7099d20bd5 100644
|
||||
--- a/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
+++ b/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
@@ -100,10 +100,7 @@ void lima_devfreq_fini(struct lima_device *ldev)
|
||||
devfreq->devfreq = NULL;
|
||||
}
|
||||
|
||||
- if (devfreq->opp_of_table_added) {
|
||||
- dev_pm_opp_of_remove_table(ldev->dev);
|
||||
- devfreq->opp_of_table_added = false;
|
||||
- }
|
||||
+ dev_pm_opp_of_remove_table(ldev->dev);
|
||||
|
||||
if (devfreq->regulators_opp_table) {
|
||||
dev_pm_opp_put_regulators(devfreq->regulators_opp_table);
|
||||
@@ -157,7 +154,6 @@ int lima_devfreq_init(struct lima_device *ldev)
|
||||
ret = dev_pm_opp_of_add_table(dev);
|
||||
if (ret)
|
||||
goto err_fini;
|
||||
- ldevfreq->opp_of_table_added = true;
|
||||
|
||||
lima_devfreq_reset(ldevfreq);
|
||||
|
||||
diff --git a/drivers/gpu/drm/lima/lima_devfreq.h b/drivers/gpu/drm/lima/lima_devfreq.h
|
||||
index 5eed2975a375..2d9b3008ce77 100644
|
||||
--- a/drivers/gpu/drm/lima/lima_devfreq.h
|
||||
+++ b/drivers/gpu/drm/lima/lima_devfreq.h
|
||||
@@ -18,7 +18,6 @@ struct lima_devfreq {
|
||||
struct opp_table *clkname_opp_table;
|
||||
struct opp_table *regulators_opp_table;
|
||||
struct thermal_cooling_device *cooling;
|
||||
- bool opp_of_table_added;
|
||||
|
||||
ktime_t busy_time;
|
||||
ktime_t idle_time;
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Viresh Kumar <viresh.kumar@linaro.org>
|
||||
Date: Fri, 6 Nov 2020 12:18:39 +0530
|
||||
Subject: [PATCH] drm/lima: dev_pm_opp_put_*() accepts NULL argument
|
||||
|
||||
The dev_pm_opp_put_*() APIs now accepts a NULL opp_table pointer and so
|
||||
there is no need for us to carry the extra check. Drop them.
|
||||
|
||||
Reviewed-by: Qiang Yu <yuq825@gmail.com>
|
||||
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
|
||||
---
|
||||
drivers/gpu/drm/lima/lima_devfreq.c | 13 ++++---------
|
||||
1 file changed, 4 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/lima/lima_devfreq.c b/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
index da7099d20bd5..5686ad4aaf7c 100644
|
||||
--- a/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
+++ b/drivers/gpu/drm/lima/lima_devfreq.c
|
||||
@@ -102,15 +102,10 @@ void lima_devfreq_fini(struct lima_device *ldev)
|
||||
|
||||
dev_pm_opp_of_remove_table(ldev->dev);
|
||||
|
||||
- if (devfreq->regulators_opp_table) {
|
||||
- dev_pm_opp_put_regulators(devfreq->regulators_opp_table);
|
||||
- devfreq->regulators_opp_table = NULL;
|
||||
- }
|
||||
-
|
||||
- if (devfreq->clkname_opp_table) {
|
||||
- dev_pm_opp_put_clkname(devfreq->clkname_opp_table);
|
||||
- devfreq->clkname_opp_table = NULL;
|
||||
- }
|
||||
+ dev_pm_opp_put_regulators(devfreq->regulators_opp_table);
|
||||
+ dev_pm_opp_put_clkname(devfreq->clkname_opp_table);
|
||||
+ devfreq->regulators_opp_table = NULL;
|
||||
+ devfreq->clkname_opp_table = NULL;
|
||||
}
|
||||
|
||||
int lima_devfreq_init(struct lima_device *ldev)
|
@ -362,34 +362,6 @@ index 41edd0a421b2..4d463d50a63a 100644
|
||||
DRM_DEV_ERROR(lvds->dev, "failed to get pm runtime: %d\n", ret);
|
||||
return ret;
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Lukasz Luba <lukasz.luba@arm.com>
|
||||
Date: Tue, 5 Jan 2021 16:41:11 +0000
|
||||
Subject: [PATCH] drm/panfrost: Use delayed timer as default in devfreq profile
|
||||
|
||||
Devfreq framework supports 2 modes for monitoring devices.
|
||||
Use delayed timer as default instead of deferrable timer
|
||||
in order to monitor the GPU status regardless of CPU idle.
|
||||
|
||||
Signed-off-by: Lukasz Luba <lukasz.luba@arm.com>
|
||||
Reviewed-by: Steven Price <steven.price@arm.com>
|
||||
---
|
||||
drivers/gpu/drm/panfrost/panfrost_devfreq.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/panfrost/panfrost_devfreq.c b/drivers/gpu/drm/panfrost/panfrost_devfreq.c
|
||||
index 913eaa6d0bc6..17d5fa6e0b83 100644
|
||||
--- a/drivers/gpu/drm/panfrost/panfrost_devfreq.c
|
||||
+++ b/drivers/gpu/drm/panfrost/panfrost_devfreq.c
|
||||
@@ -76,6 +76,7 @@ static int panfrost_devfreq_get_dev_status(struct device *dev,
|
||||
}
|
||||
|
||||
static struct devfreq_dev_profile panfrost_devfreq_profile = {
|
||||
+ .timer = DEVFREQ_TIMER_DELAYED,
|
||||
.polling_ms = 50, /* ~3 frames */
|
||||
.target = panfrost_devfreq_target,
|
||||
.get_dev_status = panfrost_devfreq_get_dev_status,
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Lukasz Luba <lukasz.luba@arm.com>
|
||||
Date: Thu, 21 Jan 2021 17:04:45 +0000
|
||||
|
@ -211,15 +211,14 @@ index 69c2c079d803..65fbffc4cbc7 100644
|
||||
--- a/drivers/gpu/drm/drm_gem.c
|
||||
+++ b/drivers/gpu/drm/drm_gem.c
|
||||
@@ -1093,7 +1093,7 @@ int drm_gem_mmap_obj(struct drm_gem_object *obj, unsigned long obj_size,
|
||||
drm_gem_object_put(obj);
|
||||
return ret;
|
||||
}
|
||||
ret = obj->funcs->mmap(obj, vma);
|
||||
if (ret)
|
||||
goto err_drm_gem_object_put;
|
||||
- WARN_ON(!(vma->vm_flags & VM_DONTEXPAND));
|
||||
+ //WARN_ON(!(vma->vm_flags & VM_DONTEXPAND));
|
||||
} else {
|
||||
if (obj->funcs && obj->funcs->vm_ops)
|
||||
vma->vm_ops = obj->funcs->vm_ops;
|
||||
|
||||
if (!vma->vm_ops) {
|
||||
ret = -EINVAL;
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Karlman <jonas@kwiboo.se>
|
||||
Date: Sun, 25 Mar 2018 22:17:06 +0200
|
||||
|
@ -941,8 +941,8 @@ index 000000000000..a14fffb3ad61
|
||||
+
|
||||
+#define V4L2_PIX_FMT_VP9_FRAME v4l2_fourcc('V', 'P', '9', 'F')
|
||||
+
|
||||
+#define V4L2_CID_MPEG_VIDEO_VP9_FRAME_CONTEXT(i) (V4L2_CID_MPEG_BASE + 4000 + (i))
|
||||
+#define V4L2_CID_MPEG_VIDEO_VP9_FRAME_DECODE_PARAMS (V4L2_CID_MPEG_BASE + 4004)
|
||||
+#define V4L2_CID_MPEG_VIDEO_VP9_FRAME_CONTEXT(i) (V4L2_CID_CODEC_BASE + 4000 + (i))
|
||||
+#define V4L2_CID_MPEG_VIDEO_VP9_FRAME_DECODE_PARAMS (V4L2_CID_CODEC_BASE + 4004)
|
||||
+#define V4L2_CTRL_TYPE_VP9_FRAME_CONTEXT 0x400
|
||||
+#define V4L2_CTRL_TYPE_VP9_FRAME_DECODE_PARAMS 0x404
|
||||
+
|
||||
@ -3026,13 +3026,12 @@ diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvde
|
||||
index c4e0ec16c285..f3578c5ea902 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[] = {
|
||||
@@ -162,6 +162,39 @@ static const u32 rkvdec_h264_decoded_fmts[] = {
|
||||
V4L2_PIX_FMT_NV20,
|
||||
};
|
||||
|
||||
+static const struct rkvdec_ctrl_desc rkvdec_vp9_ctrl_descs[] = {
|
||||
+ {
|
||||
+ .mandatory = true,
|
||||
+ .cfg.id = V4L2_CID_MPEG_VIDEO_VP9_FRAME_DECODE_PARAMS,
|
||||
+ },
|
||||
+ {
|
||||
|
@ -65,18 +65,6 @@ index 456488f2b5ca..81529b1d8d69 100644
|
||||
``V4L2_CID_MPEG_VIDEO_HEVC_DECODE_MODE (enum)``
|
||||
Specifies the decoding mode to use. Currently exposes slice-based and
|
||||
frame-based decoding but new modes might be added later on.
|
||||
diff --git a/Documentation/userspace-api/media/v4l/pixfmt-compressed.rst b/Documentation/userspace-api/media/v4l/pixfmt-compressed.rst
|
||||
index d585909bc4e2..f817c643761b 100644
|
||||
--- a/Documentation/userspace-api/media/v4l/pixfmt-compressed.rst
|
||||
+++ b/Documentation/userspace-api/media/v4l/pixfmt-compressed.rst
|
||||
@@ -200,6 +200,7 @@ Compressed Formats
|
||||
* ``V4L2_CID_MPEG_VIDEO_HEVC_SPS``
|
||||
* ``V4L2_CID_MPEG_VIDEO_HEVC_PPS``
|
||||
* ``V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS``
|
||||
+ * ``V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX``
|
||||
See the :ref:`associated Codec Control IDs <v4l2-mpeg-hevc>`.
|
||||
Buffers associated with this pixel format must contain the appropriate
|
||||
number of macroblocks to decode a full corresponding frame.
|
||||
diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c
|
||||
index 7ed11f296008..a2609de88d26 100644
|
||||
--- a/drivers/media/v4l2-core/v4l2-ctrls.c
|
||||
@ -124,12 +112,12 @@ index 1009cf0891cc..1592e52c3614 100644
|
||||
--- a/include/media/hevc-ctrls.h
|
||||
+++ b/include/media/hevc-ctrls.h
|
||||
@@ -19,6 +19,7 @@
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_SPS (V4L2_CID_MPEG_BASE + 1008)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_PPS (V4L2_CID_MPEG_BASE + 1009)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS (V4L2_CID_MPEG_BASE + 1010)
|
||||
+#define V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX (V4L2_CID_MPEG_BASE + 1011)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_DECODE_MODE (V4L2_CID_MPEG_BASE + 1015)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_START_CODE (V4L2_CID_MPEG_BASE + 1016)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_SPS (V4L2_CID_CODEC_BASE + 1008)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_PPS (V4L2_CID_CODEC_BASE + 1009)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS (V4L2_CID_CODEC_BASE + 1010)
|
||||
+#define V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX (V4L2_CID_CODEC_BASE + 1011)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_DECODE_MODE (V4L2_CID_CODEC_BASE + 1015)
|
||||
#define V4L2_CID_MPEG_VIDEO_HEVC_START_CODE (V4L2_CID_CODEC_BASE + 1016)
|
||||
|
||||
@@ -26,6 +27,7 @@
|
||||
#define V4L2_CTRL_TYPE_HEVC_SPS 0x0120
|
||||
@ -2901,28 +2889,24 @@ diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvde
|
||||
index f3578c5ea902..a44db1aa161e 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[] = {
|
||||
@@ -162,6 +162,57 @@ static const u32 rkvdec_h264_decoded_fmts[] = {
|
||||
V4L2_PIX_FMT_NV20,
|
||||
};
|
||||
|
||||
+static const struct rkvdec_ctrl_desc rkvdec_hevc_ctrl_descs[] = {
|
||||
+ {
|
||||
+ .mandatory = true,
|
||||
+ .cfg.id = V4L2_CID_MPEG_VIDEO_HEVC_SLICE_PARAMS,
|
||||
+ // HACK: match ffmpeg v4l2 request api hwaccel size,
|
||||
+ // we should support variable length up to 600 slices
|
||||
+ .cfg.dims = { 16 },
|
||||
+ },
|
||||
+ {
|
||||
+ .mandatory = true,
|
||||
+ .cfg.id = V4L2_CID_MPEG_VIDEO_HEVC_SPS,
|
||||
+ },
|
||||
+ {
|
||||
+ .mandatory = true,
|
||||
+ .cfg.id = V4L2_CID_MPEG_VIDEO_HEVC_PPS,
|
||||
+ },
|
||||
+ {
|
||||
+ .mandatory = true,
|
||||
+ .cfg.id = V4L2_CID_MPEG_VIDEO_HEVC_SCALING_MATRIX,
|
||||
+ },
|
||||
+ {
|
||||
|
@ -142,9 +142,9 @@ index 62b6cdc8c730..f99a873818d5 100644
|
||||
obj-$(CONFIG_VIDEO_RENESAS_VSP1) += vsp1/
|
||||
|
||||
+obj-$(CONFIG_VIDEO_ROCKCHIP_IEP) += rockchip/iep/
|
||||
obj-$(CONFIG_VIDEO_ROCKCHIP_ISP1) += rockchip/rkisp1/
|
||||
obj-$(CONFIG_VIDEO_ROCKCHIP_RGA) += rockchip/rga/
|
||||
|
||||
obj-y += omap/
|
||||
diff --git a/drivers/media/platform/rockchip/iep/Makefile b/drivers/media/platform/rockchip/iep/Makefile
|
||||
new file mode 100644
|
||||
index 000000000000..5c89b3277469
|
||||
|
Loading…
x
Reference in New Issue
Block a user