i2c-remove-redundant-i2c_client-list.patch
authorDavid Brownell <david-b@pacbell.net>
Sun, 27 Jan 2008 17:14:51 +0000 (18:14 +0100)
committerJean Delvare <khali@hyperion.delvare>
Sun, 27 Jan 2008 17:14:51 +0000 (18:14 +0100)
commit86ec5ec872566dda74848e09904bb5380cab962e
treed487b08d5b333780deb6e0dbccb56f745d7bfceb
parent961f80f9c0c0f7c45d7818f9c9969dfaa9e4463d
i2c-remove-redundant-i2c_client-list.patch

This goes on top of the patch removing most i2c_adapter.clients usage,
updating i2c_attach_client:

 - Don't call device_register() while holding clist_lock.  This
   removes a self-deadlock when on the i2c_driver.probe() path,
   for drivers that need to attach new devices (e.g. dummies).

 - Remove a redundant address check.  The driver model core does
   this as a consequence of guaranteeing unique names.

 - Move the "device registered" diagnostic so that it never lies;
   previously, on error paths it would falsely report success.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
drivers/i2c/i2c-core.c