[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260130084133.2159-1-ming.qian@oss.nxp.com>
Date: Fri, 30 Jan 2026 16:41:31 +0800
From: ming.qian@....nxp.com
To: linux-media@...r.kernel.org
Cc: mchehab@...nel.org,
hverkuil-cisco@...all.nl,
nicolas@...fresne.ca,
benjamin.gaignard@...labora.com,
robh@...nel.org,
krzk+dt@...nel.org,
conor+dt@...nel.org,
p.zabel@...gutronix.de,
sebastian.fricke@...labora.com,
shawnguo@...nel.org,
ulf.hansson@...aro.org,
s.hauer@...gutronix.de,
kernel@...gutronix.de,
festevam@...il.com,
linux-imx@....com,
l.stach@...gutronix.de,
Frank.li@....com,
peng.fan@....com,
eagle.zhou@....com,
devicetree@...r.kernel.org,
imx@...ts.linux.dev,
linux-pm@...r.kernel.org,
linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org
Subject: [PATCH] arm64: dts: imx8mq: Restore VPU G2 clock to 600MHz for 4K60fps decoding
From: Ming Qian <ming.qian@....nxp.com>
The VPU G2 clock was reduced from 600MHz to 300MHz in commit
b27bfc5103c7 ("arm64: dts: freescale: Fix VPU G2 clock") to address
pixel errors with high-resolution HEVC postprocessor output.
However, testing shows the 300MHz clock rate is insufficient for
4K60fps decoding and the original pixel errors no longer occur at
600MHz with current drivers.
Test results with 3840x2160@...ps HEVC stream decoded to NV12
(the same scenario that exhibited pixel errors previously):
300MHz performance:
- Severe frame dropping throughout playback
- Only 336 frames rendered in 11:53 (0.471 fps)
- Continuous "A lot of buffers are being dropped" warnings
- Completely unusable for 4K video
600MHz performance:
- Smooth playback with only 1 frame dropped at startup
- 37981 frames rendered in 10:34 (59.857 fps)
- Achieves target 60fps performance
- No pixel errors or artifacts observed
Restore the clock to 600MHz to enable proper 4K60fps decoding
capability while maintaining stability.
Test pipeline:
gst-launch-1.0 filesrc location=<4K60_HEVC.mkv> ! \
video/x-matroska ! aiurdemux ! h265parse ! \
v4l2slh265dec ! video/x-raw,format=NV12 ! \
queue ! waylandsink
Fixes: b27bfc5103c7 ("arm64: dts: freescale: Fix VPU G2 clock")
Signed-off-by: Ming Qian <ming.qian@....nxp.com>
---
arch/arm64/boot/dts/freescale/imx8mq.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8mq.dtsi b/arch/arm64/boot/dts/freescale/imx8mq.dtsi
index 607962f807be..731142176625 100644
--- a/arch/arm64/boot/dts/freescale/imx8mq.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mq.dtsi
@@ -960,7 +960,7 @@ pgc_vpu: power-domain@6 {
<&clk IMX8MQ_SYS1_PLL_800M>,
<&clk IMX8MQ_VPU_PLL>;
assigned-clock-rates = <600000000>,
- <300000000>,
+ <600000000>,
<800000000>,
<0>;
};
base-commit: c824345288d11e269ce41b36c105715bc2286050
prerequisite-patch-id: 0000000000000000000000000000000000000000
--
2.52.0
Powered by blists - more mailing lists