Is the DPU accessible directly through libdrm?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Is the DPU accessible directly through libdrm?

跳至解决方案
796 次查看
crg7475
Contributor III

On the i.MX8 QuadMax, the DPU is accessible through an emulated G2D API. (The GPU on that SoC has no actual 2D core.) This means that the binary-only libg2d.so is the only way for applications to control and use the DPU (for example, for pixel format conversions and Amphion Malone frame detiling).

Or ... is it maybe possible to bypass G2D and use the DPU through libdrm? I can't find any API docs or command list. The libdrm NXP fork contains calls that can pass commands to the DPU, but not much more than that.

0 项奖励
1 解答
762 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

The dpu driver is dpu-blit.c,but there is no any description about this cmd list.

 

can my own code use this

->The driver can accept ioctl from user space, so you can use this DRM_IOCTL_IMX_DPU_SET_CMDLIST flag in drmioctl.

But you need research dpu-blit.c.

 

在原帖中查看解决方案

0 项奖励
3 回复数
782 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

The libdrm api can directly operate DPU.

0 项奖励
776 次查看
crg7475
Contributor III

Okay, but can my own code use this? I can't find a list of DPU commands that I can use with libdrm for example. In include/drm/imx_drm.h , I find DRM_IOCTL_IMX_DPU_SET_CMDLIST , DRM_IOCTL_IMX_DPU_WAIT , DRM_IOCTL_IMX_DPU_GET_PARAM , and a couple of structs. But what would that cmdlist look like for example?

0 项奖励
763 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

The dpu driver is dpu-blit.c,but there is no any description about this cmd list.

 

can my own code use this

->The driver can accept ioctl from user space, so you can use this DRM_IOCTL_IMX_DPU_SET_CMDLIST flag in drmioctl.

But you need research dpu-blit.c.

 

0 项奖励