From 9fb93b0ab4be668133f0239da32bed5ac9bff1d9 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 1 Feb 2017 17:10:09 -0800 Subject: [PATCH] drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of fkms. Trying to debug weston on fkms involved figuring out what calls I was making to the firmware. Signed-off-by: Eric Anholt Signed-off-by: Tim Gardner --- drivers/gpu/drm/vc4/vc4_firmware_kms.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/drivers/gpu/drm/vc4/vc4_firmware_kms.c b/drivers/gpu/drm/vc4/vc4_firmware_kms.c index e49ce68b607a..dbf065677202 100644 --- a/drivers/gpu/drm/vc4/vc4_firmware_kms.c +++ b/drivers/gpu/drm/vc4/vc4_firmware_kms.c @@ -102,6 +102,11 @@ static int vc4_plane_set_primary_blank(struct drm_plane *plane, bool blank) struct vc4_dev *vc4 = to_vc4_dev(plane->dev); u32 packet = blank; + + DRM_DEBUG_ATOMIC("[PLANE:%d:%s] primary plane %s", + plane->base.id, plane->name, + blank ? "blank" : "unblank"); + return rpi_firmware_property(vc4->firmware, RPI_FIRMWARE_FRAMEBUFFER_BLANK, &packet, sizeof(packet)); @@ -149,6 +154,16 @@ static void vc4_primary_plane_atomic_update(struct drm_plane *plane, WARN_ON_ONCE(vc4_plane->pitch != fb->pitches[0]); } + DRM_DEBUG_ATOMIC("[PLANE:%d:%s] primary update %dx%d@%d +%d,%d 0x%08x/%d\n", + plane->base.id, plane->name, + state->crtc_w, + state->crtc_h, + bpp, + state->crtc_x, + state->crtc_y, + bo->paddr + fb->offsets[0], + fb->pitches[0]); + ret = rpi_firmware_transaction(vc4->firmware, RPI_FIRMWARE_CHAN_FB, vc4_plane->fbinfo_bus_addr); @@ -178,6 +193,15 @@ static void vc4_cursor_plane_atomic_update(struct drm_plane *plane, WARN_ON_ONCE(fb->pitches[0] != state->crtc_w * 4); WARN_ON_ONCE(fb->bits_per_pixel != 32); + DRM_DEBUG_ATOMIC("[PLANE:%d:%s] update %dx%d cursor at %d,%d (0x%08x/%d)", + plane->base.id, plane->name, + state->crtc_w, + state->crtc_h, + state->crtc_x, + state->crtc_y, + bo->paddr + fb->offsets[0], + fb->pitches[0]); + ret = rpi_firmware_property(vc4->firmware, RPI_FIRMWARE_SET_CURSOR_STATE, &packet_state, @@ -200,6 +224,8 @@ static void vc4_cursor_plane_atomic_disable(struct drm_plane *plane, u32 packet_state[] = { false, 0, 0, 0 }; int ret; + DRM_DEBUG_ATOMIC("[PLANE:%d:%s] disabling cursor", plane->base.id, plane->name); + ret = rpi_firmware_property(vc4->firmware, RPI_FIRMWARE_SET_CURSOR_STATE, &packet_state, -- 2.39.2