<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">From khali@linux-fr.org Mon Aug 15 10:58:21 2005
Date: Mon, 15 Aug 2005 19:57:04 +0200
From: Jean Delvare &lt;khali@linux-fr.org&gt;
To: &lt;video4linux-list@redhat.com&gt;
Cc: Greg KH &lt;greg@kroah.com&gt;
Subject: I2C: Drop I2C_DEVNAME and i2c_clientname
Message-Id: &lt;20050815195704.7b61206e.khali@linux-fr.org&gt;

I2C_DEVNAME and i2c_clientname were introduced in 2.5.68 [1] to help
media/video driver authors who wanted their code to be compatible with
both Linux 2.4 and 2.6. The cause of the incompatibility has gone since
[2], so I think we can get rid of them, as they tend to make the code
harder to read and longer to preprocess/compile for no more benefit.

I'd hope nobody seriously attempts to keep media/video driver compatible
across Linux trees anymore, BTW.

[1] http://marc.theaimsgroup.com/?l=linux-kernel&amp;m=104930186524598&amp;w=2
[2] http://www.linuxhq.com/kernel/v2.6/0-test3/include/linux/i2c.h

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


---
 drivers/media/video/bt832.c                    |    2 -
 drivers/media/video/bttv-i2c.c                 |    8 ++--
 drivers/media/video/cx88/cx88-i2c.c            |    8 ++--
 drivers/media/video/ir-kbd-i2c.c               |    2 -
 drivers/media/video/msp3400.c                  |    4 +-
 drivers/media/video/ovcamchip/ovcamchip_core.c |    6 +--
 drivers/media/video/saa7134/saa6752hs.c        |    2 -
 drivers/media/video/saa7134/saa7134-i2c.c      |    6 +--
 drivers/media/video/tda7432.c                  |    2 -
 drivers/media/video/tda9840.c                  |    2 -
 drivers/media/video/tda9875.c                  |    2 -
 drivers/media/video/tda9887.c                  |    2 -
 drivers/media/video/tea6415c.c                 |    2 -
 drivers/media/video/tea6420.c                  |    2 -
 drivers/media/video/tuner-core.c               |    2 -
 drivers/media/video/tvaudio.c                  |   41 +++++++++++--------------
 drivers/media/video/tvmixer.c                  |    8 ++--
 drivers/media/video/zoran_card.c               |    2 -
 drivers/usb/media/w9968cf.c                    |    8 +---
 include/linux/i2c.h                            |    7 ----
 20 files changed, 53 insertions(+), 65 deletions(-)

--- gregkh-2.6.orig/drivers/media/video/bt832.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/bt832.c	2005-08-15 23:33:44.000000000 -0700
@@ -241,7 +241,7 @@
 };
 static struct i2c_client client_template =
 {
-	I2C_DEVNAME("bt832"),
+	.name       = "bt832",
 	.flags      = I2C_CLIENT_ALLOW_USE,
         .driver     = &amp;driver,
 };
--- gregkh-2.6.orig/drivers/media/video/bttv-i2c.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/bttv-i2c.c	2005-08-15 23:33:44.000000000 -0700
@@ -109,7 +109,7 @@
 #ifdef I2C_CLASS_TV_ANALOG
 	.class             = I2C_CLASS_TV_ANALOG,
 #endif
-	I2C_DEVNAME("bt848"),
+	.name              = "bt848",
 	.id                = I2C_HW_B_BT848,
 	.client_register   = attach_inform,
 };
@@ -280,7 +280,7 @@
 #ifdef I2C_CLASS_TV_ANALOG
 	.class         = I2C_CLASS_TV_ANALOG,
 #endif
-	I2C_DEVNAME("bt878"),
+	.name          = "bt878",
 	.id            = I2C_HW_B_BT848 /* FIXME */,
 	.algo          = &amp;bttv_algo,
 	.client_register = attach_inform,
@@ -296,7 +296,7 @@
 	if (bttv_debug)
 		printk(KERN_DEBUG "bttv%d: %s i2c attach [addr=0x%x,client=%s]\n",
 			btv-&gt;c.nr,client-&gt;driver-&gt;name,client-&gt;addr,
-			i2c_clientname(client));
+			client-&gt;name);
 	if (!client-&gt;driver-&gt;command)
 		return 0;
 
@@ -324,7 +324,7 @@
 }
 
 static struct i2c_client bttv_i2c_client_template = {
-	I2C_DEVNAME("bttv internal"),
+	.name	= "bttv internal",
 };
 
 
--- gregkh-2.6.orig/drivers/media/video/ir-kbd-i2c.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/ir-kbd-i2c.c	2005-08-15 23:33:44.000000000 -0700
@@ -308,7 +308,7 @@
 
 static struct i2c_client client_template =
 {
-        I2C_DEVNAME("unset"),
+        .name = "unset",
         .driver = &amp;driver
 };
 
--- gregkh-2.6.orig/drivers/media/video/msp3400.c	2005-08-02 13:41:28.000000000 -0700
+++ gregkh-2.6/drivers/media/video/msp3400.c	2005-08-15 23:33:44.000000000 -0700
@@ -1437,7 +1437,7 @@
 
 static struct i2c_client client_template =
 {
-	I2C_DEVNAME("(unset)"),
+	.name      = "(unset)",
 	.flags     = I2C_CLIENT_ALLOW_USE,
         .driver    = &amp;driver,
 };
@@ -1509,7 +1509,7 @@
 	}
 
 	/* hello world :-) */
-	printk(KERN_INFO "msp34xx: init: chip=%s",i2c_clientname(c));
+	printk(KERN_INFO "msp34xx: init: chip=%s", c-&gt;name);
 	if (HAVE_NICAM(msp))
 		printk(" +nicam");
 	if (HAVE_SIMPLE(msp))
--- gregkh-2.6.orig/drivers/usb/media/w9968cf.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/usb/media/w9968cf.c	2005-08-15 23:33:44.000000000 -0700
@@ -1523,7 +1523,6 @@
 static int w9968cf_i2c_attach_inform(struct i2c_client* client)
 {
 	struct w9968cf_device* cam = i2c_get_adapdata(client-&gt;adapter);
-	const char* clientname = i2c_clientname(client);
 	int id = client-&gt;driver-&gt;id, err = 0;
 
 	if (id == I2C_DRIVERID_OVCAMCHIP) {
@@ -1535,12 +1534,12 @@
 		}
 	} else {
 		DBG(4, "Rejected client [%s] with driver [%s]", 
-		    clientname, client-&gt;driver-&gt;name)
+		    client-&gt;name, client-&gt;driver-&gt;name)
 		return -EINVAL;
 	}
 
 	DBG(5, "I2C attach client [%s] with driver [%s]",
-	    clientname, client-&gt;driver-&gt;name)
+	    client-&gt;name, client-&gt;driver-&gt;name)
 
 	return 0;
 }
@@ -1549,12 +1548,11 @@
 static int w9968cf_i2c_detach_inform(struct i2c_client* client)
 {
 	struct w9968cf_device* cam = i2c_get_adapdata(client-&gt;adapter);
-	const char* clientname = i2c_clientname(client);
 
 	if (cam-&gt;sensor_client == client)
 		cam-&gt;sensor_client = NULL;
 
-	DBG(5, "I2C detach client [%s]", clientname)
+	DBG(5, "I2C detach client [%s]", client-&gt;name)
 
 	return 0;
 }
--- gregkh-2.6.orig/drivers/media/video/cx88/cx88-i2c.c	2005-08-02 13:41:28.000000000 -0700
+++ gregkh-2.6/drivers/media/video/cx88/cx88-i2c.c	2005-08-15 23:33:44.000000000 -0700
@@ -95,7 +95,7 @@
 	struct cx88_core *core = i2c_get_adapdata(client-&gt;adapter);
 
 	dprintk(1, "%s i2c attach [addr=0x%x,client=%s]\n",
-		client-&gt;driver-&gt;name,client-&gt;addr,i2c_clientname(client));
+		client-&gt;driver-&gt;name, client-&gt;addr, client-&gt;name);
 	if (!client-&gt;driver-&gt;command)
 		return 0;
 
@@ -128,7 +128,7 @@
 {
 	struct cx88_core *core = i2c_get_adapdata(client-&gt;adapter);
 
-	dprintk(1, "i2c detach [client=%s]\n", i2c_clientname(client));
+	dprintk(1, "i2c detach [client=%s]\n", client-&gt;name);
 	return 0;
 }
 
@@ -152,7 +152,7 @@
 /* ----------------------------------------------------------------------- */
 
 static struct i2c_adapter cx8800_i2c_adap_template = {
-	I2C_DEVNAME("cx2388x"),
+	.name              = "cx2388x",
 	.owner             = THIS_MODULE,
 	.id                = I2C_HW_B_CX2388x,
 	.client_register   = attach_inform,
@@ -160,7 +160,7 @@
 };
 
 static struct i2c_client cx8800_i2c_client_template = {
-        I2C_DEVNAME("cx88xx internal"),
+        .name	= "cx88xx internal",
 };
 
 static char *i2c_devs[128] = {
--- gregkh-2.6.orig/drivers/media/video/ovcamchip/ovcamchip_core.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/ovcamchip/ovcamchip_core.c	2005-08-15 23:33:44.000000000 -0700
@@ -314,7 +314,7 @@
 	}
 	memcpy(c, &amp;client_template, sizeof *c);
 	c-&gt;adapter = adap;
-	strcpy(i2c_clientname(c), "OV????");
+	strcpy(c-&gt;name, "OV????");
 
 	ov = kmalloc(sizeof *ov, GFP_KERNEL);
 	if (!ov) {
@@ -328,7 +328,7 @@
 	if (rc &lt; 0)
 		goto error;
 
-	strcpy(i2c_clientname(c), chip_names[ov-&gt;subtype]);
+	strcpy(c-&gt;name, chip_names[ov-&gt;subtype]);
 
 	PDEBUG(1, "Camera chip detection complete");
 
@@ -421,7 +421,7 @@
 };
 
 static struct i2c_client client_template = {
-	I2C_DEVNAME("(unset)"),
+	.name =		"(unset)",
 	.driver =	&amp;driver,
 };
 
--- gregkh-2.6.orig/drivers/media/video/saa7134/saa6752hs.c	2005-08-02 13:41:28.000000000 -0700
+++ gregkh-2.6/drivers/media/video/saa7134/saa6752hs.c	2005-08-15 23:33:44.000000000 -0700
@@ -598,7 +598,7 @@
 
 static struct i2c_client client_template =
 {
-	I2C_DEVNAME("saa6752hs"),
+	.name       = "saa6752hs",
 	.flags      = I2C_CLIENT_ALLOW_USE,
         .driver     = &amp;driver,
 };
--- gregkh-2.6.orig/drivers/media/video/saa7134/saa7134-i2c.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/saa7134/saa7134-i2c.c	2005-08-15 23:33:44.000000000 -0700
@@ -334,7 +334,7 @@
 	struct tuner_setup tun_setup;
 
 	d1printk( "%s i2c attach [addr=0x%x,client=%s]\n",
-		client-&gt;driver-&gt;name,client-&gt;addr,i2c_clientname(client));
+		 client-&gt;driver-&gt;name, client-&gt;addr, client-&gt;name);
 
 	if (!client-&gt;driver-&gt;command)
 		return 0;
@@ -380,14 +380,14 @@
 #ifdef I2C_CLASS_TV_ANALOG
 	.class         = I2C_CLASS_TV_ANALOG,
 #endif
-	I2C_DEVNAME("saa7134"),
+	.name          = "saa7134",
 	.id            = I2C_HW_SAA7134,
 	.algo          = &amp;saa7134_algo,
 	.client_register = attach_inform,
 };
 
 static struct i2c_client saa7134_client_template = {
-	I2C_DEVNAME("saa7134 internal"),
+	.name	= "saa7134 internal",
 };
 
 /* ----------------------------------------------------------- */
--- gregkh-2.6.orig/drivers/media/video/tda7432.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tda7432.c	2005-08-15 23:33:44.000000000 -0700
@@ -513,7 +513,7 @@
 
 static struct i2c_client client_template =
 {
-	I2C_DEVNAME("tda7432"),
+	.name       = "tda7432",
 	.driver     = &amp;driver,
 };
 
--- gregkh-2.6.orig/drivers/media/video/tda9840.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tda9840.c	2005-08-15 23:33:44.000000000 -0700
@@ -231,7 +231,7 @@
 };
 
 static struct i2c_client client_template = {
-	I2C_DEVNAME("tda9840"),
+	.name = "tda9840",
 	.driver = &amp;driver,
 };
 
--- gregkh-2.6.orig/drivers/media/video/tda9875.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tda9875.c	2005-08-15 23:33:44.000000000 -0700
@@ -384,7 +384,7 @@
 
 static struct i2c_client client_template =
 {
-        I2C_DEVNAME("tda9875"),
+        .name      = "tda9875",
         .driver    = &amp;driver,
 };
 
--- gregkh-2.6.orig/drivers/media/video/tda9887.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tda9887.c	2005-08-15 23:33:44.000000000 -0700
@@ -793,7 +793,7 @@
 };
 static struct i2c_client client_template =
 {
-	I2C_DEVNAME("tda9887"),
+	.name      = "tda9887",
 	.flags     = I2C_CLIENT_ALLOW_USE,
         .driver    = &amp;driver,
 };
--- gregkh-2.6.orig/drivers/media/video/tea6415c.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tea6415c.c	2005-08-15 23:33:44.000000000 -0700
@@ -200,7 +200,7 @@
 };
 
 static struct i2c_client client_template = {
-	I2C_DEVNAME("tea6415c"),
+	.name = "tea6415c",
 	.driver = &amp;driver,
 };
 
--- gregkh-2.6.orig/drivers/media/video/tea6420.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tea6420.c	2005-08-15 23:33:44.000000000 -0700
@@ -177,7 +177,7 @@
 };
 
 static struct i2c_client client_template = {
-	I2C_DEVNAME("tea6420"),
+	.name = "tea6420",
 	.driver = &amp;driver,
 };
 
--- gregkh-2.6.orig/drivers/media/video/tuner-core.c	2005-08-02 13:41:28.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tuner-core.c	2005-08-15 23:33:44.000000000 -0700
@@ -709,7 +709,7 @@
 		   },
 };
 static struct i2c_client client_template = {
-	I2C_DEVNAME("(tuner unset)"),
+	.name = "(tuner unset)",
 	.flags = I2C_CLIENT_ALLOW_USE,
 	.driver = &amp;driver,
 };
--- gregkh-2.6.orig/drivers/media/video/tvaudio.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tvaudio.c	2005-08-15 23:33:44.000000000 -0700
@@ -162,24 +162,23 @@
 	unsigned char buffer[2];
 
 	if (-1 == subaddr) {
-		dprintk("%s: chip_write: 0x%x\n",
-			i2c_clientname(&amp;chip-&gt;c), val);
+		dprintk("%s: chip_write: 0x%x\n", chip-&gt;c.name, val);
 		chip-&gt;shadow.bytes[1] = val;
 		buffer[0] = val;
 		if (1 != i2c_master_send(&amp;chip-&gt;c,buffer,1)) {
 			printk(KERN_WARNING "%s: I/O error (write 0x%x)\n",
-			       i2c_clientname(&amp;chip-&gt;c), val);
+			       chip-&gt;c.name, val);
 			return -1;
 		}
 	} else {
 		dprintk("%s: chip_write: reg%d=0x%x\n",
-			i2c_clientname(&amp;chip-&gt;c), subaddr, val);
+			chip-&gt;c.name, subaddr, val);
 		chip-&gt;shadow.bytes[subaddr+1] = val;
 		buffer[0] = subaddr;
 		buffer[1] = val;
 		if (2 != i2c_master_send(&amp;chip-&gt;c,buffer,2)) {
 			printk(KERN_WARNING "%s: I/O error (write reg%d=0x%x)\n",
-			       i2c_clientname(&amp;chip-&gt;c), subaddr, val);
+			       chip-&gt;c.name, subaddr, val);
 			return -1;
 		}
 	}
@@ -203,11 +202,10 @@
 	unsigned char buffer;
 
 	if (1 != i2c_master_recv(&amp;chip-&gt;c,&amp;buffer,1)) {
-		printk(KERN_WARNING "%s: I/O error (read)\n",
-		       i2c_clientname(&amp;chip-&gt;c));
+		printk(KERN_WARNING "%s: I/O error (read)\n", chip-&gt;c.name);
 		return -1;
 	}
-	dprintk("%s: chip_read: 0x%x\n",i2c_clientname(&amp;chip-&gt;c),buffer);
+	dprintk("%s: chip_read: 0x%x\n", chip-&gt;c.name, buffer);
 	return buffer;
 }
 
@@ -222,12 +220,11 @@
         write[0] = subaddr;
 
 	if (2 != i2c_transfer(chip-&gt;c.adapter,msgs,2)) {
-		printk(KERN_WARNING "%s: I/O error (read2)\n",
-		       i2c_clientname(&amp;chip-&gt;c));
+		printk(KERN_WARNING "%s: I/O error (read2)\n", chip-&gt;c.name);
 		return -1;
 	}
 	dprintk("%s: chip_read2: reg%d=0x%x\n",
-		i2c_clientname(&amp;chip-&gt;c),subaddr,read[0]);
+		chip-&gt;c.name, subaddr, read[0]);
 	return read[0];
 }
 
@@ -240,7 +237,7 @@
 
 	/* update our shadow register set; print bytes if (debug &gt; 0) */
 	dprintk("%s: chip_cmd(%s): reg=%d, data:",
-		i2c_clientname(&amp;chip-&gt;c),name,cmd-&gt;bytes[0]);
+		chip-&gt;c.name, name, cmd-&gt;bytes[0]);
 	for (i = 1; i &lt; cmd-&gt;count; i++) {
 		dprintk(" 0x%x",cmd-&gt;bytes[i]);
 		chip-&gt;shadow.bytes[i+cmd-&gt;bytes[0]] = cmd-&gt;bytes[i];
@@ -249,7 +246,7 @@
 
 	/* send data to the chip */
 	if (cmd-&gt;count != i2c_master_send(&amp;chip-&gt;c,cmd-&gt;bytes,cmd-&gt;count)) {
-		printk(KERN_WARNING "%s: I/O error (%s)\n", i2c_clientname(&amp;chip-&gt;c), name);
+		printk(KERN_WARNING "%s: I/O error (%s)\n", chip-&gt;c.name, name);
 		return -1;
 	}
 	return 0;
@@ -274,9 +271,9 @@
         struct CHIPSTATE *chip = data;
 	struct CHIPDESC  *desc = chiplist + chip-&gt;type;
 
-	daemonize("%s",i2c_clientname(&amp;chip-&gt;c));
+	daemonize("%s", chip-&gt;c.name);
 	allow_signal(SIGTERM);
-	dprintk("%s: thread started\n", i2c_clientname(&amp;chip-&gt;c));
+	dprintk("%s: thread started\n", chip-&gt;c.name);
 
 	for (;;) {
 		add_wait_queue(&amp;chip-&gt;wq, &amp;wait);
@@ -288,7 +285,7 @@
 		try_to_freeze();
 		if (chip-&gt;done || signal_pending(current))
 			break;
-		dprintk("%s: thread wakeup\n", i2c_clientname(&amp;chip-&gt;c));
+		dprintk("%s: thread wakeup\n", chip-&gt;c.name);
 
 		/* don't do anything for radio or if mode != auto */
 		if (chip-&gt;norm == VIDEO_MODE_RADIO || chip-&gt;mode != 0)
@@ -301,7 +298,7 @@
 		mod_timer(&amp;chip-&gt;wt, jiffies+2*HZ);
 	}
 
-	dprintk("%s: thread exiting\n", i2c_clientname(&amp;chip-&gt;c));
+	dprintk("%s: thread exiting\n", chip-&gt;c.name);
         complete_and_exit(&amp;chip-&gt;texit, 0);
 	return 0;
 }
@@ -314,7 +311,7 @@
 	if (mode == chip-&gt;prevmode)
 	    return;
 
-	dprintk("%s: thread checkmode\n", i2c_clientname(&amp;chip-&gt;c));
+	dprintk("%s: thread checkmode\n", chip-&gt;c.name);
 	chip-&gt;prevmode = mode;
 
 	if (mode &amp; VIDEO_SOUND_STEREO)
@@ -1501,7 +1498,7 @@
 		(desc-&gt;flags &amp; CHIP_HAS_INPUTSEL)   ? " audiomux"    : "");
 
 	/* fill required data structures */
-	strcpy(i2c_clientname(&amp;chip-&gt;c),desc-&gt;name);
+	strcpy(chip-&gt;c.name, desc-&gt;name);
 	chip-&gt;type = desc-chiplist;
 	chip-&gt;shadow.count = desc-&gt;registers+1;
         chip-&gt;prevmode = -1;
@@ -1538,7 +1535,7 @@
 		chip-&gt;tpid = kernel_thread(chip_thread,(void *)chip,0);
 		if (chip-&gt;tpid &lt; 0)
 			printk(KERN_WARNING "%s: kernel_thread() failed\n",
-			       i2c_clientname(&amp;chip-&gt;c));
+			       chip-&gt;c.name);
 		wake_up_interruptible(&amp;chip-&gt;wq);
 	}
 	return 0;
@@ -1591,7 +1588,7 @@
 	struct CHIPSTATE *chip = i2c_get_clientdata(client);
 	struct CHIPDESC  *desc = chiplist + chip-&gt;type;
 
-	dprintk("%s: chip_command 0x%x\n",i2c_clientname(&amp;chip-&gt;c),cmd);
+	dprintk("%s: chip_command 0x%x\n", chip-&gt;c.name, cmd);
 
 	switch (cmd) {
 	case AUDC_SET_INPUT:
@@ -1702,7 +1699,7 @@
 
 static struct i2c_client client_template =
 {
-	I2C_DEVNAME("(unset)"),
+	.name       = "(unset)",
 	.flags      = I2C_CLIENT_ALLOW_USE,
         .driver     = &amp;driver,
 };
--- gregkh-2.6.orig/drivers/media/video/tvmixer.c	2005-08-15 23:33:22.000000000 -0700
+++ gregkh-2.6/drivers/media/video/tvmixer.c	2005-08-15 23:33:44.000000000 -0700
@@ -91,7 +91,7 @@
         if (cmd == SOUND_MIXER_INFO) {
                 mixer_info info;
                 strlcpy(info.id, "tv card", sizeof(info.id));
-                strlcpy(info.name, i2c_clientname(client), sizeof(info.name));
+                strlcpy(info.name, client-&gt;name, sizeof(info.name));
                 info.modify_counter = 42 /* FIXME */;
                 if (copy_to_user(argp, &amp;info, sizeof(info)))
                         return -EFAULT;
@@ -100,7 +100,7 @@
         if (cmd == SOUND_OLD_MIXER_INFO) {
                 _old_mixer_info info;
                 strlcpy(info.id, "tv card", sizeof(info.id));
-                strlcpy(info.name, i2c_clientname(client), sizeof(info.name));
+                strlcpy(info.name, client-&gt;name, sizeof(info.name));
                 if (copy_to_user(argp, &amp;info, sizeof(info)))
                         return -EFAULT;
                 return 0;
@@ -295,7 +295,7 @@
 			devices[i].dev = NULL;
 			devices[i].minor = -1;
 			printk("tvmixer: %s unregistered (#1)\n",
-			       i2c_clientname(client));
+			       client-&gt;name);
 			return 0;
 		}
 	}
@@ -354,7 +354,7 @@
 		if (devices[i].minor != -1) {
 			unregister_sound_mixer(devices[i].minor);
 			printk("tvmixer: %s unregistered (#2)\n",
-			       i2c_clientname(devices[i].dev));
+			       devices[i].dev-&gt;name);
 		}
 	}
 }
--- gregkh-2.6.orig/drivers/media/video/zoran_card.c	2005-06-17 12:48:29.000000000 -0700
+++ gregkh-2.6/drivers/media/video/zoran_card.c	2005-08-15 23:33:44.000000000 -0700
@@ -737,7 +737,7 @@
 };
 
 static struct i2c_adapter zoran_i2c_adapter_template = {
-	I2C_DEVNAME("zr36057"),
+	.name = "zr36057",
 	.id = I2C_HW_B_ZR36067,
 	.algo = NULL,
 	.client_register = zoran_i2c_client_register,
--- gregkh-2.6.orig/include/linux/i2c.h	2005-08-15 23:33:23.000000000 -0700
+++ gregkh-2.6/include/linux/i2c.h	2005-08-15 23:33:44.000000000 -0700
@@ -178,13 +178,6 @@
 	dev_set_drvdata (&amp;dev-&gt;dev, data);
 }
 
-#define I2C_DEVNAME(str)	.name = str
-
-static inline char *i2c_clientname(struct i2c_client *c)
-{
-	return &amp;c-&gt;name[0];
-}
-
 /*
  * The following structs are for those who like to implement new bus drivers:
  * i2c_algorithm is the interface to a class of hardware solutions which can
</pre></body></html>