Displaylink proof-of-concept demo

Previous thread: second race in hiddev by Oliver Neukum on Friday, January 9, 2009 - 3:21 am. (4 messages)

Next thread: usb alsa oops in 2.6.28 in snd_mixer_oss_notify_handler by Andi Kleen on Friday, January 9, 2009 - 11:26 am. (3 messages)
From: Florian Echtler
Date: Friday, January 9, 2009 - 11:06 am

--=-CdZuC9JmsTuPj8j5EHJz
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Hello everyone,

I'm happy to announce that Chris and I have made significant progress
over the holidays with respect to driving DisplayLink devices. For an
overview of the commands etc., see
http://floe.butterbrot.org/displaylink/

I'm attaching the source code for a short "demo" of the features which
are already working. These are basically

- initialization of standard video modes @ 60Hz (640x480, 800x600 .. )
- writing raw data to the framebuffer
- writing RLE-compressed data
- basic blitting
- vertical scrolling through a larger framebuffer

It would be very helpful if some adventurous people who have a
DL-120-based DisplayLink device could give it a try. I have no idea how
a DL-160-based device will react; but if you are _really_ adventurous,
go ahead :-) If you have a 640x960 pixel RGB raw image, you can pass it
as first parameter; otherwise, it will use a red gradient.

So far for things which work, here are the things which still don't (in
increasing order of importance):

- horizontal scrolling
- fine-tuning of video mode (pixel clock etc. - this is hidden somewhere
  in the first block of registers)
- compressed pixel data (I haven't been able to really figure out what
  kind of compression this is. I think it might be a Huffman code, but
  that's just a wild guess. However, I'm pretty sure that the bit order
  in the bytes of the compressed stream should be reversed to get the
  original bitstream. And the big binary block inside the demo program
  is perhaps the Huffman code table.)

So far from me, I'm very much hoping that some of you can give some
additional feedback.

Yours, Florian

--=-CdZuC9JmsTuPj8j5EHJz
Content-Disposition: attachment; filename=displaylink.c
Content-Transfer-Encoding: base64
Content-Type: text/x-csrc; name=displaylink.c; ...
Previous thread: second race in hiddev by Oliver Neukum on Friday, January 9, 2009 - 3:21 am. (4 messages)

Next thread: usb alsa oops in 2.6.28 in snd_mixer_oss_notify_handler by Andi Kleen on Friday, January 9, 2009 - 11:26 am. (3 messages)