coreboot-kgpe-d16/src/mainboard/google/jecht/led.c
Matt DeVillier aaa4ae766d 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.

Change-Id: I23072ac60bc9683776f748ca1326d98257c3c54f
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/18249
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>
2017-02-04 23:15:12 +01:00

39 lines
1.1 KiB
C

/*
* This file is part of the coreboot project.
*
* Copyright (C) 2015 Google Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <types.h>
#include <superio/ite/it8772f/it8772f.h>
#include "onboard.h"
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 */
polarity, /* polarity */
state == LED_BLINK ? 0x01 : 0x00, /* pullup/pulldown */
0x01, /* output */
state == LED_BLINK ? 0x00 : 0x01, /* I/O function */
SIO_GPIO_BLINK_GPIO10,
IT8772F_GPIO_BLINK_FREQUENCY_1_HZ);
}