I'm using a custom i.mx6Solo board and am having an issue with the vpuenc gstreamer plugin. I'm able to otherwise use gstreamer plugins like mfw_v4lsink, tvsrc, mfw_isink etc but the vpu does not seem to be working. When invoking vpuenc with the h.264 codec, I get the following debug error from gst-launch:
0:00:02.613795334 1154 0x389920 ERROR vpuenc vpuenc.c:441:vpuenc_core_init: func VPU_EncGetVersionInfo failed!! with ret 1
Looking in my dmesg, it appears that the VPU is recognized as I see:
mxc_vpu 2040000.vpu: VPU initialized
I'm using the 3.10.17ga fsl-image-test yocto image.
I've confirmed that this also happens with vpudec.
Thanks for the help,
-Allan
已解决! 转到解答。
I found the problem. In my device tree, I was setting the VPU power supply to pu_dummy, when it should have been set to a regulator. Seems to have fixed the issue.
-Allan
Hi,
I'm facing the same issue, but I am using a i.MX6 Dual (MCIMX6D5EYM10AD).
I have pu_dummy too, and here is what I get in my dmesg:
mxc_vpu 2040000.vpu: VPU initialized
vddpu: disabling
mxc_vpu 2040000.vpu: size=0x4000, page no.=0x2040
mxc_vpu 2040000.vpu: [ALLOC] mem alloc cpu_addr = 0xac080000
mxc_vpu 2040000.vpu: start=0x76722000, pgoff=0x3c080, size=0x7c000
If I understand correctly, it seems that VPU is enabled and initialized, then disabled, and not enabled again...
Allan, can you share your dts part for vpu ?
Thanks,
JM
Hi Allan
our 3.10.17 yocto developers are working on link below,
please post issue on meta-fsl-arm mailing list, so that
they could try to assist you.
https://lists.yoctoproject.org/listinfo/meta-freescale
Best regards
chip
A bit more information, I turned on VPU debugging in the kernel, and when I run gst-launch with vpuenc I get the following:
root@imx6dlsabresd:~# dmesg | grep vpu
mxc_vpu 2040000.vpu: VPU initialized
mxc_vpu 2040000.vpu: size=0x4000, page no.=0x2040
mxc_vpu 2040000.vpu: [ALLOC] mem alloc cpu_addr = 0x8c300000
mxc_vpu 2040000.vpu: start=0x766cd000, pgoff=0x1c300, size=0x7c000
Hi Allan
first check that this particular i.mx6Solo has VPU module
(not all processors have it) with i.mx6Solo datasheet.
Also please check this issue with ltib
You can try to rebuld yocto (check woth documentation inside package
to include VPU divers).
If after that you think that this is specific 3.10.17 yocto problem,
please post issue on meta-fsl-arm mailing list, so that someone familiar with
similar problems could try to assist you.
https://lists.yoctoproject.org/listinfo/meta-freescale
Best regards
chip
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Thanks chip-
I'm using an MCIMX6S5EVM10AC which does have a VPU.
I've also tried re-building yocto, as well as using an imx6dlsabresd machine type.
My gst-inspect is as follows, indicating that indeed all of the necessary plugins are being built and installed:
root@imx6dlsabresd:~# gst-inspect|grep imx
mpeg2dec.imx: mfw_mpeg2decoder: mpeg2 video decoder
v4lsink.imx: mfw_v4lsink: v4l2 video sink
mp3enc.imx: mfw_mp3encoder: mp3 audio encoder
h264.imx: mfw_h264decoder: h264 video decoder
isink.imx: mfw_isink: IPU-based video sink
vpu.imx: vpudec: VPU-based video decoder
vpu.imx: vpuenc: VPU-based video encoder
audiopeq.imx: mfw_audio_pp: audio post equalizer
mpeg4dec.imx: mfw_mpeg4aspdecoder: mpeg4 video decoder
amrdec.imx: mfw_amrdecoder: amr audio decoder
aiur.imx: webm: webm
aiur.imx: aiurdemux: aiur universal demuxer
beep.imx: ac3: ac3
beep.imx: 3ca: ac3
beep.imx: beepdec: beep audio decoder
beep.imx: beepdec.vorbis: Vorbis decoder
beep.imx: beepdec.mp3: MP3 decoder
beep.imx: beepdec.aac: AAC LC decoder
ipucsc.imx: mfw_ipucsc: IPU-based video converter
tvsrc.imx: tvsrc: v4l2 based tv src
v4lsrc.imx: mfw_v4lsrc: v4l2 based camera src
I will also try a posting on the meta-freescale list.
-Allan