Hi Michele, I also had the same problem .... To fix it I changed videodev.h and videodevX.c. The lines containing: video_register_device(struct video_device *, int type); into: video_register_device(struct video_device *, int type, int nr); This is how video_register_device is declared in the kernel. And it seems to work. Regards, David P.S. I want to thank everybody working on and with open source software. In particular Justin for his work on the bttv2 driver .... -----Original Message----- From: video4linux-list-admin@xxxxxxxxxx [mailto:video4linux-list-admin@xxxxxxxxxx]On Behalf Of Michele Slocovich Sent: Wednesday, June 27, 2001 9:02 PM To: 'video4linux-list@xxxxxxxxxx' Subject: RE: v4l2 for 2.4.x kernels replaces videodev.h so that kernel no longer compiles kernel (2.4.5, patched for i2c 2.6.0) still won-t compile. videodevX still working fine together with bttv2 out onto xawtv. (tryed multiple times insmod rmmod switching back and forth between bttv and bttv2). [root@pippo root]#tar -xvBf videodevX-20010613.tar [root@pippo videodevX]# patch -p1 < v4l2_owner.patch (Stripping trailing CRs from patch.) patching file videodev.h (Stripping trailing CRs from patch.) patching file videodevX.c [root@pippo videodevX]# make make: /scripts/pathdown.sh: Command not found /usr/share/locale/en/LC_MESSAGES/make.moDIR=`pwd`; (cd /lib/modules/2.4.5/build; make SUBDIRS=$DIR modules) make[1]: Entering directory `/usr/src/linux-2.4.5' make -C /root/videodevX CFLAGS="-D__KERNEL__ -I/usr/src/linux-2.4.5/include -Wall -Wstrict-prototypes -O2 -foms make[2]: Entering directory `/root/videodevX' gcc -D__KERNEL__ -I/usr/src/linux-2.4.5/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-c videodevX.c: In function `videodev_proc_read': videodevX.c:1148: warning: `d' might be used uninitialized in this function videodevX.c: At top level: videodevX.c:1069: warning: `video_build_proc' defined but not used gcc -D__KERNEL__ -I/usr/src/linux-2.4.5/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-c make[2]: Leaving directory `/root/videodevX' make[1]: Leaving directory `/usr/src/linux-2.4.5' [root@pippo videodevX]# make install ...blah blah..... [root@pippo videodevX]# cd /usr/src/linux-2.4.5/ [root@pippo linux-2.4.5]# make modules ....blah blah..... make -C video modules make[3]: Entering directory `/usr/src/linux-2.4.5/drivers/media/video' gcc -D__KERNEL__ -I/usr/src/linux-2.4.5/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-c videodev.c:436: conflicting types for `video_register_device_Recfe1c4b' /usr/src/linux-2.4.5/include/linux/videodev.h:1327: previous declaration of `video_register_device_Recfe1c4b' videodev.c:564: warning: static declaration for `videodev_init' follows non-static make[3]: *** [videodev.o] Error 1 make[3]: Leaving directory `/usr/src/linux-2.4.5/drivers/media/video' make[2]: *** [_modsubdir_video] Error 2 make[2]: Leaving directory `/usr/src/linux-2.4.5/drivers/media' make[1]: *** [_modsubdir_media] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.5/drivers' make: *** [_mod_drivers] Error 2 [root@pippo linux-2.4.5]# Michele Slocovich > -----Original Message----- > From: Justin Schoeman [SMTP:justin@xxxxxxxxxxxxxxxxxxxx] > Sent: mercoledì 27 giugno 2001 10.59 > To: video4linux-list@xxxxxxxxxx; Bill Dirks > Subject: Re: v4l2 for 2.4.x kernels replaces videodev.h so that > kernelno long er compiles > > Erik Walthinsen wrote: > > > > On Tue, 26 Jun 2001, Michele Slocovich wrote: > > > > > v4l2 for 2.4.x kernels replaces videodev.h so that my kernel wont > compile > > > anymore (either patched with new 2.6.0 i2c or not) > > > sorry for my bloathed ignorance but may I ask whether this is by > design ? > > > and for my curiosity why so ? *maybe for v4l2 drivers to compile > against it > > > ?* > > > > I stated a long time ago that I believe that calling the v4l2 header > > videodev.h in direct conflict with v4l's videodev.h is a major flaw in > > v4l2. As the kernel progresses, it's getting harder and harder to > bodily > > yank all of v4l out so you can safely insert v4l2. Changing the header > > name to videodev2.h to match the 'version' of the API is natural, > simple, > > and correct, IMO. It's called 'versioning', and lack of it is the > > fundamental reason why Windoze sucks so much. Highly incompatible > headers > > by the same name is the absolute worst possible case. > > > > My $0.02, > > Omega > > videodevX is no longer v4l1 or v4l2, but both, containing all the > functionality of both. Unfortunately, this means that videodevX needs > to track changes made to the kernel v4l1 driver, and this got a bit out > of synch. The attached patch should fix this problem. Please test it > (insmod/rmmod drivers a couple of times, and see if you don't get any > errors), and let us know. > > Thanks, > > -justin << File: v4l2_owner.patch >> _______________________________________________ Video4linux-list mailing list Video4linux-list@xxxxxxxxxx https://listman.redhat.com/mailman/listinfo/video4linux-list