[linux-avc2210k] Getting started on openSuSE 10.1

  • From: Wolfgang Wershofen <wolfgang@xxxxxxxxxxxx>
  • To: linux-avc2210k@xxxxxxxxxxxxx
  • Date: Tue, 21 Nov 2006 15:13:08 +0100

Hi everybody,

I recently upgraded my SuSE-Box from 9.3 to 10.1. I successfully ran my 
Videoh-DVD device on the prior system using hotplug and now have it also up 
and running on udev in the new system.

I'd like to give you some hints on how to compile and install the 
avc2210k-driver on this system, in case, somebody likes to do the same. So 
here's a short HowTo about the steps, I took:

1. Download multiload and avc2210k from here:
ftp://81.86.3.90/multiload/multiload-1.0b03-280506.tgz
ftp://81.86.3.90/avc2210k/avc2210k-1.0a01-040306.tgz

2. Unpack the multiload archive into an approriate directory and cd into it 
the multiload*/src directory and load the file sysincs.h into your favourite 
editor

3. Add the following line somewhere among the other include statements:

#include <linux/compiler.h>

This is to be able to compile mutliload on kernel 2.6.16.21-0.25-default. For 
this kernel, the header-file /usr/include/linux/usbdevice_fs.h doesn't have 
the above include-statement itself (unlike prior kernels) and you get a bunch 
of error messages, if the compiler-include is missing. Don't know, if this is 
related to this kernel-version only, though...

4. Go back to the multiload root-directory and use "make" and "make install" 
(the latter as root) to compile and install the multiload binary to your 
system.

5. Edit the file /etc/udev/rules.d/70-multiload.rules and 
change /usr/sbin/multiload to /sbin/multiload. This is where "make install" 
places the binary.

6. Create a new file name 70-avc2210k.rules in /etc/udev/rules.d and put the 
following line into it:

KERNEL=="avc2x10k*", NAME="avcap%m", GROUP="video", MODE="0660"

7. Put the windows driver CD from your Videoh-DVD package into your CD-drive 
and copy the file avcuwfl.sys to /var/lib/firmware
NOTE: My package contained two CDs, one for WinXP and the second for older 
versions. Both contained the avcuwfl.sys file, but the one from the XP-CD 
didn't work for me.

8. Plug in your device and watch the messages in /var/log/messages. Should be 
similar to these:

Nov 21 14:40:33 athlon kernel: usb 1-2: new high speed USB device using 
ehci_hcd and address 5
Nov 21 14:40:33 athlon kernel: usb 1-2: new device found, idVendor=03f3, 
idProduct=0087
Nov 21 14:40:33 athlon kernel: usb 1-2: new device strings: Mfr=0, Product=0, 
SerialNumber=0
Nov 21 14:40:33 athlon kernel: usb 1-2: configuration #1 chosen from 1 choice
Nov 21 14:40:36 athlon kernel: usb 1-2: USB disconnect, address 5
Nov 21 14:40:37 athlon kernel: usb 1-2: new high speed USB device using 
ehci_hcd and address 6
Nov 21 14:40:38 athlon kernel: usb 1-2: new device found, idVendor=03f3, 
idProduct=0088
Nov 21 14:40:38 athlon kernel: usb 1-2: new device strings: Mfr=1, Product=3, 
SerialNumber=2
Nov 21 14:40:38 athlon kernel: usb 1-2: Product: Adaptec AVC-2210 USB
Nov 21 14:40:38 athlon kernel: usb 1-2: Manufacturer: Adaptec
Nov 21 14:40:38 athlon kernel: usb 1-2: SerialNumber: 005140000227
Nov 21 14:40:38 athlon kernel: usb 1-2: configuration #1 chosen from 1 choice

9. Unpack the avc2210k-archive into an approriate directory, cd into it the 
avc22*/src/avc2210k directory and load the file init.c into your favourite 
editor. Locate line 65 (.owner = THIS_MODULE) and comment it out

10. Edit the file strategy.c in the same directory, locate line 45 and comment 
it out as well (.mode = ...)

Steps 9 and 10 are neccessary to compile the driver. I found a hint on the 
internet, that ".mode" and ".owner" have been dropped in kernel 2.6.10 and 
later.

11. Compile the driver by cd'ing back into the avc2210k root-directory and 
issuing "make".

12. Check you /lib/modules/$(uname -r) directory, whether it contains a 
directory "extra". If not, create it. "make install" will put the kernel 
module into this directory and it was missing on my system. 

13. Install the driver by issuing "make install" in the avc2210k 
root-directory.

14. Plug-In your Videoh-device again and check the results 
in /var/log/messages. In addition to the multiload-messages, you should see 
something like this:

Nov 21 14:40:38 athlon kernel: avc2210k: module not supported by Novell, 
setting U taint flag.
Nov 21 14:40:38 athlon kernel: AVC2x10K : MPEG capture driver starting
Nov 21 14:40:38 athlon kernel: AVC2x10K : attached new device at index 0
Nov 21 14:40:38 athlon kernel: AVC2x10: found vidcap IC id SAA7115
Nov 21 14:40:38 athlon kernel: AVC2x10: awaiting firmware upload
Nov 21 14:40:38 athlon kernel: usbcore: registered new driver avc2x10k

15. Check, if you now have a device /dev/avcap0. If so, your installation was 
successful.

16. Load the following firmware files from your Windows driver cd 
into /var/lib/firmware:

avcuwm1p.ux
avcuwm2p.ux
avcuwram.ux

17. Init the Videoh-device with avcctrl. e.g. when using the composite input 
with PAL to create MPEG2 files with medium quality (should be sufficient for 
most analog home videos), use:

avcctrl -i -f PAL -t MPEG2 -q BETTER -s COMPOSITE -v 0

Try "avcctrl -h" to list other options.

18. Now you can grab your video directly to a file on your harddisk, using

cat /dev/avcap0 > grab_video.mpg

or preview, what's coming in with e.g. xine

xine /dev/avcap0


That's it. Hope someone will find this useful...

cu
Wolfgang


-- 
Geek by nature - Linux by choice

Other related posts:

  • » [linux-avc2210k] Getting started on openSuSE 10.1