IMX8QM DPU

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IMX8QM DPU

682 Views
JoRadio
Contributor II

In the DPU driver, there is the following code in kernel/kernel-source/drivers/gpu/drm/imx/dpu/dpu-plane.c:944

static const struct drm_plane_helper_funcs dpu_plane_helper_funcs = {
	.prepare_fb = drm_gem_fb_prepare_fb,
	.atomic_check = dpu_plane_atomic_check,
	.atomic_update = dpu_plane_atomic_update,
	// no .atomic_async_check
	// no .atomic_async_update
};

Up to the latest imx-linux code repository, I found that .atomic_async_check and .atomic_async_update are still missing in the code, which causes all drm-plane commits to always be synchronous. As a result, in user space, after Weston starts, all drm-planes except the primary-plane cannot be used. Does NXP officially provide patches implementing .atomic_async_check and .atomic_async_update? If these two functions cannot be implemented due to hardware limitations, please let me know.

0 Kudos
Reply
1 Reply

601 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @JoRadio 

The DPU doesn't support such feature.

atomic_async_update
An async update will happen on legacy cursor updates. 

Drivers should set this function pointer to perform asynchronous updates of planes, that is, jump ahead of the currently queued state and update the plane. Here async means “not vblank synchronized”.



Best Regards,
Zhiming

0 Kudos
Reply