Hi, compiling of the current HG tree fails on linux 2.6.24. I think it is a bug in changeset 7157: --- a/v4l/compat.h Tue Feb 05 07:37:21 2008 +0000 +++ b/v4l/compat.h Tue Feb 05 11:21:32 2008 -0200 @@ -497,6 +497,10 @@ do { \ #ifndef BIT_MASK # define BIT_MASK(nr) (1UL << ((nr) % BITS_PER_LONG)) # define BIT_WORD(nr) ((nr) / BITS_PER_LONG) + +#define i2c_verify_client(dev) \ + ((dev->bus == &i2c_bus_type) ? to_i2c_client(dev) : NULL) + #endif The definition of i2c_verify_client() should not be inside #ifndef BIT_MASK / #endif. The variable i2c_bus_type is only public on 2.6.23.x (maybe also on earlier versions) but not on 2.6.24. The following patch does fix the problem on 2.6.24 for me: diff -r 012135d734a0 v4l/compat.h --- a/v4l/compat.h Tue Feb 05 11:21:32 2008 -0200 +++ b/v4l/compat.h Tue Feb 05 23:33:35 2008 +0100 @@ -497,12 +497,15 @@ do { \ #ifndef BIT_MASK # define BIT_MASK(nr) (1UL << ((nr) % BITS_PER_LONG)) # define BIT_WORD(nr) ((nr) / BITS_PER_LONG) - +#endif + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) #define i2c_verify_client(dev) \ ((dev->bus == &i2c_bus_type) ? to_i2c_client(dev) : NULL) - -#endif - +#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25) +#define i2c_verify_client(dev) \ + ((dev->bus && 0 == strcmp(dev->bus->name, "i2c")) ? to_i2c_client(dev) : NULL) +#endif #ifndef USB_DEVICE_AND_INTERFACE_INFO # define USB_DEVICE_AND_INTERFACE_INFO(vend,prod,cl,sc,pr) \ -Hartmut _______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb