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>
This commit is contained in:
Yidi Lin
2017-01-12 11:42:04 +08:00
committed by chrome-bot
parent 9316ec321a
commit c09c1ad727
3 changed files with 20 additions and 1 deletions

View File

@@ -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 */

View File

@@ -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.

View File

@@ -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)