Skip to content

Commit 9998943

Browse files
ndufresnemchehab
authored andcommitted
media: rkvdec: Stop overclocking the decoder
While this overclock hack seems to work on some implementations (some ChromeBooks, RockPi4) it also causes instability on other implementations (notably LibreComputer Renegade, but there were more reports in the LibreELEC project, where this has been removed). While performance is indeed affected (tested with GStreamer), 4K playback still works as long as you don't operate in lock step and keep at least 1 frame ahead of time in the decode queue. After discussion with ChromeOS members, it would seem that their implementation indeed used to synchronously decode each frame, so this hack was simply compensating for their code being less efficient. In my opinion, this hack should not have been included upstream. Fixes: cd33c83 ("media: rkvdec: Add the rkvdec driver") Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Reviewed-by: Sebastian Fricke <sebastian.fricke@collabora.com> Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
1 parent 1b72999 commit 9998943

1 file changed

Lines changed: 0 additions & 6 deletions

File tree

drivers/staging/media/rkvdec/rkvdec.c

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1027,12 +1027,6 @@ static int rkvdec_probe(struct platform_device *pdev)
10271027
if (ret)
10281028
return ret;
10291029

1030-
/*
1031-
* Bump ACLK to max. possible freq. (500 MHz) to improve performance
1032-
* When 4k video playback.
1033-
*/
1034-
clk_set_rate(rkvdec->clocks[0].clk, 500 * 1000 * 1000);
1035-
10361030
rkvdec->regs = devm_platform_ioremap_resource(pdev, 0);
10371031
if (IS_ERR(rkvdec->regs))
10381032
return PTR_ERR(rkvdec->regs);

0 commit comments

Comments
 (0)