diff options
author | Hsu Henry <Henry.Hsu@quantatw.com> | 2013-07-31 11:28:56 +0800 |
---|---|---|
committer | ChromeBot <chrome-bot@google.com> | 2013-08-08 20:29:17 -0700 |
commit | 4d7e13ddc63525670981546f582d04de91f5e2ca (patch) | |
tree | 34f6b5be1562441d1d733845aae22fd766f040dd /board | |
parent | 0a93b4b1c139c9c227685dc020f080d274cfc5d3 (diff) | |
download | chrome-ec-4d7e13ddc63525670981546f582d04de91f5e2ca.tar.gz |
Update Wolf from Slippy.
Copy from Slippy and Delete BAT_DETECT_L and related functions.
(create new file battery_wolf.c)
BRANCH=wolf
BUG=none
TEST=manual
Build it with util/make_all.sh, seems fine.
Change-Id: I672147c45e14d03c7f4cf8ecc6daa3f889f97c05
Signed-off-by: Hsu Henry <Henry.Hsu@quantatw.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/63872
Reviewed-by: Dave Parker <dparker@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
Commit-Queue: Dave Parker <dparker@chromium.org>
Diffstat (limited to 'board')
-rw-r--r-- | board/wolf/board.c | 15 | ||||
-rw-r--r-- | board/wolf/board.h | 29 | ||||
-rw-r--r-- | board/wolf/ec.tasklist | 2 |
3 files changed, 35 insertions, 11 deletions
diff --git a/board/wolf/board.c b/board/wolf/board.c index 887ce30cc6..cd6cc1462a 100644 --- a/board/wolf/board.c +++ b/board/wolf/board.c @@ -23,6 +23,7 @@ #include "registers.h" #include "switch.h" #include "temp_sensor.h" +#include "temp_sensor_g781.h" #include "timer.h" #include "util.h" @@ -181,9 +182,10 @@ BUILD_ASSERT(ARRAY_SIZE(i2c_ports) == I2C_PORTS_USED); /* Temperature sensors data; must be in same order as enum temp_sensor_id. */ const struct temp_sensor_t temp_sensors[] = { -/* HEY: Need correct I2C addresses and read function for external sensor */ - {"ECInternal", TEMP_SENSOR_TYPE_BOARD, chip_temp_sensor_get_val, 0, 4}, {"PECI", TEMP_SENSOR_TYPE_CPU, peci_temp_sensor_get_val, 0, 2}, + {"ECInternal", TEMP_SENSOR_TYPE_BOARD, chip_temp_sensor_get_val, 0, 4}, + {"G781Internal", TEMP_SENSOR_TYPE_BOARD, g781_get_val, 0, 4}, + {"G781External", TEMP_SENSOR_TYPE_BOARD, g781_get_val, 1, 4}, }; BUILD_ASSERT(ARRAY_SIZE(temp_sensors) == TEMP_SENSOR_COUNT); @@ -216,3 +218,12 @@ void board_process_wake_events(uint32_t active_wake_events) else gpio_set_level(GPIO_PCH_WAKE_L, 1); } + +/** + * Board-specific g781 power state. + */ +int board_g781_has_power(void) +{ + return gpio_get_level(GPIO_PP3300_DX_EN); +} + diff --git a/board/wolf/board.h b/board/wolf/board.h index ef04274398..5b208bd50c 100644 --- a/board/wolf/board.h +++ b/board/wolf/board.h @@ -10,6 +10,10 @@ /* Optional features */ #define CONFIG_BACKLIGHT_X86 +#define CONFIG_BATTERY_SMART +#define CONFIG_BOARD_VERSION +#define CONFIG_CHARGER +#define CONFIG_CHARGER_BQ24707A #define CONFIG_CHIPSET_HASWELL #define CONFIG_CHIPSET_X86 #define CONFIG_EXTPOWER_GPIO @@ -20,6 +24,7 @@ #define CONFIG_PWM_FAN #define CONFIG_TEMP_SENSOR #define CONFIG_UART_HOST 2 +#define CONFIG_TEMP_SENSOR_G781 #define CONFIG_USB_PORT_POWER_DUMB #define CONFIG_WIRELESS @@ -124,8 +129,8 @@ enum gpio_signal { GPIO_PCH_RTCRST_L, /* Not supposed to be here */ GPIO_PCH_SRTCRST_L, /* Not supposed to be here */ - BAT_LED0_L, /* Battery charging LED - Blue */ - BAT_LED1_L, /* Battery charging LED - Amber */ + GPIO_BAT_LED0_L, /* Battery charging LED - Blue */ + GPIO_BAT_LED1_L, /* Battery charging LED - Amber */ /* Number of GPIOs; not an actual GPIO */ GPIO_COUNT @@ -149,11 +154,13 @@ enum x86_signal { /* Charger module */ #define CONFIG_CHARGER_SENSE_RESISTOR 10 /* Charge sense resistor, mOhm */ #define CONFIG_CHARGER_SENSE_RESISTOR_AC 10 /* Input sensor resistor, mOhm */ -#define CONFIG_CHARGER_INPUT_CURRENT 3078 /* mA, 90% of a 65W adapter at 19V */ +/*FIXME needed to be checked, use the same as Peppy*/ +#define CONFIG_CHARGER_INPUT_CURRENT 3078 /* mA, need be checked */ enum adc_channel { /* EC internal die temperature in degrees K. */ ADC_CH_EC_TEMP = 0, + /* HEY: Be prepared to read this (ICMNT). */ /* Charger current in mA. */ ADC_CH_CHARGER_CURRENT, @@ -162,17 +169,22 @@ enum adc_channel { }; enum temp_sensor_id { - /* HEY - need two I2C sensor values, and PECI should really be first */ - + /* CPU die temperature via PECI */ + TEMP_SENSOR_CPU_PECI = 0, /* EC internal temperature sensor */ TEMP_SENSOR_EC_INTERNAL, - /* CPU die temperature via PECI */ - TEMP_SENSOR_CPU_PECI, + /* G781 internal and external sensors */ + TEMP_SENSOR_I2C_G781_INTERNAL, + TEMP_SENSOR_I2C_G781_EXTERNAL, TEMP_SENSOR_COUNT }; -/* HEY: The below stuff is for Link. Pick a different pin for Wolf */ +/** + * Board-specific g781 power state. + */ +int board_g781_has_power(void); + /* Target value for BOOTCFG. This is set to PE2/USB1_CTL1, which has an external * pullup. If this signal is pulled to ground when the EC boots, the EC will get * into the boot loader and we can recover bricked EC. */ @@ -183,6 +195,7 @@ enum temp_sensor_id { #define WIRELESS_GPIO_WWAN GPIO_PP3300_LTE_EN #define WIRELESS_GPIO_WLAN_POWER GPIO_PP3300_WLAN_EN + #endif /* !__ASSEMBLER__ */ #endif /* __BOARD_H */ diff --git a/board/wolf/ec.tasklist b/board/wolf/ec.tasklist index 848b56830c..40d5ec4f60 100644 --- a/board/wolf/ec.tasklist +++ b/board/wolf/ec.tasklist @@ -19,7 +19,7 @@ #define CONFIG_TASK_LIST \ TASK_ALWAYS(HOOKS, hook_task, NULL, TASK_STACK_SIZE) \ TASK_NOTEST(VBOOTHASH, vboot_hash_task, NULL, LARGER_TASK_STACK_SIZE) \ - /* HEY: TASK_ALWAYS(CHARGER, charger_task, NULL, TASK_STACK_SIZE) */ \ + TASK_ALWAYS(CHARGER, charger_task, NULL, TASK_STACK_SIZE) \ TASK_NOTEST(THERMAL, thermal_task, NULL, TASK_STACK_SIZE) \ TASK_NOTEST(CHIPSET, chipset_task, NULL, TASK_STACK_SIZE) \ TASK_NOTEST(KEYPROTO, keyboard_protocol_task, NULL, TASK_STACK_SIZE) \ |