drm/i915: Add breadcrumbs for why the backlight is being set
authorChris Wilson <chris@chris-wilson.co.uk>
Sun, 13 Oct 2013 11:56:31 +0000 (12:56 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 14 Oct 2013 08:02:36 +0000 (10:02 +0200)
At the moment we have 3 paths that lead to actually_set_backlight(),
from modesetting, ACPI/OpRegion requests and our very own
intel_backlight interface, and we have no way of distinguishing them in
the debug log. So add a debug breadcrumb to explain the source of the
backlight changes.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_opregion.c
drivers/gpu/drm/i915/intel_panel.c

index 904464023c8fd0b92a85e7c85aa560cdbdf5016f..b82050c96f3e76542cffa8ee0170dbcaadbbfc7b 100644 (file)
@@ -407,6 +407,7 @@ static u32 asle_set_backlight(struct drm_device *dev, u32 bclp)
        if (bclp > 255)
                return ASLC_BACKLIGHT_FAILED;
 
+       DRM_DEBUG_KMS("updating opregion backlight %d/255\n", bclp);
        intel_panel_set_backlight(dev, bclp, 255);
        iowrite32(DIV_ROUND_UP(bclp * 100, 255) | ASLE_CBLV_VALID, &asle->cblv);
 
index 54684168de1e66d24a03521a8695da58e3d4e2cc..1f2996031ad9755ef4c925061781b0d2215b30de 100644 (file)
@@ -574,6 +574,8 @@ void intel_panel_enable_backlight(struct drm_device *dev,
                intel_pipe_to_cpu_transcoder(dev_priv, pipe);
        unsigned long flags;
 
+       DRM_DEBUG_KMS("pipe=%d\n", pipe);
+
        spin_lock_irqsave(&dev_priv->backlight.lock, flags);
 
        if (dev_priv->backlight.level == 0) {
@@ -680,6 +682,8 @@ intel_panel_detect(struct drm_device *dev)
 static int intel_panel_update_status(struct backlight_device *bd)
 {
        struct drm_device *dev = bl_get_data(bd);
+       DRM_DEBUG_KMS("updating intel_backlight, brightness=%d/%d\n",
+                     bd->props.brightness, bd->props.max_brightness);
        intel_panel_set_backlight(dev, bd->props.brightness,
                                  bd->props.max_brightness);
        return 0;