diff -uNrwB -x '*.o' --new-file linux-2.5.69/drivers/media/common/saa7146_core.c linux-2.5.69.patch/drivers/media/common/saa7146_core.c --- linux-2.5.69/drivers/media/common/saa7146_core.c 2003-05-06 13:16:20.000000000 +0200 +++ linux-2.5.69.patch/drivers/media/common/saa7146_core.c 2003-05-06 12:20:34.000000000 +0200 @@ -20,10 +20,6 @@ #include -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,51) - #define KBUILD_MODNAME saa7146 -#endif - /* global variables */ struct list_head saa7146_devices; struct semaphore saa7146_devices_lock; @@ -191,8 +187,11 @@ /********************************************************************************/ /* interrupt handler */ - +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) +static void interrupt_hw(int irq, void *dev_id, struct pt_regs *regs) +#else static irqreturn_t interrupt_hw(int irq, void *dev_id, struct pt_regs *regs) +#endif { struct saa7146_dev *dev = (struct saa7146_dev*)dev_id; u32 isr = 0; @@ -203,11 +202,14 @@ /* is this our interrupt? */ if ( 0 == isr ) { /* nope, some other device */ - return IRQ_NONE; +#if LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0) + return IRQ_RETVAL(0); +#else + return; +#endif } saa7146_write(dev, ISR, isr); -// DEB_INT(("0x%08x\n",isr)); if( 0 != (dev->ext)) { if( 0 != (dev->ext->irq_mask & isr )) { @@ -254,7 +256,9 @@ ERR(("disabling interrupt source(s)!\n")); IER_DISABLE(dev,isr); } - return IRQ_HANDLED; +#if LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0) + return IRQ_RETVAL(1); +#endif } /*********************************************************************************/ diff -uNrwB -x '*.o' --new-file linux-2.5.69/drivers/media/common/saa7146_fops.c linux-2.5.69.patch/drivers/media/common/saa7146_fops.c --- linux-2.5.69/drivers/media/common/saa7146_fops.c 2003-05-06 13:15:30.000000000 +0200 +++ linux-2.5.69.patch/drivers/media/common/saa7146_fops.c 2003-05-05 13:20:54.000000000 +0200 @@ -1,9 +1,5 @@ #include -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,51) - #define KBUILD_MODNAME saa7146 -#endif - #define BOARD_CAN_DO_VBI(dev) (dev->revision != 0 && dev->vv_data->vbi_minor != -1) /********************************************************************************/ @@ -416,6 +412,7 @@ DEB_EE(("dev:%p\n",dev)); + kfree(vv->clipping); kfree(vv); dev->vv_data = NULL; dev->vv_callback = NULL; diff -uNrwB -x '*.o' --new-file linux-2.5.69/drivers/media/common/saa7146_hlp.c linux-2.5.69.patch/drivers/media/common/saa7146_hlp.c --- linux-2.5.69/drivers/media/common/saa7146_hlp.c 2003-05-06 13:15:30.000000000 +0200 +++ linux-2.5.69.patch/drivers/media/common/saa7146_hlp.c 2003-04-22 18:30:31.000000000 +0200 @@ -1,9 +1,5 @@ #include -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,51) - #define KBUILD_MODNAME saa7146 -#endif - #define my_min(type,x,y) \ ({ type __x = (x), __y = (y); __x < __y ? __x: __y; }) #define my_max(type,x,y) \ @@ -962,6 +958,12 @@ unsigned long e_wait = vv->current_hps_sync == SAA7146_HPS_SYNC_PORT_A ? CMD_E_FID_A : CMD_E_FID_B; unsigned long o_wait = vv->current_hps_sync == SAA7146_HPS_SYNC_PORT_A ? CMD_O_FID_A : CMD_O_FID_B; + if( 0 != (dev->ext->ext_vv_data->flags & SAA7146_EXT_SWAP_ODD_EVEN)) { + unsigned long tmp = e_wait; + e_wait = o_wait; + o_wait = tmp; + } + /* write beginning of rps-program */ count = 0; diff -uNrwB -x '*.o' --new-file linux-2.5.69/drivers/media/common/saa7146_i2c.c linux-2.5.69.patch/drivers/media/common/saa7146_i2c.c --- linux-2.5.69/drivers/media/common/saa7146_i2c.c 2003-05-06 13:15:30.000000000 +0200 +++ linux-2.5.69.patch/drivers/media/common/saa7146_i2c.c 2003-04-25 11:17:47.000000000 +0200 @@ -1,9 +1,5 @@ #include -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,51) - #define KBUILD_MODNAME saa7146 -#endif - /* helper function */ static void my_wait(struct saa7146_dev *dev, long ms) @@ -382,7 +378,9 @@ { struct saa7146_dev* dev = i2c_get_adapdata(adapter); - DEB_I2C(("adapter: '%s'.\n", adapter->dev.name)); +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)) + DEB_I2C(("adapter: '%s'.\n", adapter->name)); +#endif /* use helper function to transfer data */ return saa7146_i2c_transfer(dev, msg, num, adapter->retries); @@ -411,8 +409,13 @@ if( NULL != i2c_adapter ) { memset(i2c_adapter,0,sizeof(struct i2c_adapter)); +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)) + strcpy(i2c_adapter->name, dev->name); + i2c_adapter->data = dev; +#else strcpy(i2c_adapter->dev.name, dev->name); i2c_set_adapdata(i2c_adapter,dev); +#endif i2c_adapter->algo = &saa7146_algo; i2c_adapter->algo_data = NULL; i2c_adapter->id = I2C_ALGO_SAA7146; diff -uNrwB -x '*.o' --new-file linux-2.5.69/drivers/media/common/saa7146_vbi.c linux-2.5.69.patch/drivers/media/common/saa7146_vbi.c --- linux-2.5.69/drivers/media/common/saa7146_vbi.c 2003-05-06 13:15:30.000000000 +0200 +++ linux-2.5.69.patch/drivers/media/common/saa7146_vbi.c 2003-04-22 18:30:31.000000000 +0200 @@ -1,9 +1,5 @@ #include -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,51) - #define KBUILD_MODNAME saa7146 -#endif - static int vbi_pixel_to_capture = 720 * 2; static diff -uNrwB -x '*.o' --new-file linux-2.5.69/drivers/media/common/saa7146_video.c linux-2.5.69.patch/drivers/media/common/saa7146_video.c --- linux-2.5.69/drivers/media/common/saa7146_video.c 2003-05-06 13:15:30.000000000 +0200 +++ linux-2.5.69.patch/drivers/media/common/saa7146_video.c 2003-04-22 18:30:31.000000000 +0200 @@ -1,9 +1,5 @@ #include -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,51) - #define KBUILD_MODNAME saa7146 -#endif - static int memory = 32; @@ -434,20 +430,25 @@ case V4L2_CID_BRIGHTNESS: value = saa7146_read(dev, BCS_CTRL); c->value = 0xff & (value >> 24); + DEB_D(("V4L2_CID_BRIGHTNESS: %d\n",c->value)); break; case V4L2_CID_CONTRAST: value = saa7146_read(dev, BCS_CTRL); c->value = 0x7f & (value >> 16); + DEB_D(("V4L2_CID_CONTRAST: %d\n",c->value)); break; case V4L2_CID_SATURATION: value = saa7146_read(dev, BCS_CTRL); c->value = 0x7f & (value >> 0); + DEB_D(("V4L2_CID_SATURATION: %d\n",c->value)); break; case V4L2_CID_VFLIP: c->value = vv->vflip; + DEB_D(("V4L2_CID_VFLIP: %d\n",c->value)); break; case V4L2_CID_HFLIP: c->value = vv->hflip; + DEB_D(("V4L2_CID_HFLIP: %d\n",c->value)); break; default: return -EINVAL; @@ -876,7 +877,7 @@ return -EINVAL; } - DEB_EE(("VIDIOC_ENUMSTD: type:%d, index:%d\n",f->type,f->index)); + DEB_EE(("VIDIOC_ENUM_FMT: type:%d, index:%d\n",f->type,f->index)); return 0; } case VIDIOC_QUERYCTRL: @@ -974,6 +975,8 @@ struct saa7146_fh *ov_fh = NULL; + DEB_EE(("VIDIOC_S_STD\n")); + if( 0 != vv->streaming ) { return -EBUSY; }