summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Huang <David.Huang@quantatw.com>2015-05-07 19:04:50 +0800
committerChromeOS Commit Bot <chromeos-commit-bot@chromium.org>2015-05-08 08:18:44 +0000
commitca84aca581340ee4ff12a1dbf504d8b03b8489ee (patch)
treea159337c2bd7203f26e8d73e7af3b8aac7818e1b
parentd8e8c6f5ac77a67533b18e3862fdbd4d69c5a7b4 (diff)
downloadchrome-ec-ca84aca581340ee4ff12a1dbf504d8b03b8489ee.tar.gz
Modify LED control for Power LED
Modify LED control for Power LED control is defferent with Battery LED. BRANCH=gandof BUG=chrome-os-partner:39860 TEST=Power on to check power LED and battery LED status. Change-Id: I71a43b513cdd05da9d8e207286a9b19ea56df931 Signed-off-by: David Huang <David.Huang@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/269868 Reviewed-by: Mohammed Habibulla <moch@google.com> Commit-Queue: David Wu <david_wu@quantatw.com>
-rw-r--r--board/gandof/gpio.inc4
-rw-r--r--board/gandof/led.c47
2 files changed, 32 insertions, 19 deletions
diff --git a/board/gandof/gpio.inc b/board/gandof/gpio.inc
index 1e5028002b..8dabff2d19 100644
--- a/board/gandof/gpio.inc
+++ b/board/gandof/gpio.inc
@@ -87,8 +87,8 @@ GPIO(PCH_SRTCRST_L, F, 7, GPIO_ODR_HIGH, NULL) /* Not supposed to be here
GPIO(BAT_LED0_L, N, 6, GPIO_ODR_HIGH, NULL) /* Battery charging LED - blue */
GPIO(BAT_LED1_L, N, 4, GPIO_ODR_HIGH, NULL) /* Battery charging LED - orange */
-GPIO(PWR_LED0_L, D, 0, GPIO_ODR_HIGH, NULL) /* Power LED - blue */
-GPIO(PWR_LED1_L, D, 1, GPIO_ODR_HIGH, NULL) /* Power LED - orange */
+GPIO(PWR_LED0_L, D, 0, GPIO_OUT_LOW, NULL) /* Power LED - blue */
+GPIO(PWR_LED1_L, D, 1, GPIO_OUT_LOW, NULL) /* Power LED - orange */
ALTERNATE(A, 0x03, 1, MODULE_UART, GPIO_PULL_UP) /* UART0 */
ALTERNATE(B, 0x04, 3, MODULE_I2C, 0) /* I2C0 SCL */
diff --git a/board/gandof/led.c b/board/gandof/led.c
index 4835404eb7..571a7265c7 100644
--- a/board/gandof/led.c
+++ b/board/gandof/led.c
@@ -38,26 +38,24 @@ const enum ec_led_id supported_led_ids[] = {
const int supported_led_ids_count = ARRAY_SIZE(supported_led_ids);
-static int gandof_led_set_gpio(enum led_color color,
- enum gpio_signal gpio_led_blue_l,
- enum gpio_signal gpio_led_amber_l)
+static int gandof_led_set_color_battery(enum led_color color)
{
switch (color) {
case LED_OFF:
- gpio_set_level(gpio_led_blue_l, 1);
- gpio_set_level(gpio_led_amber_l, 1);
+ gpio_set_level(GPIO_BAT_LED0_L, 1);
+ gpio_set_level(GPIO_BAT_LED1_L, 1);
break;
case LED_BLUE:
- gpio_set_level(gpio_led_blue_l, 0);
- gpio_set_level(gpio_led_amber_l, 1);
+ gpio_set_level(GPIO_BAT_LED0_L, 0);
+ gpio_set_level(GPIO_BAT_LED1_L, 1);
break;
case LED_AMBER:
- gpio_set_level(gpio_led_blue_l, 1);
- gpio_set_level(gpio_led_amber_l, 0);
+ gpio_set_level(GPIO_BAT_LED0_L, 1);
+ gpio_set_level(GPIO_BAT_LED1_L, 0);
break;
case LED_PINK:
- gpio_set_level(gpio_led_blue_l, 0);
- gpio_set_level(gpio_led_amber_l, 0);
+ gpio_set_level(GPIO_BAT_LED0_L, 0);
+ gpio_set_level(GPIO_BAT_LED1_L, 0);
break;
default:
return EC_ERROR_UNKNOWN;
@@ -65,14 +63,29 @@ static int gandof_led_set_gpio(enum led_color color,
return EC_SUCCESS;
}
-static int gandof_led_set_color_battery(enum led_color color)
-{
- return gandof_led_set_gpio(color, GPIO_BAT_LED0_L, GPIO_BAT_LED1_L);
-}
-
static int gandof_led_set_color_power(enum led_color color)
{
- return gandof_led_set_gpio(color, GPIO_PWR_LED0_L, GPIO_PWR_LED1_L);
+ switch (color) {
+ case LED_OFF:
+ gpio_set_level(GPIO_PWR_LED0_L, 0);
+ gpio_set_level(GPIO_PWR_LED1_L, 0);
+ break;
+ case LED_BLUE:
+ gpio_set_level(GPIO_PWR_LED0_L, 1);
+ gpio_set_level(GPIO_PWR_LED1_L, 0);
+ break;
+ case LED_AMBER:
+ gpio_set_level(GPIO_PWR_LED0_L, 0);
+ gpio_set_level(GPIO_PWR_LED1_L, 1);
+ break;
+ case LED_PINK:
+ gpio_set_level(GPIO_PWR_LED0_L, 1);
+ gpio_set_level(GPIO_PWR_LED1_L, 1);
+ break;
+ default:
+ return EC_ERROR_UNKNOWN;
+ }
+ return EC_SUCCESS;
}
static int gandof_led_set_color(enum ec_led_id led_id, enum led_color color)