Am Thursday 21 August 2008 15:15:56 schrieben Sie:
> Some DVB adapters do not support the special I2C transaction that we
> use for probing purposes. There's no point in logging this event, as
> there's nothing the user can do and in general there is no actual
> problem. So, degrade one of these message to a debug message, and
> move the other one around so that it is only printed on bogus drivers.
>
> Signed-off-by: Jean Delvare <[EMAIL PROTECTED]>
> Cc: Uwe Bugla <[EMAIL PROTECTED]>
> ---
> drivers/i2c/i2c-core.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> --- linux-2.6.27-rc4.orig/drivers/i2c/i2c-core.c 2008-08-21
> 14:04:03.000000000 +0200 +++
> linux-2.6.27-rc4/drivers/i2c/i2c-core.c 2008-08-21 14:58:14.000000000
> +0200
> @@ -1190,8 +1190,8 @@ int i2c_probe(struct i2c_adapter *adapte
> && address_data->normal_i2c[0] == I2C_CLIENT_END)
> return 0;
>
> - dev_warn(&adapter->dev, "SMBus Quick command not supported, "
> - "can't probe for chips\n");
> + dev_dbg(&adapter->dev, "SMBus Quick command not supported, "
> + "can't probe for chips\n");
> return -EOPNOTSUPP;
> }
>
> @@ -1352,6 +1352,10 @@ static int i2c_detect(struct i2c_adapter
> }
> }
>
> + /* Stop here if the classes do not match */
> + if (!(adapter->class & driver->class))
> + goto exit_free;
> +
> /* Stop here if we can't use SMBUS_QUICK */
> if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_QUICK)) {
> if (address_data->probe[0] == I2C_CLIENT_END
> @@ -1364,10 +1368,6 @@ static int i2c_detect(struct i2c_adapter
> goto exit_free;
> }
>
> - /* Stop here if the classes do not match */
> - if (!(adapter->class & driver->class))
> - goto exit_free;
> -
> /* Probe entries are done second, and are not affected by ignore
> entries either */
> for (i = 0; address_data->probe[i] != I2C_CLIENT_END; i += 2) {
Salut Jean,
in case that you change the following:
@@ -1188,8 +1188,8 @@ int i2c_probe(struct i2c_adapter *adapte
instead of:
@@ -1190,8 +1190,8 @@ int i2c_probe(struct i2c_adapter *adapte,
@@ -1350,6 +1350,10 @@ static int i2c_detect(struct i2c_adapter
instead of:
@@ -1352,6 +1352,10 @@ static int i2c_detect(struct i2c_adapter,
@@ -1362,10 +1366,6 @@ static int i2c_detect(struct i2c_adapte
instead of:
@@ -1364,10 +1368,6 @@ static int i2c_detect(struct i2c_adapte
I'll give you my: Signed-Off-By: Uwe Bugla <[EMAIL PROTECTED]>
for your patch material......
Mille fois merci encore une fois! : )
I've understood the issue in so far that this patch stuff only suppresses the
symptom, but does not cure the source problem, and I'd be very happy to see a
card driver fully supporting the I2C bus.
And if I'm not completely aside my DVB-S card runs somwhow now, but it runs
with an applied brake.
Fact is that the nerving messages are gone : )
C'est une plaisanterie travailler avec toi, Jean! : )
On se verra
Uwe
_______________________________________________
i2c mailing list
[email protected]
http://lists.lm-sensors.org/mailman/listinfo/i2c