summaryrefslogtreecommitdiffstats
path: root/drivers/platform
diff options
context:
space:
mode:
authorBenson Leung <bleung@chromium.org>2013-02-21 21:14:57 +0100
committerMatthew Garrett <matthew.garrett@nebula.com>2013-02-27 14:30:46 +0100
commitcc5c3985a3b17cc7a4bfdf084950d92c8919ea4b (patch)
tree66a20761de6ba9394bd4ca40a826390caee8e868 /drivers/platform
parentPlatform: x86: chromeos_laptop - Add a more general add_i2c_device (diff)
downloadlinux-cc5c3985a3b17cc7a4bfdf084950d92c8919ea4b.tar.xz
linux-cc5c3985a3b17cc7a4bfdf084950d92c8919ea4b.zip
Platform: x86: chromeos_laptop - Add isl light sensor for Pixel
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>
Diffstat (limited to 'drivers/platform')
-rw-r--r--drivers/platform/x86/chromeos_laptop.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/platform/x86/chromeos_laptop.c b/drivers/platform/x86/chromeos_laptop.c
index 6bde4e4c93b4..04a11cca399d 100644
--- a/drivers/platform/x86/chromeos_laptop.c
+++ b/drivers/platform/x86/chromeos_laptop.c
@@ -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"),