[lkml]   [2004]   [Oct]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectGeneric VESA framebuffer driver and Video card BOOT?
    Hello All,

    I am writing this email to guage the interest in having code contributed
    to the main stream Linux kernel that would support the user of a generic,
    full featured VESA framebuffer driver that works on any CPU architecture
    along with a generic Video card BOOT or POST mechanism.

    We have been working on a project under contract to ATI that involves
    porting a version of our SNAPBoot BIOS emulator solution to the PowerPC
    Linux kernel. The SNAPBoot code supports initialising a graphics card
    using an x86 BIOS image on any platform (currently tesed on x86, x86-64
    and PowerPC). Initially SNAPBoot was developed to work across multiple
    operating systems and CPU architectures from user space, but the desire
    to use it to initialise the graphics card on embedded PowerPC kernels
    prompted us to port a version of it for use within the Linux kernel. The
    version we have ported for use in the kernel can be used to initialise
    the graphics card for use with any accelerated framebuffer console
    driver, such as the radeonfb driver which we are currently using it with.

    Note that the SNAPBoot code uses the x86emu BIOS emulator project as the
    core CPU emulation technology, and project we have been actively involved
    with for many years since the licensing on the project was changed to
    MIT/BSD style licensing and incorporated into the XFree86 project. We
    have built code on top of x86emu to provide generic support for
    initialising graphics cards on multiple platforms as well as supporting
    initialisation of modern NonVGA graphics cards (like the ATI Radeon
    family) without needing access to real VGA resources such as VGA I/O
    ports and physical memory at 0xA0000-0xBFFFF.

    More importantly we have used SNAPBoot to port our generic VESA SNAP
    display driver to work on multiple operating systems and platforms,
    including both x86-64 and PowerPC platforms. Using this driver you can
    use any graphics card in the machine and it will support all the features
    provided by the graphics cards VESA BIOS, including support for refresh
    rate control on cards that support VBE 3.0 services. We have been
    actively testing both the SNAPBoot capability and the BIOS emulator on
    many platforms and graphics cards, and the latest version work flawlessly
    on just about every graphics card we have tested.

    What this means is that it should be possible to build a new version of
    the VESA framebuffer console driver for the Linux kernel that will have
    these important features:

    1. Be able to switch display modes on the fly, supporting all modes
    enumerated by the Video BIOS.

    2. Be able to support refresh rate control on graphics cards that support
    the VBE 3.0 services.

    3. Be able to support 8-bit and 32-bit display modes on any graphics card
    on big endian machines (16-bit is not possible unless software rendering
    code is written to enable endian swapping in software, which may be

    So what we would like to find out is how much interest there might be in
    both an updated VESA framebuffer console driver as well as the code for
    the Video card BOOT process being contributed to the maintstream kernel.
    If there is interest, we would start out by first contributing the core
    emulator and Video BOOT code, and then work on building a better VESA
    framebuffer console driver.

    So what do you guys think?


    Kendall Bennett
    Chief Executive Officer
    SciTech Software, Inc.
    Phone: (530) 894 8400

    ~ SciTech SNAP - The future of device driver technology! ~

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 14:07    [W:0.025 / U:11.536 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site