|
沙发
楼主 |
发表于 2020-11-18 23:43:43
|
只看该作者
本帖最后由 hz2580 于 2020-11-18 23:47 编辑
mRga->ops->setSrcFormat(mRga, V4L2_PIX_FMT_ARGB32, srcBuf_width, srcBuf_height);
mRga->ops->setDstFormat(mRga, V4L2_PIX_FMT_NV12, dstBuf_width, dstBuf_height);
mRga->ops->setSrcBufferPtr(mRga, srcBuf);
mRga->ops->setDstBufferPtr(mRga, dstBuf);
mRga->ops->setSrcCrop(mRga, srcX, srcY, srcW,srcH);
mRga->ops->setDstCrop(mRga, dstX, dstY, dstW,dstH);
mRga->ops->go(mRga);
感觉只要有V4L2_PIX_FMT_ARGB32就会出错,是不是内核驱动里面这个作为源不支持?
内核的错误提示:
[ 5543.470382] rk_vcodec: vpu_service_ioctl:1890: error: unknown vpu service ioctl cmd 40086c01
[ 5548.857117] Unable to handle kernel paging request at virtual address ffffffc000000000
[ 5548.857834] pgd = ffffffc0f1398000
[ 5548.858139] [ffffffc000000000] *pgd=0000000000000000, *pud=0000000000000000
[ 5548.858825] Internal error: Oops: 96000146 [#1] SMP
[ 5548.859258] Modules linked in:
[ 5548.859547] CPU: 4 PID: 2142 Comm: rk3399pro_vdec Not tainted 4.4.167 #78
[ 5548.860150] Hardware name: rockchip,rk3399pro-toybrick-prod-linux (DT)
[ 5548.860731] task: ffffffc0ed035e80 task.stack: ffffffc0efdd0000
[ 5548.861263] PC is at __dma_flush_range+0x18/0x30
[ 5548.861674] LR is at rga_dma_flush_page+0x50/0x5c
[ 5548.862093] pc : [<ffffff8008094b98>] lr : [<ffffff8008429284>] pstate: 60000145
[ 5548.862739] sp : ffffffc0efdd35f0
内核版本:
[toybrick@toybrick MyProjects]$ cat /proc/version
Linux version 4.4.167 (kfx@inno) (gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05) ) #78 SMP Wed Aug 21 09:15:51 CST 2019
[toybrick@toybrick MyProjects]$ uname -a
Linux toybrick.fc28 4.4.167 #78 SMP Wed Aug 21 09:15:51 CST 2019 aarch64 aarch64 aarch64 GNU/Linux
|
|