Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6

* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
i2c-sibyte: Fix an error path
i2c: Driver IDs are optional
i2c: Spelling fixes
i2c-omap: Fix NULL pointer dereferencing

+13 -6
+1 -1
drivers/i2c/busses/i2c-at91.c
··· 135 135 * Generic i2c master transfer entrypoint. 136 136 * 137 137 * Note: We do not use Atmel's feature of storing the "internal device address". 138 - * Instead the "internal device address" has to be written using a seperate 138 + * Instead the "internal device address" has to be written using a separate 139 139 * i2c message. 140 140 * http://lists.arm.linux.org.uk/pipermail/linux-arm-kernel/2004-September/024411.html 141 141 */
+1 -1
drivers/i2c/busses/i2c-omap.c
··· 619 619 err_free_irq: 620 620 free_irq(dev->irq, dev); 621 621 err_unuse_clocks: 622 + omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0); 622 623 omap_i2c_disable_clocks(dev); 623 624 omap_i2c_put_clocks(dev); 624 625 err_free_mem: 625 626 platform_set_drvdata(pdev, NULL); 626 627 kfree(dev); 627 628 err_release_region: 628 - omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0); 629 629 release_mem_region(mem->start, (mem->end - mem->start) + 1); 630 630 631 631 return r;
+1 -1
drivers/i2c/busses/i2c-powermac.c
··· 94 94 break; 95 95 96 96 /* Note that these are broken vs. the expected smbus API where 97 - * on reads, the lenght is actually returned from the function, 97 + * on reads, the length is actually returned from the function, 98 98 * but I think the current API makes no sense and I don't want 99 99 * any driver that I haven't verified for correctness to go 100 100 * anywhere near a pmac i2c bus anyway ...
+5 -2
drivers/i2c/busses/i2c-sibyte.c
··· 200 200 201 201 static int __init i2c_sibyte_init(void) 202 202 { 203 - printk("i2c-swarm.o: i2c SMBus adapter module for SiByte board\n"); 203 + pr_info("i2c-sibyte: i2c SMBus adapter module for SiByte board\n"); 204 204 if (i2c_sibyte_add_bus(&sibyte_board_adapter[0], K_SMB_FREQ_100KHZ) < 0) 205 205 return -ENODEV; 206 - if (i2c_sibyte_add_bus(&sibyte_board_adapter[1], K_SMB_FREQ_400KHZ) < 0) 206 + if (i2c_sibyte_add_bus(&sibyte_board_adapter[1], 207 + K_SMB_FREQ_400KHZ) < 0) { 208 + i2c_del_adapter(&sibyte_board_adapter[0]); 207 209 return -ENODEV; 210 + } 208 211 return 0; 209 212 } 210 213
+1 -1
drivers/i2c/i2c-dev.c
··· 184 184 185 185 /* This address checking function differs from the one in i2c-core 186 186 in that it considers an address with a registered device, but no 187 - bounded driver, as NOT busy. */ 187 + bound driver, as NOT busy. */ 188 188 static int i2cdev_check_addr(struct i2c_adapter *adapter, unsigned int addr) 189 189 { 190 190 struct list_head *item;
+4
include/linux/i2c-id.h
··· 23 23 #ifndef LINUX_I2C_ID_H 24 24 #define LINUX_I2C_ID_H 25 25 26 + /* Please note that I2C driver IDs are optional. They are only needed if a 27 + legacy chip driver needs to identify a bus or a bus driver needs to 28 + identify a legacy client. If you don't need them, just don't set them. */ 29 + 26 30 /* 27 31 * ---- Driver types ----------------------------------------------------- 28 32 */