google/reef: Configure NFC gpios correctly before entering sleep

Before entering sleep, ensure that the NFC gpios are configured
correctly to avoid leakage.

BUG=chrome-os-partner:56281

Change-Id: I2bb2e7ba468df445aa5f6c2b22ae0a74fcaa44f6
Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/16243
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
Furquan Shaikh 2016-08-17 16:18:05 -07:00 committed by Martin Roth
parent cb6096d71d
commit d3d77beffa
2 changed files with 10 additions and 0 deletions

View File

@ -350,6 +350,12 @@ static const struct pad_config early_gpio_table[] = {
PAD_CFG_NF(GPIO_129, UP_2K, DEEP, NF1), /* LPSS_I2C2_SCL */
};
/* GPIO settings before entering sleep. */
static const struct pad_config sleep_gpio_table[] = {
PAD_CFG_GPO(GPIO_150, 0, DEEP), /* NFC_RESET_ODL */
PAD_CFG_GPI_APIC_LOW(GPIO_20, NONE, DEEP), /* NFC_INT_L */
};
/*
* The proto boards didn't have memory SKU pins, but the same ones can be
* utilized as post proto boards because the pins used were never connected

View File

@ -19,7 +19,9 @@
#include <ec/google/chromeec/smm.h>
#include <soc/pm.h>
#include <soc/smm.h>
#include <soc/gpio.h>
#include "ec.h"
#include "gpio.h"
void mainboard_smi_gpi_handler(const struct gpi_status *sts)
{
@ -29,6 +31,8 @@ void mainboard_smi_gpi_handler(const struct gpi_status *sts)
void mainboard_smi_sleep(u8 slp_typ)
{
gpio_configure_pads(sleep_gpio_table, ARRAY_SIZE(sleep_gpio_table));
if (slp_typ == ACPI_S3)
enable_gpe(GPIO_TIER_1_SCI);