[linux-dvb] saa7146 changes required for 2.6.11-bk1
Klaus Schmidinger
Klaus.Schmidinger at cadsoft.de
Sun Mar 6 10:48:57 CET 2005
C.Y.M wrote:
> I noticed the kernel developers made some new changes to i2c which
> affects saa7146 (and some other drivers) in 2.6.11-bk1. Included is a
> patch for current dvb-kernel if you want to build the latest 2.6 kernel
> snapshot.
>
> Best Regards,
Whoever checks this in to CVS should please make sure the latest
CVS version of dvb-kernel still compiles with kernel 2.6.8 (which ist
the version used in current Linux distributions such as SUSE 9.2).
I'd hate to be forced to install a special kernel version in case
I switch to dvb-kernel.
Klaus
> ------------------------------------------------------------------------
>
> --- dvb-kernel/linux/include/media/saa7146.h.orig 2005-03-05 13:40:47.000000000 -0800
> +++ dvb-kernel/linux/include/media/saa7146.h 2005-03-05 13:41:31.000000000 -0800
> @@ -169,7 +169,7 @@
>
> /* from saa7146_i2c.c */
> int saa7146_i2c_adapter_prepare(struct saa7146_dev *dev, struct i2c_adapter *i2c_adapter, u32 bitrate);
> -int saa7146_i2c_transfer(struct saa7146_dev *saa, const struct i2c_msg msgs[], int num, int retries);
> +int saa7146_i2c_transfer(struct saa7146_dev *saa, const struct i2c_msg *msgs, int num, int retries);
>
> /* from saa7146_core.c */
> extern struct list_head saa7146_devices;
> --- dvb-kernel/linux/drivers/media/common/saa7146_video.c.orig 2005-03-05 13:36:37.000000000 -0800
> +++ dvb-kernel/linux/drivers/media/common/saa7146_video.c 2005-03-05 13:38:45.000000000 -0800
> @@ -889,7 +889,7 @@
>
> strcpy(cap->driver, "saa7146 v4l2");
> strlcpy(cap->card, dev->ext->name, sizeof(cap->card));
> - sprintf(cap->bus_info,"PCI:%s",dev->pci->slot_name);
> + sprintf(cap->bus_info,"PCI:%s", pci_name(dev->pci));
> cap->version = SAA7146_VERSION_CODE;
> cap->capabilities =
> V4L2_CAP_VIDEO_CAPTURE |
> --- dvb-kernel/linux/drivers/media/common/saa7146_i2c.c.orig 2005-03-02 21:15:05.000000000 -0800
> +++ dvb-kernel/linux/drivers/media/common/saa7146_i2c.c 2005-03-05 13:43:00.000000000 -0800
> @@ -25,7 +25,7 @@
> sent through the saa7146. have a look at the specifications p. 122 ff
> to understand this. it returns the number of u32s to send, or -1
> in case of an error. */
> -static int saa7146_i2c_msg_prepare(const struct i2c_msg m[], int num, u32 *op)
> +static int saa7146_i2c_msg_prepare(const struct i2c_msg *m, int num, u32 *op)
> {
> int h1, h2;
> int i, j, addr;
> @@ -89,7 +89,7 @@
> which bytes were read through the adapter and write them back to the corresponding
> i2c-message. but instead, we simply write back all bytes.
> fixme: this could be improved. */
> -static int saa7146_i2c_msg_cleanup(const struct i2c_msg m[], int num, u32 *op)
> +static int saa7146_i2c_msg_cleanup(const struct i2c_msg *m, int num, u32 *op)
> {
> int i, j;
> int op_count = 0;
> @@ -272,7 +272,7 @@
> return 0;
> }
>
> -int saa7146_i2c_transfer(struct saa7146_dev *dev, const struct i2c_msg msgs[], int num, int retries)
> +int saa7146_i2c_transfer(struct saa7146_dev *dev, const struct i2c_msg *msgs, int num, int retries)
> {
> int i = 0, count = 0;
> u32* buffer = dev->d_i2c.cpu_addr;
> @@ -372,7 +372,7 @@
> }
>
> /* utility functions */
> -static int saa7146_i2c_xfer(struct i2c_adapter* adapter, struct i2c_msg msg[], int num)
> +static int saa7146_i2c_xfer(struct i2c_adapter* adapter, struct i2c_msg *msg, int num)
> {
> struct saa7146_dev* dev = i2c_get_adapdata(adapter);
>
>
>
> ------------------------------------------------------------------------
>
> --- dvb-kernel/linux/drivers/media/dvb/b2c2/skystar2.c.orig 2005-02-11 17:57:54.000000000 -0800
> +++ dvb-kernel/linux/drivers/media/dvb/b2c2/skystar2.c 2005-03-05 16:09:02.000000000 -0800
> @@ -298,7 +298,7 @@
> return buf - start;
> }
>
> -static int master_xfer(struct i2c_adapter* adapter, struct i2c_msg msgs[], int num)
> +static int master_xfer(struct i2c_adapter* adapter, struct i2c_msg *msgs, int num)
> {
> struct adapter *tmp = i2c_get_adapdata(adapter);
> int i, ret = 0;
> --- dvb-kernel/linux/drivers/media/dvb/dibusb/dvb-dibusb-fe-i2c.c.orig 2005-03-05 14:00:35.000000000 -0800
> +++ dvb-kernel/linux/drivers/media/dvb/dibusb/dvb-dibusb-fe-i2c.c 2005-03-05 16:09:02.000000000 -0800
> @@ -38,7 +38,7 @@
> /*
> * I2C master xfer function
> */
> -static int dibusb_i2c_xfer(struct i2c_adapter *adap,struct i2c_msg msg[],int num)
> +static int dibusb_i2c_xfer(struct i2c_adapter *adap,struct i2c_msg *msg,int num)
> {
> struct usb_dibusb *dib = i2c_get_adapdata(adap);
> int i;
> --- dvb-kernel/linux/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c.orig 2005-02-19 01:16:49.000000000 -0800
> +++ dvb-kernel/linux/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c 2005-03-05 16:09:02.000000000 -0800
> @@ -239,7 +239,7 @@
> return rcv_len;
> }
>
> -static int master_xfer(struct i2c_adapter* adapter, struct i2c_msg msg[], int num)
> +static int master_xfer(struct i2c_adapter* adapter, struct i2c_msg *msg, int num)
> {
> struct ttusb *ttusb = i2c_get_adapdata(adapter);
> int i = 0;
More information about the linux-dvb
mailing list