[Intel-gfx] [PATCH 16/20] drm/i915: Ensure that while(INREG()) are bounded (v2)

Carlos R. Mafra crmafra2 at gmail.com
Tue Sep 21 16:22:00 CEST 2010


On Sat  7.Aug'10 at 11:01:35 +0100, Chris Wilson wrote:
>
> v2: Upgrade failure messages to DRM_ERROR on the suggestion of
> Eric Anholt. We do not expect to hit these conditions as they reflect
> programming errors, so if we do we want to be notified.

My dmesg from 2.6.36-rc5 is showing one of the messages introduced
in this patch. So I am notifying it :-)

> --- a/drivers/gpu/drm/i915/intel_lvds.c
> +++ b/drivers/gpu/drm/i915/intel_lvds.c
> @@ -96,7 +96,7 @@ static u32 intel_lvds_get_max_backlight(struct drm_device *dev)
>  static void intel_lvds_set_power(struct drm_device *dev, bool on)
>  {
>  	struct drm_i915_private *dev_priv = dev->dev_private;
> -	u32 pp_status, ctl_reg, status_reg, lvds_reg;
> +	u32 ctl_reg, status_reg, lvds_reg;
>  
>  	if (HAS_PCH_SPLIT(dev)) {
>  		ctl_reg = PCH_PP_CONTROL;
> @@ -114,9 +114,8 @@ static void intel_lvds_set_power(struct drm_device *dev, bool on)
>  
>  		I915_WRITE(ctl_reg, I915_READ(ctl_reg) |
>  			   POWER_TARGET_ON);
> -		do {
> -			pp_status = I915_READ(status_reg);
> -		} while ((pp_status & PP_ON) == 0);
> +		if (wait_for(I915_READ(status_reg) & PP_ON, 1000, 0))
> +			DRM_ERROR("timed out waiting to enable LVDS pipe");


[    0.954724] ACPI: Battery Slot [BAT0] (battery present)
[    2.266008] [drm:intel_lvds_set_power] *ERROR* timed out waiting to enable LVDS pipeConsole: switching to colour frame buffer device 160x50
[    2.274860] fb0: inteldrmfb frame buffer device

But I have this 1+ sec gap in there for as long as I remember.

Full dmesg is here:
http://www.aei.mpg.de/~crmafra/dmesg-2.6.36-rc5.txt

Is there anything else I can provide to help this?
I would love to get rid of the 1 sec delay there :-)



More information about the Intel-gfx mailing list