2015-12-25 08:15:41 +01:00
|
|
|
/*
|
|
|
|
* 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"
|
|
|
|
|
2016-12-07 00:59:23 +01:00
|
|
|
void set_power_led(int state)
|
2015-12-25 08:15:41 +01:00
|
|
|
{
|
2017-01-26 17:58:15 +01:00
|
|
|
int polarity;
|
|
|
|
|
|
|
|
if (IS_ENABLED(CONFIG_BOARD_GOOGLE_TIDUS)) {
|
|
|
|
polarity = state == LED_OFF ? 0x00 : 0x01;
|
|
|
|
} else {
|
|
|
|
polarity = state == LED_BLINK ? 0x01 : 0x00;
|
|
|
|
}
|
|
|
|
|
2016-12-07 00:59:23 +01:00
|
|
|
it8772f_gpio_led(IT8772F_GPIO_DEV,
|
2016-12-18 00:13:23 +01:00
|
|
|
1, /* set */
|
|
|
|
0x01, /* select */
|
2017-01-26 17:58:15 +01:00
|
|
|
polarity, /* polarity */
|
2016-12-07 00:59:23 +01:00
|
|
|
state == LED_BLINK ? 0x01 : 0x00, /* pullup/pulldown */
|
2016-12-18 00:13:23 +01:00
|
|
|
0x01, /* output */
|
2016-12-07 00:59:23 +01:00
|
|
|
state == LED_BLINK ? 0x00 : 0x01, /* I/O function */
|
|
|
|
SIO_GPIO_BLINK_GPIO10,
|
|
|
|
IT8772F_GPIO_BLINK_FREQUENCY_1_HZ);
|
2015-12-25 08:15:41 +01:00
|
|
|
}
|