• Antonino A. Daplas's avatar
    [PATCH] fbdev: Add VESA Coordinated Video Timings (CVT) support · 96fe6a21
    Antonino A. Daplas authored
    
    
    The Coordinated Video Timings (CVT) is the latest standard approved by VESA
    concerning video timings generation.  It addresses the limitation of GTF which
    is designed mainly for CRT displays.  CRT's have a high blanking requirement
    (as much as 25% of the horizontal frame length) which artificially increases
    the pixelclock.  Digital displays, on the other hand, needs to conserve the
    pixelclock as much as possible.  The GTF also does not take into account the
    different aspect ratios in its calculation.
    
    The new function added is fb_find_mode_cvt().  It is called by fb_find_mode()
    if it recognizes a mode option string formatted for CVT.  The format is:
    
    <xres>x<yres>[M][R][-<bpp>][<at-sign><refresh>][i][m]
    
    The 'M' tells the function to calculate using CVT.  On it's own, it will
    compute a timing for CRT displays at 60Hz.  If the 'R' is specified, 'reduced
    blanking' computation will be used, best for flatpanels.  The 'i' and the 'm'
    is for 'interlaced mode' and 'with margins' respectively.
    
    To determine if CVT was used, check for dmesg for something like this:
    
    CVT Mode - <pix>M<n>[-R], ie: .480M3-R  (800x600 reduced blanking)
    
    where: pix - product of xres and yres, in MB
        M   - is a CVT mode
        n   - the aspect ratio (3 - 4:3; 4 - 5:4; 9 - 16:9, 15:9; A - 16:10)
        -R   - reduced blanking
    
    Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    96fe6a21