diff options
author | Jean Delvare <khali@linux-fr.org> | 2008-07-14 16:38:25 -0400 |
---|---|---|
committer | Jean Delvare <khali@mahadeva.delvare> | 2008-07-14 16:38:25 -0400 |
commit | ac7fc4fb2b6a126af8d07f46500440c9641976cf (patch) | |
tree | 1ba7a6b229699f6d69cfe3f1bd74c020e952e16b /drivers/i2c/busses/i2c-sis630.c | |
parent | fa63cd56d2f09806169307d761e8f430e23bc09b (diff) |
i2c: Consistently reject unsupported transactions
Many PC SMBus host controller drivers don't properly handle the case
where they are requested to achieve a transaction they do not support.
Update them so that the consistently print a warning message and
return a single error value in this case.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Diffstat (limited to 'drivers/i2c/busses/i2c-sis630.c')
-rw-r--r-- | drivers/i2c/busses/i2c-sis630.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/i2c/busses/i2c-sis630.c b/drivers/i2c/busses/i2c-sis630.c index c4cc5eddf50d..d7e6ff3e0187 100644 --- a/drivers/i2c/busses/i2c-sis630.c +++ b/drivers/i2c/busses/i2c-sis630.c | |||
@@ -356,7 +356,8 @@ static s32 sis630_access(struct i2c_adapter *adap, u16 addr, | |||
356 | size = SIS630_BLOCK_DATA; | 356 | size = SIS630_BLOCK_DATA; |
357 | return sis630_block_data(adap, data, read_write); | 357 | return sis630_block_data(adap, data, read_write); |
358 | default: | 358 | default: |
359 | printk("Unsupported SMBus operation\n"); | 359 | dev_warn(&adap->dev, "Unsupported transaction %d\n", |
360 | size); | ||
360 | return -EOPNOTSUPP; | 361 | return -EOPNOTSUPP; |
361 | } | 362 | } |
362 | 363 | ||
@@ -378,8 +379,6 @@ static s32 sis630_access(struct i2c_adapter *adap, u16 addr, | |||
378 | case SIS630_WORD_DATA: | 379 | case SIS630_WORD_DATA: |
379 | data->word = sis630_read(SMB_BYTE) + (sis630_read(SMB_BYTE + 1) << 8); | 380 | data->word = sis630_read(SMB_BYTE) + (sis630_read(SMB_BYTE + 1) << 8); |
380 | break; | 381 | break; |
381 | default: | ||
382 | return -EOPNOTSUPP; | ||
383 | } | 382 | } |
384 | 383 | ||
385 | return 0; | 384 | return 0; |