• Pieter \"PoroCYon\" Sluys's avatar
    vfb: fix video mode and line_length being set when loaded · 7b9faf5d
    Pieter \"PoroCYon\" Sluys authored
    Currently, when loading the vfb module, the newly created fbdev
    has a line_length of 0, and its video mode would be PSEUDOCOLOR
    regardless of color depth. (The former could be worked around by
    calling the FBIOPUT_VSCREENINFO ioctl with having the FBACTIVIATE_FORCE
    flag set.) This patch automatically sets the line_length correctly,
    and the video mode is derived from the bit depth now as well.
    
    Thanks to Geert Uytterhoeven for confirming the bug and helping me with
    the patch.
    
    Output of `fbset -i' before the patch:
    mode "1366x768-60"
        # D: 72.432 MHz, H: 47.403 kHz, V: 60.004 Hz
        geometry 1366 768 1366 768 32
        timings 13806 120 10 14 3 32 5
        rgba 8/0,8/8,8/16,8/24
    endmode
    
    Frame buffer device information:
        Name        : Virtual FB
        Address     : 0xffffaa1405d85000
        Size        : 4196352
        Type        : PACKED PIXELS
        Visual      : PSEUDOCOLOR
        XPanStep    : 1
        YPanStep    : 1
        YWrapStep   : 1
        LineLength  : 0                    <-- note this
        Accelerator : No
    
    After:
    mode "1366x768-60"
        # D: 72.432 MHz, H: 47.403 kHz, V: 60.004 Hz
        geometry 1366 768 1366 768 32
        timings 13806 120 10 14 3 32 5
        rgba 8/0,8/8,8/16,8/24
    endmode
    
    Frame buffer device information:
        Name        : Virtual FB
        Address     : 0xffffaa1405d85000
        Size        : 4196352
        Type        : PACKED PIXELS
        Visual      : TRUECOLOR
        XPanStep    : 1
        YPanStep    : 1
        YWrapStep   : 1
        LineLength  : 5464
        Accelerator : No
    Signed-off-by: default avatar"Pieter \"PoroCYon\" Sluys" <pcy@national.shitposting.agency>
    Reviewed-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
    [b.zolnierkie: minor fixups]
    Signed-off-by: default avatarBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
    7b9faf5d
vfb.c 13.1 KB