Hi all,
I'm working on something with a pi cm4 where I need the hardware acceleration of the h264 and h265 decoder blocks.
feel free to tell me I'm in the wrong place, but asking here because you guys doing the development seem to understand the hardware far better than me.
I'm trying to set this up in buildroot and given that everything I need seems to work under libreelec I've cherry picked and patched into buildroot the versions of:
- kernel
- bootloader
- mesa
- libdrm
- ffmpeg
that are being used in liberelec, but i can't get the vc4-kms-v3d driver working.
the error message i'm getting in the logs is:
Code
# cat /var/log/messages | grep vc4
Jan 1 00:00:04 buildroot user.info kernel: [ 4.284570] fb0: switching to vc4 from simple
Jan 1 00:00:04 buildroot user.info kernel: [ 4.413565] vc4-drm gpu: bound fe400000.hvs (ops vc4_hvs_ops [vc4])
Jan 1 00:00:04 buildroot user.err kernel: [ 4.421757] vc4-drm gpu: failed to bind fef00700.hdmi (ops vc4_hdmi_ops [vc4]): -22
Jan 1 00:00:04 buildroot user.info kernel: [ 4.436318] vc4-drm gpu: master bind failed: -22
Jan 1 00:00:04 buildroot user.warn kernel: [ 4.448451] vc4-drm: probe of gpu failed with error -22
and the screen works initially until it tries to switch the framebuffer and then nothing.
the modules do appear to be loading:
Code
# lsmod
Module Size Used by Tainted: G
ipv6 561152 18 [permanent]
vc4 303104 0
v3d 86016 0
cec 53248 1 vc4
gpu_sched 45056 1 v3d
drm_kms_helper 286720 1 vc4
bcm2835_codec 49152 0
bcm2835_v4l2 45056 0
bcm2835_isp 32768 0
bcm2835_mmal_vchiq 40960 3 bcm2835_codec,bcm2835_v4l2,bcm2835_isp
v4l2_mem2mem 40960 1 bcm2835_codec
videobuf2_dma_contig 24576 2 bcm2835_codec,bcm2835_isp
videobuf2_vmalloc 20480 1 bcm2835_v4l2
drm 573440 5 vc4,v3d,gpu_sched,drm_kms_helper
videobuf2_memops 20480 2 videobuf2_dma_contig,videobuf2_vmalloc
videobuf2_v4l2 32768 4 bcm2835_codec,bcm2835_v4l2,bcm2835_isp,v4l2_mem2mem
videobuf2_common 65536 8 bcm2835_codec,bcm2835_v4l2,bcm2835_isp,v4l2_mem2mem,videobuf2_dma_contig,videobuf2_vmalloc,videobuf2_memops,videobuf2_v4l2
snd_soc_core 249856 1 vc4
drm_panel_orientation_quirks 24576 1 drm
snd_compress 20480 1 snd_soc_core
raspberrypi_hwmon 16384 0
videodev 262144 6 bcm2835_codec,bcm2835_v4l2,bcm2835_isp,v4l2_mem2mem,videobuf2_v4l2,videobuf2_common
snd_pcm_dmaengine 20480 1 snd_soc_core
i2c_brcmstb 16384 0
snd_pcm 131072 3 snd_soc_core,snd_compress,snd_pcm_dmaengine
vc_sm_cma 36864 2 bcm2835_isp,bcm2835_mmal_vchiq
mc 61440 6 bcm2835_codec,bcm2835_isp,v4l2_mem2mem,videobuf2_v4l2,videobuf2_common,videodev
snd_timer 36864 1 snd_pcm
rpivid_mem 16384 0
snd 98304 4 snd_soc_core,snd_compress,snd_pcm,snd_timer
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
nvmem_rmem 16384 0
backlight 20480 2 drm_kms_helper,drm
uio_pdrv_genirq 16384 0
uio 24576 1 uio_pdrv_genirq
Display More
really stuck on this, any help would be appreciated
Thanks