diff --git a/drivers/gpu/drm/gma500/opregion.c b/drivers/gpu/drm/gma500/opregion.c index aa9e89f7e4c287c88a0f92c316e8323c3079703f..4f186eca3a3039dc804775a80e55f461c2ff7792 100644 --- a/drivers/gpu/drm/gma500/opregion.c +++ b/drivers/gpu/drm/gma500/opregion.c @@ -149,7 +149,6 @@ static u32 asle_set_backlight(struct drm_device *dev, u32 bclp) struct drm_psb_private *dev_priv = dev->dev_private; struct opregion_asle *asle = dev_priv->opregion.asle; struct backlight_device *bd = dev_priv->backlight_device; - u32 max; DRM_DEBUG_DRIVER("asle set backlight %x\n", bclp); @@ -163,11 +162,12 @@ static u32 asle_set_backlight(struct drm_device *dev, u32 bclp) if (bclp > 255) return ASLE_BACKLIGHT_FAILED; -#ifdef CONFIG_BACKLIGHT_CLASS_DEVICE - max = bd->props.max_brightness; - bd->props.brightness = bclp * max / 255; - backlight_update_status(bd); -#endif + if (config_enabled(CONFIG_BACKLIGHT_CLASS_DEVICE)) { + int max = bd->props.max_brightness; + bd->props.brightness = bclp * max / 255; + backlight_update_status(bd); + } + asle->cblv = (bclp * 0x64) / 0xff | ASLE_CBLV_VALID; return 0;