For now I’m not sure if HW was actually used: 720p videos played smoothly with no frame drops, but 4k -not. As I understood for now mainline (+ patches) only supports hantro which is limited to 1080p, rkvdec2 (supports 4k) is not implemented.
But the CPU is likely enough to process 720p videos, so it might be a CPU decoding.
After loading hantro-vpu module i have:
[147814.541636] hantro_vpu: module is from the staging directory, the quality is unknown, you have been warned.
[147814.545292] hantro-vpu fdea0000.video-codec: registered rockchip,rk3568-vpu-dec as /dev/video0
dsa-support is mainline since 6.0, also applied the speed fix.
do you use my defconfig or your one? make sure the hantro is enabled (i guess you ned to disable the CONFIG_MEDIA_SUPPORT_FILTER too). for usb-keyboard…it looks like my defconfig miss the driver
edit: INPUT_KEYBOARD and USB_HID should be enough
your log attached the ioctrls…do not know if they needed, but it looks like it is not complete working
Input ioctls:
test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
test VIDIOC_ENUMAUDIO: OK (Not Supported)
test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
test VIDIOC_G/S_AUDIO: OK (Not Supported)
Inputs: 0 Audio Inputs: 0 Tuners: 0
Output ioctls:
test VIDIOC_G/S_MODULATOR: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_ENUMAUDOUT: OK (Not Supported)
test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
test VIDIOC_G/S_AUDOUT: OK (Not Supported)
Outputs: 0 Audio Outputs: 0 Modulators: 0
Input is most likely for input devices: cameras/TV-tuners/capture cards/etc so it’s not a promlem.
Outputs - interesting… I suppose OK is better than FAIL but idk all these parameters meanings. Anyway it’s a driver internals. And if i’s supported by HW it might be not implemented in driver.
What and how do you check ? The best support for full - screen video playback is in LE . There is no HW in browsers yet, browser developers must add it, or you must assemble and configure all components manually.
LibreElec generates it’s patches from this source.
I’ve started experimenting with building kernel from LibreElec’s config and building this ffmpeg fork. Just finished building it, for my old RK3288 board, cause I do not have a RK3588 yet.
It is not a typo, I mean to buy one RK3588 when it is available. But for now, I only have a RK3288 (and a RK3399 chromebook tablet for only EUR 99 new, nice for later experiments)
But anyway, I guess you need to use v4l2-request for RK3288, RK3328, RK3399, RK3568 and RK3588. (I believe v4l2-m2m is not for any rockchip chipset)