Thread (9 messages) 9 messages, 4 authors, 2021-12-03

Re: [RFC V3 0/2] arm64: imx8mm: Enable Hantro VPUs

From: Nicolas Dufresne <hidden>
Date: 2021-12-03 03:57:37
Also in: linux-arm-kernel, linux-devicetree, linux-media, linux-rockchip, lkml

Le mercredi 01 décembre 2021 à 22:16 -0600, Adam Ford a écrit :
The i.MX8M has two Hantro video decoders, called G1 and G2 which appear
to be related to the video decoders used on the i.MX8MQ, but because of
how the Mini handles the power domains, the VPU driver does not need to
handle all the functions, so a new compatible flag is required.

V3 is rebased from git://linuxtv.org/hverkuil/media_tree.git for-v5.17c
This branch has support for VP9.

I set cma=512M, but this may not be enough memory as some tests appeard to run out of memory
Consider passing -j1 to fluster and using patience, this will spare some memory.
You can also increase the timeout (like -t 60), that often helps when CMA is
involved (due to software conversion happening). Thanks for the serious testing,
this is really appreciated that your submission really reflects the state.
V3 of this series has several changes:

Update imx8m_vpu_hw to add missing 'reg' reference names for G2 and include references to VP9
Update device tree to remove IMX8MQ_VPU_RESET, remove some duplicate vpu clock parenting
Fix missing reg-names from vpu_g2 node.
Apply patch [1] to manage the power domains powering down.
[1] - https://lore.kernel.org/linux-arm-kernel/20211016210547.171717-1-marex@denx.de/t/ (local)

With the above, the following Fluster scores are produced:

G1:
./fluster.py run -dGStreamer-H.264-V4L2SL-Gst1.0
Ran 90/135 tests successfully               in 74.406 secs
This matches my results on imx8mq.
./fluster.py run -d GStreamer-VP8-V4L2SL-Gst1.0
Ran 55/61 tests successfully               in 8.080 secs
Idem.
G2:
./fluster.py run -d GStreamer-VP9-V4L2SL-Gst1.0
Ran 127/303 tests successfully               in 203.873 secs
Benjamin reports 129, it could be flux. This is still a bit early, hence the low
score. But most streams do playback normally.
Fluster and G-Streamer were both built from their respective git repos using their respective master/main branches.
That gave me an idea, I'll try and print the GStreamer version/commit inside
fluster along with fluster own commit (ideally in the short summary).

Adam Ford (2):
  media: hantro: Add support for i.MX8M Mini
  arm64: dts: imx8mm: Enable VPU-G1 and VPU-G2

 arch/arm64/boot/dts/freescale/imx8mm.dtsi   | 41 +++++++++++++
 drivers/staging/media/hantro/hantro_drv.c   |  2 +
 drivers/staging/media/hantro/hantro_hw.h    |  2 +
 drivers/staging/media/hantro/imx8m_vpu_hw.c | 65 +++++++++++++++++++++
 4 files changed, 110 insertions(+)
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help