2005-04-16 15:20:36 -07:00
|
|
|
W9966 Camera driver, written by Jakob Kemi (jakob.kemi@telia.com)
|
|
|
|
|
|
|
|
After a lot of work in softice & wdasm, reading .pdf-files and tiresome
|
|
|
|
trial-and-error work I've finally got everything to work. I needed vision for a
|
|
|
|
robotics project so I borrowed this camera from a friend and started hacking.
|
|
|
|
Anyway I've converted my original code from the AVR 8bit RISC C/ASM code into
|
|
|
|
a working Linux driver.
|
|
|
|
|
|
|
|
To get it working simply configure your kernel to support
|
|
|
|
parport, ieee1284, video4linux and w9966
|
|
|
|
|
|
|
|
If w9966 is statically linked it will always perform aggressive probing for
|
|
|
|
the camera. If built as a module you'll have more configuration options.
|
|
|
|
|
|
|
|
Options:
|
|
|
|
modprobe w9966.o pardev=parport0(or whatever) parmode=0 (0=auto, 1=ecp, 2=epp)
|
|
|
|
voila!
|
|
|
|
|
|
|
|
you can also type 'modinfo -p w9966.o' for option usage
|
|
|
|
(or checkout w9966.c)
|
|
|
|
|
|
|
|
The only thing to keep in mind is that the image format is in Y-U-Y-V format
|
|
|
|
where every two pixels take 4 bytes. In SDL (www.libsdl.org) this format
|
|
|
|
is called VIDEO_PALETTE_YUV422 (16 bpp).
|
|
|
|
|
|
|
|
A minimal test application (with source) is available from:
|
|
|
|
http://hem.fyristorg.com/mogul/w9966.html
|
|
|
|
|
2006-03-25 05:21:43 -07:00
|
|
|
The slow framerate is due to missing DMA ECP read support in the
|
2005-04-16 15:20:36 -07:00
|
|
|
parport drivers. I might add working EPP support later.
|
|
|
|
|
|
|
|
Good luck!
|
|
|
|
/Jakob Kemi
|