Platform: x86: chromeos_laptop - Add isl light sensor for Pixel
authorBenson Leung <bleung@chromium.org>
Thu, 21 Feb 2013 20:14:57 +0000 (12:14 -0800)
committerMatthew Garrett <matthew.garrett@nebula.com>
Wed, 27 Feb 2013 13:30:46 +0000 (08:30 -0500)
The Chromebook Pixel uses an isl29023 ambient light sensor on the PANEL
GMBus.

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

index 6bde4e4..04a11cc 100644 (file)
@@ -238,6 +238,14 @@ static int __init setup_isl29018_als(const struct dmi_system_id *id)
        return 0;
 }
 
+static int __init setup_isl29023_als(const struct dmi_system_id *id)
+{
+       /* add isl29023 light sensor on Panel GMBus */
+       als = add_i2c_device("lightsensor", I2C_ADAPTER_PANEL,
+                            &isl_als_device);
+       return 0;
+}
+
 static int __init setup_tsl2583_als(const struct dmi_system_id *id)
 {
        /* add tsl2583 light sensor on smbus */
@@ -286,6 +294,14 @@ static struct dmi_system_id __initdata chromeos_laptop_dmi_table[] = {
                .callback = setup_isl29018_als,
        },
        {
+               .ident = "Chromebook Pixel - Light Sensor",
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "GOOGLE"),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "Link"),
+               },
+               .callback = setup_isl29023_als,
+       },
+       {
                .ident = "Acer C7 Chromebook - Touchpad",
                .matches = {
                        DMI_MATCH(DMI_PRODUCT_NAME, "Parrot"),