On zo, 2007-05-06 at 19:41 +0000, [EMAIL PROTECTED] wrote:
> Hi Everybody,
Hi, hi, hi and hi (your message got posted to the list only 4 times).
> I'm writting because I do not manage to build ivtv for kernel 2.6.21.
> After launching make command, I got this :
> make -C driver all
> make[1]: Entering directory `/home/hopper/Ivtv/ivtv-0.10.1/driver'
> make -C /lib/modules/2.6.21-gentoo/build
> M=/home/hopper/Ivtv/ivtv-0.10.1/driver modules
> make[2]: Entering directory `/usr/src/linux-2.6.21-gentoo'
> CC [M] /home/hopper/Ivtv/ivtv-0.10.1/driver/ivtv-ioctl.o
> /home/hopper/Ivtv/ivtv-0.10.1/driver/ivtv-ioctl.c: In function
> 'ivtv_internal_ioctls':
> /home/hopper/Ivtv/ivtv-0.10.1/driver/ivtv-ioctl.c:559: error: 'struct
> v4l2_register' has no member named 'i2c_id'
> /home/hopper/Ivtv/ivtv-0.10.1/driver/ivtv-ioctl.c:560: error: 'struct
> v4l2_register' has no member named 'i2c_id'
> /home/hopper/Ivtv/ivtv-0.10.1/driver/ivtv-ioctl.c:569: error: 'struct
> v4l2_register' has no member named 'i2c_id'
> /home/hopper/Ivtv/ivtv-0.10.1/driver/ivtv-ioctl.c:570: error: 'struct
> v4l2_register' has no member named 'i2c_id'
> make[3]: *** [/home/hopper/Ivtv/ivtv-0.10.1/driver/ivtv-ioctl.o] Error
> 1
> make[2]: *** [_module_/home/hopper/Ivtv/ivtv-0.10.1/driver] Error 2
> make[2]: Leaving directory `/usr/src/linux-2.6.21-gentoo'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/home/hopper/Ivtv/ivtv-0.10.1/driver'
> make: *** [all] Error 2
Apply attached patch from [EMAIL PROTECTED]
Greets
Sander
diff -u -r 0.10.1/driver/ivtv-ioctl.c 0.10.1p/driver/ivtv-ioctl.c
--- 0.10.1/driver/ivtv-ioctl.c 2007-02-18 04:34:16.000000000 -0500
+++ 0.10.1p/driver/ivtv-ioctl.c 2007-04-27 13:37:55.000000000 -0400
@@ -556,8 +556,8 @@
/* ioctls to allow direct access to the encoder registers for testing */
case VIDIOC_INT_G_REGISTER:
IVTV_DEBUG_IOCTL("VIDIOC_INT_G_REGISTER\n");
- if (reg->i2c_id)
- return ivtv_i2c_id(itv, reg->i2c_id, cmd, reg);
+ if (reg->match_type == V4L2_CHIP_MATCH_I2C_DRIVER)
+ return ivtv_i2c_id(itv, reg->match_chip, cmd, reg);
return ivtv_itvc(itv, cmd, arg);
case VIDIOC_INT_S_REGISTER:
@@ -566,8 +566,8 @@
cmd = VIDIOC_INT_S_REGISTER;
#endif
IVTV_DEBUG_IOCTL("VIDIOC_INT_S_REGISTER\n");
- if (reg->i2c_id)
- return ivtv_i2c_id(itv, reg->i2c_id, cmd, reg);
+ if (reg->match_type == V4L2_CHIP_MATCH_I2C_DRIVER)
+ return ivtv_i2c_id(itv, reg->match_chip, cmd, reg);
return ivtv_itvc(itv, cmd, arg);
case VIDIOC_INT_S_AUDIO_ROUTING: {
diff -u -r 0.10.1/i2c-drivers/saa717x.c 0.10.1p/i2c-drivers/saa717x.c
--- 0.10.1/i2c-drivers/saa717x.c 2006-11-24 08:48:32.000000000 -0500
+++ 0.10.1p/i2c-drivers/saa717x.c 2007-04-27 14:02:55.000000000 -0400
@@ -62,6 +62,11 @@
#include <linux/i2c.h>
#include <media/v4l2-common.h>
+#ifdef VIDIOC_DBG_S_REGISTER
+#define VIDIOC_INT_S_REGISTER VIDIOC_DBG_S_REGISTER
+#define VIDIOC_INT_G_REGISTER VIDIOC_DBG_G_REGISTER
+#endif
+
MODULE_DESCRIPTION("Philips SAA717x video decoder driver");
MODULE_AUTHOR("Kevin Thayer, K. Ohta");
MODULE_LICENSE("GPL");
@@ -1257,7 +1262,7 @@
{
struct v4l2_register *reg = arg;
- if (reg->i2c_id != I2C_DRIVERID_SAA717X)
+ if (reg->match_type == V4L2_CHIP_MATCH_I2C_DRIVER && reg->match_chip != I2C_DRIVERID_SAA717X)
return -EINVAL;
reg->val = saa717x_read(client, reg->reg);
break;
@@ -1269,7 +1274,7 @@
u16 addr = reg->reg & 0xffff;
u8 val = reg->val & 0xff;
- if (reg->i2c_id != I2C_DRIVERID_SAA717X)
+ if (reg->match_type == V4L2_CHIP_MATCH_I2C_DRIVER && reg->match_chip != I2C_DRIVERID_SAA717X)
return -EINVAL;
if (!capable(CAP_SYS_ADMIN))
return -EPERM;
_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel