Andrey Petrov (andrey.petrov@intel.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14254
-gerrit
commit b891643404748f8a1d1c6589eddebc416d15ffdd Author: Bora Guvendik bora.guvendik@intel.com Date: Mon Apr 4 17:53:21 2016 -0700
soc/intel/apollolake: Enable TPM in bootblock stage
Configure gpio FST_SPI_CS2_N before verstage so that tpm can be accessed.
Change-Id: I238bf1cd508880b686f0625f28175a80de450971 Signed-off-by: Andrey Petrov andrey.petrov@intel.com --- src/mainboard/intel/apollolake_rvp/Makefile.inc | 3 +++ src/mainboard/intel/apollolake_rvp/bootblock.c | 30 +++++++++++++++++++++++++ 2 files changed, 33 insertions(+)
diff --git a/src/mainboard/intel/apollolake_rvp/Makefile.inc b/src/mainboard/intel/apollolake_rvp/Makefile.inc index e69de29..b2350b9 100644 --- a/src/mainboard/intel/apollolake_rvp/Makefile.inc +++ b/src/mainboard/intel/apollolake_rvp/Makefile.inc @@ -0,0 +1,3 @@ +bootblock-$(CONFIG_LPC_TPM) += bootblock.c + + diff --git a/src/mainboard/intel/apollolake_rvp/bootblock.c b/src/mainboard/intel/apollolake_rvp/bootblock.c new file mode 100644 index 0000000..c2cbf3f --- /dev/null +++ b/src/mainboard/intel/apollolake_rvp/bootblock.c @@ -0,0 +1,30 @@ +/* + * This file is part of the coreboot project. + * + * Copyright (C) 2016 Intel Corp. + * + * 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; either version 2 of the License, or + * (at your option) any later version. + */ + +#include <bootblock_common.h> +#include <soc/gpio.h> +#include <soc/tpm.h> + +static const struct pad_config tpm_spi_configs[] = { + PAD_CFG_NF(GPIO_106, NATIVE, DEEP, NF3), /* FST_SPI_CS2_N */ +}; + +void tpm_enable(void) +{ + /* Configure gpios */ + gpio_configure_pads(tpm_spi_configs, ARRAY_SIZE(tpm_spi_configs)); + +} + +void bootblock_mainboard_init(void) { + if (IS_ENABLED(CONFIG_LPC_TPM)) + tpm_enable(); +}