Platform: x86: chromeos_laptop - Add a more general add_i2c_device
authorBenson Leung <bleung@chromium.org>
Thu, 21 Feb 2013 20:14:56 +0000 (12:14 -0800)
committerMatthew Garrett <matthew.garrett@nebula.com>
Wed, 27 Feb 2013 13:30:45 +0000 (08:30 -0500)
This will allow us to assign devices to buses by the type enum.

Signed-off-by: Benson Leung <bleung@chromium.org>
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
drivers/platform/x86/chromeos_laptop.c

index e5380e772b26764db8ebb1c53a85a77ca0ba301c..6bde4e4c93b4bad61c0f45b8c05146834e65e130 100644 (file)
@@ -181,16 +181,24 @@ static __init struct i2c_client *add_probed_i2c_device(
  * info->addr.
  * Returns NULL if no device found.
  */
-static struct i2c_client __init *add_smbus_device(const char *name,
-                                                 struct i2c_board_info *info)
+static __init struct i2c_client *add_i2c_device(const char *name,
+                                               enum i2c_adapter_type type,
+                                               struct i2c_board_info *info)
 {
        const unsigned short addr_list[] = { info->addr, I2C_CLIENT_END };
        return __add_probed_i2c_device(name,
-                                      find_i2c_adapter_num(I2C_ADAPTER_SMBUS),
+                                      find_i2c_adapter_num(type),
                                       info,
                                       addr_list);
 }
 
+
+static struct i2c_client __init *add_smbus_device(const char *name,
+                                                 struct i2c_board_info *info)
+{
+       return add_i2c_device(name, I2C_ADAPTER_SMBUS, info);
+}
+
 static int __init setup_cyapa_smbus_tp(const struct dmi_system_id *id)
 {
        /* add cyapa touchpad on smbus */