From b013e98df062ff8b65821f8b82558170a9ebbe97 Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Thu, 26 Jan 2017 10:58:15 -0600 Subject: [PATCH] UPSTREAM: google/jecht: Fix LED for guado/rikku variants When guado/rikku/tidus were rolled into jecht, an error was made in set_power_led() as guado/rikku set the polarity differently than tidus. Fix the power LED for guado/rikku by setting the polarity correctly. Test: boot guado/rikku and observe proper function of power LED under S0, S3, and S5 power states. BUG=none BRANCH=none TEST=none Change-Id: Ibd9e844d796709ce93b275eb0c06c296ef7ed95f Signed-off-by: Patrick Georgi Original-Commit-Id: aaa4ae766d6bd731247c2b8bd009d1018136494f Original-Change-Id: I23072ac60bc9683776f748ca1326d98257c3c54f Original-Signed-off-by: Matt DeVillier Original-Reviewed-on: https://review.coreboot.org/18249 Original-Tested-by: build bot (Jenkins) Original-Reviewed-by: Martin Roth Reviewed-on: https://chromium-review.googlesource.com/438058 --- src/mainboard/google/jecht/led.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/mainboard/google/jecht/led.c b/src/mainboard/google/jecht/led.c index 50cf32e3e1..286b65e542 100644 --- a/src/mainboard/google/jecht/led.c +++ b/src/mainboard/google/jecht/led.c @@ -19,10 +19,18 @@ void set_power_led(int state) { + int polarity; + + if (IS_ENABLED(CONFIG_BOARD_GOOGLE_TIDUS)) { + polarity = state == LED_OFF ? 0x00 : 0x01; + } else { + polarity = state == LED_BLINK ? 0x01 : 0x00; + } + it8772f_gpio_led(IT8772F_GPIO_DEV, 1, /* set */ 0x01, /* select */ - state == LED_OFF ? 0x00 : 0x01, /* polarity */ + polarity, /* polarity */ state == LED_BLINK ? 0x01 : 0x00, /* pullup/pulldown */ 0x01, /* output */ state == LED_BLINK ? 0x00 : 0x01, /* I/O function */