summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorBill Richardson <wfrichar@chromium.org>2013-11-07 08:03:46 -0800
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2013-11-07 23:42:56 +0000
commitf23e68d721eb282619f1dd7b5b3ac4392234e6d4 (patch)
tree0aab4bd5d2134572087477d92aa52c24ca58c220 /include
parentbb9b335e31cda78f4a0e7c3e546ffcc1499c989b (diff)
downloadchrome-ec-f23e68d721eb282619f1dd7b5b3ac4392234e6d4.tar.gz
Add ALS driver for light sensors connected to EC
This adds the driver and a console command to read an Intersil ISL29305 light sensor connected to the EC. BUG=chrome-os-partner:23380 BRANCH=samus TEST=manual Run the "als" command from the EC console, while pointing the sensor in various directions. It should give higher numbers when facing a light source. If you get "Error 1", it means the ALS isn't powered. Change-Id: I855ed64dab7fc60e29126ab3e97669be24dc6a64 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/176056
Diffstat (limited to 'include')
-rw-r--r--include/als.h32
-rw-r--r--include/config.h7
2 files changed, 39 insertions, 0 deletions
diff --git a/include/als.h b/include/als.h
new file mode 100644
index 0000000000..e229a3791f
--- /dev/null
+++ b/include/als.h
@@ -0,0 +1,32 @@
+/* Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#ifndef __CROS_EC_ALS_H
+#define __CROS_EC_ALS_H
+
+#include "common.h"
+
+/* Defined in board.h */
+enum als_id;
+
+/* Initialized in board.c */
+struct als_t {
+ const char const *name;
+ int (*read)(int *lux);
+};
+
+extern struct als_t als[];
+
+/**
+ * Read an ALS
+ *
+ * @param id Which one?
+ * @param lux Put value here
+ *
+ * @return EC_SUCCESS, or non-zero if error.
+ */
+int als_read(enum als_id id, int *lux);
+
+#endif /* __CROS_EC_ALS_H */
diff --git a/include/config.h b/include/config.h
index c6e151158e..002d509def 100644
--- a/include/config.h
+++ b/include/config.h
@@ -46,6 +46,13 @@
#undef CONFIG_ADC_CLOCK
/*
+ * Some ALS modules may be connected to the EC. We need the command, and
+ * specific drivers for each module.
+ */
+#undef CONFIG_ALS
+#undef CONFIG_ALS_ISL29035
+
+/*
* Support controlling the display backlight based on the state of the lid
* switch. The EC will disable the backlight when the lid is closed.
*/