diff options
author | Yidi Lin <yidi.lin@mediatek.com> | 2017-01-12 11:42:04 +0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2017-02-09 20:48:44 -0800 |
commit | c09c1ad72701986203a3bdbfc7e20ff409188c63 (patch) | |
tree | c439786645026ae1a1a6d43baed0e90c6f282aea /board/rowan | |
parent | 9316ec321ab0708334f035c9e6090e592b0a8077 (diff) | |
download | chrome-ec-c09c1ad72701986203a3bdbfc7e20ff409188c63.tar.gz |
rowan: Add ISL29035
Add ambient light sensor support for rowan.
BRANCH=master
BUG=chrome-os-partner:62673
TEST=EC_FIRMWARE=rowan emerge-rowan chromeos-ec
Change-Id: Idfc34bd7977c96ac245a6d06cab064e65b8bf72a
Signed-off-by: Yidi Lin <yidi.lin@mediatek.com>
Reviewed-on: https://chromium-review.googlesource.com/427564
Commit-Ready: Patrick Berny <pberny@chromium.org>
Tested-by: Patrick Berny <pberny@chromium.org>
Reviewed-by: Rong Chang <rongchang@chromium.org>
Diffstat (limited to 'board/rowan')
-rw-r--r-- | board/rowan/board.c | 8 | ||||
-rw-r--r-- | board/rowan/board.h | 10 | ||||
-rw-r--r-- | board/rowan/ec.tasklist | 3 |
3 files changed, 20 insertions, 1 deletions
diff --git a/board/rowan/board.c b/board/rowan/board.c index 046e1e848d..f6ba2147cf 100644 --- a/board/rowan/board.c +++ b/board/rowan/board.c @@ -7,6 +7,7 @@ #include "adc.h" #include "adc_chip.h" +#include "als.h" #include "atomic.h" #include "battery.h" #include "charge_manager.h" @@ -17,6 +18,7 @@ #include "console.h" #include "driver/accel_kionix.h" #include "driver/accel_kx022.h" +#include "driver/als_isl29035.h" #include "driver/tcpm/anx7688.h" #include "driver/tcpm/tcpci.h" #include "driver/temp_sensor/tmp432.h" @@ -474,6 +476,12 @@ static void board_chipset_suspend(void) } DECLARE_HOOK(HOOK_CHIPSET_SUSPEND, board_chipset_suspend, HOOK_PRIO_DEFAULT); +/* ALS instances. Must be in same order as enum als_id. */ +struct als_t als[] = { + {"ISL", isl29035_init, isl29035_read_lux, 5}, +}; +BUILD_ASSERT(ARRAY_SIZE(als) == ALS_COUNT); + #ifdef HAS_TASK_MOTIONSENSE /* Motion sensors */ /* Mutexes */ diff --git a/board/rowan/board.h b/board/rowan/board.h index b4b688880b..dcd422fc99 100644 --- a/board/rowan/board.h +++ b/board/rowan/board.h @@ -16,8 +16,10 @@ /* Accelero meter and gyro sensor */ #define CONFIG_ACCEL_KX022 +#define CONFIG_ALS_ISL29035 #define CONFIG_CMD_ACCELS #define CONFIG_CMD_ACCEL_INFO +#define CONFIG_CMD_ALS #define CONFIG_LID_ANGLE #define CONFIG_LID_ANGLE_SENSOR_BASE 0 #define CONFIG_LID_ANGLE_SENSOR_LID 1 @@ -135,6 +137,7 @@ /* 2 I2C master ports, connect to battery, charger, pd and USB switches */ #define I2C_PORT_MASTER 0 #define I2C_PORT_ACCEL 0 +#define I2C_PORT_ALS 0 #define I2C_PORT_BATTERY 0 #define I2C_PORT_CHARGER 0 #define I2C_PORT_PERICOM 0 @@ -193,6 +196,13 @@ enum temp_sensor_id { TEMP_SENSOR_COUNT }; +/* Light sensors attached to the EC. */ +enum als_id { + ALS_ISL29035 = 0, + + ALS_COUNT, +}; + /* TODO: determine the following board specific type-C power constants */ /* * delay to turn on the power supply max is ~16ms. diff --git a/board/rowan/ec.tasklist b/board/rowan/ec.tasklist index 1f2782dc9d..672efd1a23 100644 --- a/board/rowan/ec.tasklist +++ b/board/rowan/ec.tasklist @@ -26,4 +26,5 @@ TASK_ALWAYS(HOSTCMD, host_command_task, NULL, LARGER_TASK_STACK_SIZE) \ TASK_ALWAYS(CONSOLE, console_task, NULL, LARGER_TASK_STACK_SIZE) \ TASK_NOTEST(MOTIONSENSE, motion_sense_task, NULL, TASK_STACK_SIZE) \ - TASK_ALWAYS(PD_C0, pd_task, NULL, LARGER_TASK_STACK_SIZE) + TASK_ALWAYS(PD_C0, pd_task, NULL, LARGER_TASK_STACK_SIZE) \ + TASK_ALWAYS(ALS, als_task, NULL, TASK_STACK_SIZE) |