a few months ago I wrote an X.org driver for the USBD480 which I want to introduce here.

You may ask, why a dedicated driver for X.org when there is the framebuffer kernel driver for the USBD480 on top of which an X server can be run using existing drivers?

Well, the answer is efficiency. The kernel based driver has to push out the whole frame buffer at fixed (short) intervals regardless whether or not the content has changed. This eats up quite some CPU cycles and more importantly USB bandwidth.

In contrast, my driver only sends more data to the display when something has changed on the screen. As a further optimisation (thanks to an extension Henri made to the USBD480 firmware), only those areas of the screen that have actually changed (as reported to the driver by the X server) get re-sent.

This makes the X server appear very snappy on the little display without pushing tons and tons of needless transfers down the USB pipe.

The RPM contains a template xorg.conf file (/etc/X11/xorg.conf.usbd480), which is completed by the included startup script (/usr/bin/Xusbd480) and then used to start the X server. It expects the kernel module for the USBD480 touch screen to be loaded, which is also provided as RPMs in the same repository. I can change that if there are people who want to use the display without a touch panel.