In my case resolution is 1680x1050 and this code in hw/xfree86/modes/xf86RandR12.c is executed:
/*
* Otherwise, just set the screen to 96dpi
*/ mmWidth = width * 25.4 / 96; mmHeight = height * 25.4 / 96;
width is 1680, height 1050 and that ends up as dimensions: 1680x1050 pixels (444x277 millimeters).
I assume that the standard code path that this driver shoud follow is:
if (crtc && crtc->mode.HDisplay && output->mm_width && output->mm_height)
Unfortunately the problem is that mm_width and mm_height are zero so that code path is never executed. Don't know yet where these come from - I assume radeon driver fills these. Digging.
I'm guessing that my problems are related to "(WW) RADEON(0): Unknown DDCType 6 found" like not found => no ddc query => panel dimensions unknown. Is my guessing correct?
In my case resolution is 1680x1050 and this code in hw/xfree86/ modes/xf86RandR 12.c is executed:
mmWidth = width * 25.4 / 96;
mmHeight = height * 25.4 / 96;
/*
* Otherwise, just set the screen to 96dpi
*/
width is 1680, height 1050 and that ends up as dimensions: 1680x1050 pixels (444x277 millimeters).
I assume that the standard code path that this driver shoud follow is:
if (crtc && crtc->mode.HDisplay && output->mm_width && output->mm_height)
Unfortunately the problem is that mm_width and mm_height are zero so that code path is never executed. Don't know yet where these come from - I assume radeon driver fills these. Digging.
I'm guessing that my problems are related to "(WW) RADEON(0): Unknown DDCType 6 found" like not found => no ddc query => panel dimensions unknown. Is my guessing correct?