summaryrefslogtreecommitdiff
path: root/include/als.h
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/als.h
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/als.h')
-rw-r--r--include/als.h32
1 files changed, 32 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 */