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: chips subdirectory is deprecated i2c: Keep client->driver and client->dev.driver in sync i2c-amd756: Fix off-by-one
This commit is contained in:
@@ -335,7 +335,7 @@ static int __devinit amd756_probe(struct pci_dev *pdev,
|
|||||||
u8 temp;
|
u8 temp;
|
||||||
|
|
||||||
/* driver_data might come from user-space, so check it */
|
/* driver_data might come from user-space, so check it */
|
||||||
if (id->driver_data > ARRAY_SIZE(chipname))
|
if (id->driver_data >= ARRAY_SIZE(chipname))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
if (amd756_ioport) {
|
if (amd756_ioport) {
|
||||||
|
@@ -1,6 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Makefile for miscellaneous I2C chip drivers.
|
# Makefile for miscellaneous I2C chip drivers.
|
||||||
#
|
#
|
||||||
|
# Think twice before you add a new driver to this directory.
|
||||||
|
# Device drivers are better grouped according to the functionality they
|
||||||
|
# implement rather than to the bus they are connected to. In particular:
|
||||||
|
# * Hardware monitoring chip drivers go to drivers/hwmon
|
||||||
|
# * RTC chip drivers go to drivers/rtc
|
||||||
|
# * I/O expander drivers go to drivers/gpio
|
||||||
|
#
|
||||||
|
|
||||||
obj-$(CONFIG_DS1682) += ds1682.o
|
obj-$(CONFIG_DS1682) += ds1682.o
|
||||||
obj-$(CONFIG_SENSORS_EEPROM) += eeprom.o
|
obj-$(CONFIG_SENSORS_EEPROM) += eeprom.o
|
||||||
|
@@ -90,12 +90,16 @@ static int i2c_device_probe(struct device *dev)
|
|||||||
{
|
{
|
||||||
struct i2c_client *client = to_i2c_client(dev);
|
struct i2c_client *client = to_i2c_client(dev);
|
||||||
struct i2c_driver *driver = to_i2c_driver(dev->driver);
|
struct i2c_driver *driver = to_i2c_driver(dev->driver);
|
||||||
|
int status;
|
||||||
|
|
||||||
if (!driver->probe)
|
if (!driver->probe)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
client->driver = driver;
|
client->driver = driver;
|
||||||
dev_dbg(dev, "probe\n");
|
dev_dbg(dev, "probe\n");
|
||||||
return driver->probe(client);
|
status = driver->probe(client);
|
||||||
|
if (status)
|
||||||
|
client->driver = NULL;
|
||||||
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int i2c_device_remove(struct device *dev)
|
static int i2c_device_remove(struct device *dev)
|
||||||
|
Reference in New Issue
Block a user