From 0ba1276f96b1674aa5cb9bc436eb2f16f264df78 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Wed, 24 Jun 2020 09:16:14 -0600 Subject: [PATCH] oryp6: fix battery LEDs --- src/board/system76/oryp6/board.c | 9 ++++----- src/board/system76/oryp6/gpio.c | 4 ++-- src/board/system76/oryp6/include/board/gpio.h | 2 +- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/board/system76/oryp6/board.c b/src/board/system76/oryp6/board.c index f6a57a5..f749286 100644 --- a/src/board/system76/oryp6/board.c +++ b/src/board/system76/oryp6/board.c @@ -65,20 +65,19 @@ void board_event(void) { } if (main_cycle == 0) { - // Battery charging LED is inverted on the oryp6 - if (acin) { + if (!acin) { // Discharging (no AC adapter) - gpio_set(&LED_BAT_CHG_N, true); + gpio_set(&LED_BAT_CHG, false); gpio_set(&LED_BAT_FULL, false); } else if (battery_current == 0) { // Fully charged // TODO: turn off charger - gpio_set(&LED_BAT_CHG_N, true); + gpio_set(&LED_BAT_CHG, false); gpio_set(&LED_BAT_FULL, true); } else { // Charging // TODO: detect no battery connected - gpio_set(&LED_BAT_CHG_N, false); + gpio_set(&LED_BAT_CHG, true); gpio_set(&LED_BAT_FULL, false); } diff --git a/src/board/system76/oryp6/gpio.c b/src/board/system76/oryp6/gpio.c index 81f635e..c0a7953 100644 --- a/src/board/system76/oryp6/gpio.c +++ b/src/board/system76/oryp6/gpio.c @@ -14,7 +14,7 @@ struct Gpio __code EC_EN = GPIO(B, 6); // renamed to SUSBC_EN struct Gpio __code EC_RSMRST_N = GPIO(E, 5); struct Gpio __code GC6_FB_EN = GPIO(J, 7); struct Gpio __code LED_ACIN = GPIO(C, 7); -struct Gpio __code LED_BAT_CHG_N = GPIO(H, 5); +struct Gpio __code LED_BAT_CHG = GPIO(H, 5); struct Gpio __code LED_BAT_FULL = GPIO(J, 0); struct Gpio __code LED_PWR = GPIO(D, 0); struct Gpio __code LID_SW_N = GPIO(B, 1); @@ -49,7 +49,7 @@ void gpio_init() { GPDRE = 0x08; GPDRF = 0x40; GPDRG = 0x40; - GPDRH = 0x20; + GPDRH = 0x00; GPDRI = 0x20; GPDRJ = 0x02; diff --git a/src/board/system76/oryp6/include/board/gpio.h b/src/board/system76/oryp6/include/board/gpio.h index 515400a..76c43e0 100644 --- a/src/board/system76/oryp6/include/board/gpio.h +++ b/src/board/system76/oryp6/include/board/gpio.h @@ -26,7 +26,7 @@ extern struct Gpio __code EC_RSMRST_N; extern struct Gpio __code GC6_FB_EN; extern struct Gpio __code LED_ACIN; extern struct Gpio __code LED_AIRPLANE_N; -extern struct Gpio __code LED_BAT_CHG_N; +extern struct Gpio __code LED_BAT_CHG; extern struct Gpio __code LED_BAT_FULL; extern struct Gpio __code LED_PWR; extern struct Gpio __code LID_SW_N;