Howdy! Are there any general recomendations for maintaining 2 V4L devices (USB camera and BT878 card) for use? Camera and TV use will be sporadic, but I would hope to have either ready to go at a moments notice. Things get confused when you load out of order it seems. Am rather fuzzy on the interaction between Kmod, modules.conf, modules.dep and launch scripts. Might need to establish one device as /dev/video1 and other as /dev/video2. ( Hmmm, fstab now has its LABELS, maybe we could use a similar construct for multimedia devices?) What I have is a BT878, TDA7432, TDA9850, TEA6420 (STB-2), as well as a Philips (read: Binary only) module. STB Card (GW OEM) has i2c, sound, tvmixer, TDA7432 and all that. USB Philips Cam needs a videodev assignment, and usbaudio. What I usually do: 1) Get kernel source that Agrees with Philips Cam Module availability. 2) compile with BTTV as module, V4L as module, es1371 sound as module, ------- reboot to new kernel ----- 3) D/L latest Bttv source, Xawtv source. Compile both. 4) Make ; make install on the bttv (clobbers the stale bttv.o) 5) Compile and install Xawtv. 6) put binary SMP modules from Nemosoft in /lib/modules/2.4.2/ker/driv/misc depmod -a ; modprobe difficult ones Hack and tweak script below till it works, kinda.... Am I approaching this correctly? The v4l devices get mixed up when I load stuff out of order... Fixmod script that mutates with each Bttv, Kernel release: ---------------------------------------------------------- #! /bin/sh # Script: fixmod # JDW - 12-12-00- Hacked from Update script in bttv suite # if test "$UID" = "0"; then # running as root anyway, don't need sudo INSMOD="/sbin/insmod" RMMOD="/sbin/rmmod" else INSMOD="sudo /sbin/insmod" RMMOD="sudo /sbin/rmmod" fi # handy functions for rmmod/insmod function xrmmod () { grep -qe "^$1" /proc/modules || return echo rmmod $1 $RMMOD $1 || exit 1 } function xinsmod () { echo insmod $* $INSMOD -f $* || exit 1 } # prepare for crashing the box -- flush dirty buffers sync; sleep 1; sync case "$1" in start) echo -n "Starting BT878 services: " RETVAL=$? # xinsmod i2c-core # xinsmod i2c-core # xinsmod i2c-algo-bit xinsmod videodev xinsmod bttv card=40 pll=1 autoload=0 bttv_verbose=2 xinsmod tuner type=2 debug=1 xinsmod tda7432 xinsmod tvaudio tda9850=1 tea6420=1 xinsmod tvmixer debug=1 echo ;; stop) echo -n "Stopping BT878 services: " xrmmod tvmixer xrmmod bttv xrmmod tuner xrmmod videodev # xrmmod i2c-algo-bit xrmmod tvaudio xrmmod tda7432 # xrmmod usbcore # xrmmod i2c-dev # xrmmod i2c-core RETVAL=$? echo ;; status) lsmod RETVAL=$? ;; restart) $0 stop $0 start RETVAL=$? ;; *) echo "Usage: $0 {start|stop|status|restart}" exit 1 ;; esac exit $RETVAL ------------------------------------------------------------------ TIA - John Westerdale "Computers are incredibly fast, accurate, and stupid. People are incredibly slow, inaccurate, and brilliant. Together, they are just incredible." -Albert Einstein