Messages in this thread Patch in this message | | | Date | Sat, 13 Aug 2016 13:37:32 +0100 | Subject | imx-drm: Possible regression after update to atomic | From | "Peter Senna Tschudin" <> |
| |
d7868cb7ac58640e9c0383205ba31bd6a985cc6f is the last commit that works for me. I'm experiencing black screen after Weston starts in two different i.MX based devices:
- i.MX6 -> arch/arm/boot/dts/imx6q-b850v3.dts - i.MX53 based device
Weston starts, but nothing is shown on screen. fb works fine. Disabling fb on Kconfig or simply commenting out drm_fbdev_cma_init() solves the black screen issue.
The tests that are causing the black screen:
diff --git a/drivers/gpu/drm/imx/ipuv3-plane.c b/drivers/gpu/drm/imx/ipuv3-plane.c index 4ad67d0..52dc1b7 100644 --- a/drivers/gpu/drm/imx/ipuv3-plane.c +++ b/drivers/gpu/drm/imx/ipuv3-plane.c @@ -325,7 +325,7 @@ static int ipu_plane_atomic_check(struct drm_plane *plane, if (old_fb && (state->src_w != old_state->src_w || state->src_h != old_state->src_h || fb->pixel_format != old_fb->pixel_format)) - return -EINVAL; eba = drm_plane_state_to_eba(state); @@ -336,7 +336,7 @@ static int ipu_plane_atomic_check(struct drm_plane *plane, return -EINVAL; if (old_fb && fb->pitches[0] != old_fb->pitches[0]) - return -EINVAL; switch (fb->pixel_format) { case DRM_FORMAT_YUV420: @@ -372,7 +372,7 @@ static int ipu_plane_atomic_check(struct drm_plane *plane, return -EINVAL; if (old_fb && old_fb->pitches[1] != fb->pitches[1]) - return -EINVAL; }
I tried to replace the return -EINVAL by crtc_state->mode_changed = true with no positive results.
I'm trying to understand what is the difference with and without fb, but I have no conclusions yet. Hints on what could be the cause here?
Thank you,
Peter
P.S. This is what I get after replacing the return -EINVAL(the mode is correct): https://goo.gl/photos/1eRdcco9GpszgvzM8
| |