summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjohnwc_yeh <johnwc_yeh@compal.corp-partner.google.com>2022-08-16 16:49:50 +0800
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-08-31 05:01:13 +0000
commit4b97bd83ad39183d645702c0fe80a3b46aad432c (patch)
tree205260192064f5dcad9148c0bfd529d7913f6713
parent6ef60109477a09eb966813776a9fa847be6224f3 (diff)
downloadchrome-ec-4b97bd83ad39183d645702c0fe80a3b46aad432c.tar.gz
Xivu: Implement correct LED behavior
Implement LED behavior. Power LED: Discharge in S0 : White on Discharge in S3 : Blinking White, 1sec on /3sec off Discharge in S5 : Off Charge LED: Charge : Amber on Full charge : White on Battery Low(0~10%) in S0 : Blinking Amber, 1sec on /3sec off Battery Low(0~10%) in S3 : Blinking White, 1sec on /3sec off Battery Low(0~10%) in S5 : Off Battery Error in S0 : Blinking Amber, 1sec on /1sec off Battery Error in S3 : Blinking White, 1sec on /3sec off Battery Error in S5 : Off BUG=b:237224850 BRANCH=none TEST=zmake build xivu Signed-off-by: johnwc_yeh <johnwc_yeh@compal.corp-partner.google.com> Change-Id: I759127464006f60507479185a9ac4c8fe30ae5bf Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3833265 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Tested-by: SamSP Liu <samsp_liu2@compal.corp-partner.google.com> Reviewed-by: SamSP Liu <samsp_liu2@compal.corp-partner.google.com>
-rw-r--r--zephyr/projects/nissa/xivu/led_pins.dts45
-rw-r--r--zephyr/projects/nissa/xivu/led_policy.dts218
2 files changed, 42 insertions, 221 deletions
diff --git a/zephyr/projects/nissa/xivu/led_pins.dts b/zephyr/projects/nissa/xivu/led_pins.dts
index e44b9d24f9..fb0a6aef73 100644
--- a/zephyr/projects/nissa/xivu/led_pins.dts
+++ b/zephyr/projects/nissa/xivu/led_pins.dts
@@ -30,50 +30,33 @@
pwm-led-pins {
compatible = "cros-ec,pwm-led-pins";
- color_off_left: color-off-left {
+ color_off: color-off {
led-color = "LED_OFF";
- led-id = "EC_LED_ID_LEFT_LED";
- led-pins = <&pwm_led_y_c1 0>,
- <&pwm_led_w_c1 0>;
- };
-
- color_off_right: color-off-right {
- led-color = "LED_OFF";
- led-id = "EC_LED_ID_RIGHT_LED";
+ led-id = "EC_LED_ID_BATTERY_LED";
led-pins = <&pwm_led_y_c0 0>,
- <&pwm_led_w_c0 0>;
- };
-
- color_amber_left: color-amber-left {
- led-color = "LED_AMBER";
- led-id = "EC_LED_ID_LEFT_LED";
- br-color = "EC_LED_COLOR_AMBER";
- led-pins = <&pwm_led_y_c1 1>,
+ <&pwm_led_y_c1 0>,
+ <&pwm_led_w_c0 0>,
<&pwm_led_w_c1 0>;
};
- color_amber_right: color-amber-right {
+ color_amber: color-amber {
led-color = "LED_AMBER";
- led-id = "EC_LED_ID_RIGHT_LED";
+ led-id = "EC_LED_ID_BATTERY_LED";
br-color = "EC_LED_COLOR_AMBER";
led-pins = <&pwm_led_y_c0 1>,
- <&pwm_led_w_c0 0>;
- };
-
- color_white_left: color-white-left {
- led-color = "LED_WHITE";
- led-id = "EC_LED_ID_LEFT_LED";
- br-color = "EC_LED_COLOR_WHITE";
- led-pins = <&pwm_led_y_c1 0>,
- <&pwm_led_w_c1 1>;
+ <&pwm_led_y_c1 1>,
+ <&pwm_led_w_c0 0>,
+ <&pwm_led_w_c1 0>;
};
- color_white_right: color-white-right {
+ color_white: color-white {
led-color = "LED_WHITE";
- led-id = "EC_LED_ID_RIGHT_LED";
+ led-id = "EC_LED_ID_BATTERY_LED";
br-color = "EC_LED_COLOR_WHITE";
led-pins = <&pwm_led_y_c0 0>,
- <&pwm_led_w_c0 1>;
+ <&pwm_led_y_c1 0>,
+ <&pwm_led_w_c0 1>,
+ <&pwm_led_w_c1 1>;
};
};
};
diff --git a/zephyr/projects/nissa/xivu/led_policy.dts b/zephyr/projects/nissa/xivu/led_policy.dts
index 492513a8d6..5bb9869ba6 100644
--- a/zephyr/projects/nissa/xivu/led_policy.dts
+++ b/zephyr/projects/nissa/xivu/led_policy.dts
@@ -4,59 +4,11 @@
led-colors {
compatible = "cros-ec,led-policy";
- power-state-charge-left {
+ power-state-charge {
charge-state = "PWR_STATE_CHARGE";
- charge-port = <1>; /* Left port */
- /* Turn off the right LED */
color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED to Amber */
- color-1 {
- led-color = <&color_amber_left>;
- };
- };
-
- power-state-charge-right {
- charge-state = "PWR_STATE_CHARGE";
- charge-port = <0>; /* Right port */
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED to Amber */
- color-1 {
- led-color = <&color_amber_right>;
- };
- };
-
- power-state-near-full-left {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
- charge-port = <1>; /* Left port */
-
- /* Turn off the right LED */
- color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED to White */
- color-1 {
- led-color = <&color_white_left>;
- };
- };
-
- power-state-near-full-right {
- charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
- charge-port = <0>; /* Right port */
-
- /* Turn off the left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED to White */
- color-1 {
- led-color = <&color_white_right>;
+ led-color = <&color_amber>;
};
};
@@ -64,13 +16,8 @@
charge-state = "PWR_STATE_DISCHARGE";
chipset-state = "POWER_S0";
- /* Left LED to White */
color-0 {
- led-color = <&color_white_left>;
- };
- /* Right LED to White */
- color-1 {
- led-color = <&color_white_right>;
+ led-color = <&color_white>;
};
};
@@ -80,13 +27,11 @@
/* White 1 sec, off 3 sec */
color-0 {
- led-color = <&color_white_left>;
- led-color = <&color_white_right>;
+ led-color = <&color_white>;
period-ms = <1000>;
};
color-1 {
- led-color = <&color_off_left>;
- led-color = <&color_off_right>;
+ led-color = <&color_off>;
period-ms = <3000>;
};
};
@@ -96,97 +41,48 @@
chipset-state = "POWER_S5";
color-0 {
- led-color = <&color_off_left>;
- };
- color-1 {
- led-color = <&color_off_right>;
+ led-color = <&color_off>;
};
};
- power-state-charge-s0-batt-low-left {
- charge-state = "PWR_STATE_CHARGE";
- charge-port = <1>; /* Left port */
- chipset-state = "POWER_S0";
- /* Battery percent range (>= Empty, <= Low) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
+ power-state-near-full {
+ charge-state = "PWR_STATE_CHARGE_NEAR_FULL";
- /* Turn off the right LED */
color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED - Amber 1 sec, off 3 sec */
- color-1 {
- led-color = <&color_amber_left>;
- period-ms = <1000>;
- };
- color-2 {
- led-color = <&color_off_left>;
- period-ms = <3000>;
+ led-color = <&color_white>;
};
};
- power-state-charge-s0-batt-low-right {
+ power-state-charge-s0-batt-low {
charge-state = "PWR_STATE_CHARGE";
- charge-port = <0>; /* Right port */
chipset-state = "POWER_S0";
/* Battery percent range (>= Empty, <= Low) */
batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
- /* Turn off the Left LED */
+ /* Amber 1 sec, off 3 sec */
color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED - Amber 1 sec, off 3 sec */
- color-1 {
- led-color = <&color_amber_right>;
+ led-color = <&color_amber>;
period-ms = <1000>;
};
- color-2 {
- led-color = <&color_off_right>;
- period-ms = <3000>;
- };
- };
-
- power-state-charge-s3-batt-low-left {
- charge-state = "PWR_STATE_CHARGE";
- charge-port = <1>; /* Left port */
- chipset-state = "POWER_S3";
- /* Battery percent range (>= Empty, <= Low) */
- batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
-
- /* Turn off the right LED */
- color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED -White 1 sec, off 3 sec */
color-1 {
- led-color = <&color_white_left>;
- period-ms = <1000>;
- };
- color-2 {
- led-color = <&color_off_left>;
+ led-color = <&color_off>;
period-ms = <3000>;
};
};
- power-state-charge-s3-batt-low-right {
+ power-state-charge-s3-batt-low {
charge-state = "PWR_STATE_CHARGE";
- charge-port = <0>; /* Right port */
chipset-state = "POWER_S3";
/* Battery percent range (>= Empty, <= Low) */
batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
- /* Turn off the Left LED */
+ /* White 1 sec, off 3 sec */
color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED -White 1 sec, off 3 sec */
- color-1 {
- led-color = <&color_white_right>;
+ led-color = <&color_white>;
period-ms = <1000>;
};
- color-2 {
- led-color = <&color_off_right>;
+ color-1 {
+ led-color = <&color_off>;
period-ms = <3000>;
};
};
@@ -198,89 +94,34 @@
batt-lvl = <BATTERY_LEVEL_EMPTY BATTERY_LEVEL_LOW>;
color-0 {
- led-color = <&color_off_left>;
- };
- color-1 {
- led-color = <&color_off_right>;
+ led-color = <&color_off>;
};
};
- power-state-error-s0-left {
+ power-state-error-s0 {
charge-state = "PWR_STATE_ERROR";
- charge-port = <1>; /* Left port */
chipset-state = "POWER_S0";
-
- /* Turn off the right LED */
+ /* Amber 1 sec, off 1 sec */
color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED -Amber 1 sec, off 1 sec */
- color-1 {
- led-color = <&color_amber_left>;
+ led-color = <&color_amber>;
period-ms = <1000>;
};
- color-2 {
- led-color = <&color_off_left>;
- period-ms = <1000>;
- };
- };
-
- power-state-error-s0-right {
- charge-state = "PWR_STATE_ERROR";
- charge-port = <0>; /* Right port */
- chipset-state = "POWER_S0";
-
- /* Turn off the Left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED -Amber 1 sec, off 1 sec */
color-1 {
- led-color = <&color_amber_right>;
- period-ms = <1000>;
- };
- color-2 {
- led-color = <&color_off_right>;
+ led-color = <&color_off>;
period-ms = <1000>;
};
};
- power-state-error-s3-left {
+ power-state-error-s3 {
charge-state = "PWR_STATE_ERROR";
- charge-port = <1>; /* Left port */
chipset-state = "POWER_S3";
-
- /* Turn off the right LED */
+ /* White 1 sec, off 3 sec */
color-0 {
- led-color = <&color_off_right>;
- };
- /* Left LED -White 1 sec, off 3 sec */
- color-1 {
- led-color = <&color_white_left>;
+ led-color = <&color_white>;
period-ms = <1000>;
};
- color-2 {
- led-color = <&color_off_left>;
- period-ms = <3000>;
- };
- };
-
- power-state-error-s3-right {
- charge-state = "PWR_STATE_ERROR";
- charge-port = <0>; /* Right port */
- chipset-state = "POWER_S3";
-
- /* Turn off the Left LED */
- color-0 {
- led-color = <&color_off_left>;
- };
- /* Right LED -White 1 sec, off 3 sec */
color-1 {
- led-color = <&color_white_right>;
- period-ms = <1000>;
- };
- color-2 {
- led-color = <&color_off_right>;
+ led-color = <&color_off>;
period-ms = <3000>;
};
};
@@ -290,10 +131,7 @@
chipset-state = "POWER_S5";
color-0 {
- led-color = <&color_off_left>;
- };
- color-1 {
- led-color = <&color_off_right>;
+ led-color = <&color_off>;
};
};
};