Hi!
I used to compile bttv support into the main kernel, not
as a module. Since 2.3.34, that does not work any more,
because of a small problem in tda8425.c, tda9855.c and
tea6300.c, where the function tda????_init is defined
twice.
The subtle fix to rename the functions lets me compile
a working driver without errors, but my card (miro pctv)
containes neither of the tda* devices anyway.
When I try to insert the module bttv.o while using the
statically linked driver, the original driver stops
working but does not cause an Oops or a crash or
something.
Arnd <><
--- tda8425.c.bak Fri Jan 7 21:54:38 2000
+++ tda8425.c Fri Jan 7 21:54:47 2000
@@ -104,7 +104,7 @@
tda8425_write(client, TDA8425_TR, tda->treble>>12|0xF0);
}
-static void tda8425_init(struct i2c_client *client)
+static void _tda8425_init(struct i2c_client *client)
{
struct tda8425 *tda = client->data;
@@ -152,7 +152,7 @@
if (!tda)
return -ENOMEM;
memset(tda,0,sizeof *tda);
- tda8425_init(client);
+ _tda8425_init(client);
MOD_INC_USE_COUNT;
strcpy(client->name,"TDA8425");
printk(KERN_INFO "tda8425: init\n");
@@ -173,7 +173,7 @@
{
struct tda8425 *tda = client->data;
- tda8425_init(client);
+ _tda8425_init(client);
i2c_detach_client(client);
kfree(tda);
--- tda9855.c.bak Fri Jan 7 21:55:03 2000
+++ tda9855.c Fri Jan 7 21:55:37 2000
@@ -194,7 +194,7 @@
return 0;
}
-static void tda9855_init(struct i2c_client *client)
+static void _tda9855_init(struct i2c_client *client)
{
struct tda9855 *t = client->data;
@@ -235,7 +235,7 @@
if (!t)
return -ENOMEM;
memset(t,0,sizeof *t);
- tda9855_init(client);
+ _tda9855_init(client);
MOD_INC_USE_COUNT;
strcpy(client->name,"TDA9855");
printk(KERN_INFO "tda9855: init\n");
@@ -255,7 +255,7 @@
{
struct tda9855 *t = client->data;
- tda9855_init(client);
+ _tda9855_init(client);
i2c_detach_client(client);
kfree(t);
--- tea6300.c.bak Fri Jan 7 21:55:11 2000
+++ tea6300.c Fri Jan 7 21:56:10 2000
@@ -111,7 +111,7 @@
tea6300_write(client, TEA6300_TR, tea->treble>>12);
}
-static void tea6300_init(struct i2c_client *client)
+static void _tea6300_init(struct i2c_client *client)
{
struct tea6300 *tea = client->data;
@@ -173,7 +173,7 @@
if (!tea)
return -ENOMEM;
memset(tea,0,sizeof *tea);
- tea6300_init(client);
+ _tea6300_init(client);
MOD_INC_USE_COUNT;
strcpy(client->name,"TEA6300T");
@@ -194,7 +194,7 @@
{
struct tea6300 *tea = client->data;
- tea6300_init(client);
+ _tea6300_init(client);
i2c_detach_client(client);
kfree(tea);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sat Jan 15 2000 - 21:00:11 EST