powerpc/macintosh: Fix unsigned check in smu_sat_get_sdb_partition()
roel kluin [Sat, 29 Nov 2008 01:17:27 +0000 (01:17 +0000)]
i2c_smbus_read_word_data() returns a s32, which may be negative
but unsigned len cannot be negative.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>

drivers/macintosh/windfarm_smu_sat.c

index 7f2be4b..7847e98 100644 (file)
@@ -87,11 +87,12 @@ struct smu_sdbp_header *smu_sat_get_sdb_partition(unsigned int sat_id, int id,
                return NULL;
        }
 
-       len = i2c_smbus_read_word_data(&sat->i2c, 9);
-       if (len < 0) {
+       err = i2c_smbus_read_word_data(&sat->i2c, 9);
+       if (err < 0) {
                printk(KERN_ERR "smu_sat_get_sdb_part rd len error\n");
                return NULL;
        }
+       len = err;
        if (len == 0) {
                printk(KERN_ERR "smu_sat_get_sdb_part no partition %x\n", id);
                return NULL;