Comment 4 for bug 2044131

Revision history for this message
Dariusz Gadomski (dgadomski) wrote :

The commit in question (8f4b1068e7fc3df1a77ac8151767e56b208cc87f) introduces the following logic in intel_mode_valid function (drivers/gpu/drm/i915/display/intel_display.c):

+ if (DISPLAY_VER(dev_priv) >= 5) {
+ if (mode->hdisplay < 64 ||
+ mode->htotal - mode->hdisplay < 32)
+ return MODE_H_ILLEGAL;
+
+ if (mode->vtotal - mode->vdisplay < 5)
+ return MODE_V_ILLEGAL;
+ } else {
+ if (mode->htotal - mode->hdisplay < 32)
+ return MODE_H_ILLEGAL;
+
+ if (mode->vtotal - mode->vdisplay < 3)
+ return MODE_V_ILLEGAL;
+ }

In case of this particular hardware the following condition is met:
if (mode->htotal - mode->hdisplay < 32)
    return MODE_H_ILLEGAL;

with values: htotal==830 and hdisplay=800 resulting in returning MODE_H_ILLEGAL.

I am looking into where does the htotal value come from.