]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/media/dvb/frontends/lgdt330x.c
lgdt330x: fix signedness error in i2c_read_demod_bytes()
[karo-tx-linux.git] / drivers / media / dvb / frontends / lgdt330x.c
index 43971e63baa727c5a3c7de9cbc05dc4c8fc4207e..aa63d687d276f17a06359748a5650687badbe060 100644 (file)
@@ -104,8 +104,8 @@ static int i2c_write_demod_bytes (struct lgdt330x_state* state,
  * then reads the data returned for (len) bytes.
  */
 
-static u8 i2c_read_demod_bytes (struct lgdt330x_state* state,
-                              enum I2C_REG reg, u8* buf, int len)
+static int i2c_read_demod_bytes(struct lgdt330x_state *state,
+                               enum I2C_REG reg, u8 *buf, int len)
 {
        u8 wr [] = { reg };
        struct i2c_msg msg [] = {
@@ -118,6 +118,8 @@ static u8 i2c_read_demod_bytes (struct lgdt330x_state* state,
        ret = i2c_transfer(state->i2c, msg, 2);
        if (ret != 2) {
                printk(KERN_WARNING "lgdt330x: %s: addr 0x%02x select 0x%02x error (ret == %i)\n", __func__, state->config->demod_address, reg, ret);
+               if (ret >= 0)
+                       ret = -EIO;
        } else {
                ret = 0;
        }