Next Previous Contents

## 17. Setting up the X11 FBdev driver

If you are not using XFree86 3.3.3.1 or later, you are urged to upgrade to XFree86 3.3.3.1 - it includes a FBdev X driver for framebuffer devices. Otherwise, follow the steps below to either download or build your own FBdev driver for older XFree86 versions such as 3.3.2, 3.3.3 etc.

Go to

    http://www.xfree86.org

, and download the latest XServers source archive, unpack, and configure the drivers, following these steps:

- Edit xc/config/cf/xf86site.def, uncomment the #define for XF68FBDevServer
- Comment out all references to FB_VISUAL_STATIC_DIRECTCOLOR, as these are bogus and aren't used any more. If you are using XFree86 3.3.3.1, there is no need to do this step - as they have removed this.
- Edit xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_io.c, and change K_RAW to K_MEDIUMRAW.

and then build the driver. Don't worry about the m68k references, it supports Intel platforms. Then build the whole thing - it'll take a long time though as it's a large source tree.

Alternatively, if you don't have the time to spare, you can obtain the binaries from the sites below. Please note that these are 'unofficial' builds and you use them at your risk.

For libc5, use the one at:

    http://user.cs.tu-berlin.de/~kraxel/linux/XF68_FBDev.gz

For glibc2, download from these URLs.

    http://user.cs.tu-berlin.de/~kraxel/linux/XF68_FBDev.libc6.gz
    http://pobox.com/~brion/linux/fbxserver.html

There have been reports that X11 is non functional on certain graphic cards with this vesafb feature enabled, if this is happening, try the new XF86_FBdev driver for X11.

This driver, along with vesafb can also help run X11 in higher graphic resolutions with certain graphic chipsets which are not supported by any of the current X11 drivers. Examples are MGA G-200 et. al.

To configure the XF86_FBdev driver with your X11 system, you'll need to edit your XF86Config for the following:

    Section "Screen"
            Driver          "FBDev"
            Device          "Primary Card"
            Monitor         "Primary Monitor"
            SubSection      "Display"
                    Modes           "default"
            EndSubSection
    EndSection

You'll also need to set XkbDisable in the keyboard section as well, or invoke the XF86_FBDev server with the '-kb' option to set up your keyboard so it works properly. If you forget to set XkbDisable, you will have to put the following lines in your .Xmodmap to straighten out the keyboard mappings. Alternatively, you can edit your xkb to reflect the list below.

This is fixed in XFree86 3.3.3.1, and it is a good idea to upgrade to this version anyway because there are quite a few bug fixes, and also, it includes FBDev as one of the drvers, as I've mentioned previously.

    ! Keycode settings required
    keycode 104 = KP_Enter
    keycode 105 = Control_R
    keycode 106 = KP_Divide
    keycode 108 = Alt_R Meta_R
    keycode 110 = Home
    keycode 111 = Up
    keycode 112 = Prior
    keycode 113 = Left
    keycode 114 = Right
    keycode 115 = End
    keycode 116 = Down
    keycode 117 = Next
    keycode 118 = Insert
    keycode 119 = Delete

You may need to do some fiddling around with this (try copying the original definition from the original X11 driver that you were using and editing the name of the driver to FBDev), but basically this is what you need to do to use the vesafb X11 driver.

Hopefully the X11 problems with supported graphic cards will be fixed in future releases.

Next Previous Contents