[coreboot-gerrit] Patch set updated for coreboot: mainboard/intel/amenia: Configure PERST_0 pin and GNVS
Vaibhav Shankar (vaibhav.shankar@intel.com)
gerrit at coreboot.org
Fri Sep 2 04:05:04 CEST 2016
Vaibhav Shankar (vaibhav.shankar at intel.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/16350
-gerrit
commit 2e40d4fa7cc583d67685e4f516b1dc17b656ca3a
Author: Vaibhav Shankar <vaibhav.shankar at intel.com>
Date: Fri Aug 26 19:10:21 2016 -0700
mainboard/intel/amenia: Configure PERST_0 pin and GNVS
Configured PERST_0 and assigned its address to GNVS varibale.
BUG=chrome-os-partner:55877
Change-Id: I39b4d8bba92f352ae121c7552f58480295b48aef
Signed-off-by: Vaibhav Shankar <vaibhav.shankar at intel.com>
---
src/mainboard/intel/amenia/gpio.h | 2 +-
src/mainboard/intel/amenia/mainboard.c | 24 ++++++++++++++++++++++++
2 files changed, 25 insertions(+), 1 deletion(-)
diff --git a/src/mainboard/intel/amenia/gpio.h b/src/mainboard/intel/amenia/gpio.h
index 4a4d08f..3eb4103 100644
--- a/src/mainboard/intel/amenia/gpio.h
+++ b/src/mainboard/intel/amenia/gpio.h
@@ -223,7 +223,7 @@ static const struct pad_config gpio_table[] = {
PAD_NC(GPIO_119, DN_20K), /* GP_SSP_2_FS0 */
PAD_NC(GPIO_120, DN_20K), /* GP_SSP_2_FS1 */
PAD_NC(GPIO_121, DN_20K), /* GP_SSP_2_FS2 */
- PAD_NC(GPIO_122, DN_20K), /* GP_SSP_2_RXD */
+ PAD_CFG_GPO(GPIO_122, 0, DEEP), /* WIFI PERST_0 */
PAD_NC(GPIO_123, DN_20K), /* GP_SSP_2_TXD */
/** end of North West Community */
/** North Community */
diff --git a/src/mainboard/intel/amenia/mainboard.c b/src/mainboard/intel/amenia/mainboard.c
index 6ec5b98..bbf6381 100644
--- a/src/mainboard/intel/amenia/mainboard.c
+++ b/src/mainboard/intel/amenia/mainboard.c
@@ -19,9 +19,14 @@
#include <console/console.h>
#include <device/device.h>
#include <soc/nhlt.h>
+#include <soc/nvs.h>
+#include <cbmem.h>
#include "ec.h"
#include "gpio.h"
+#define PERST_0 GPIO_122
+
+
static void mainboard_init(void *chip_info)
{
gpio_configure_pads(gpio_table, ARRAY_SIZE(gpio_table));
@@ -67,7 +72,26 @@ static unsigned long mainboard_write_acpi_tables(
static void mainboard_enable(device_t dev)
{
+ global_nvs_t *gnvs;
+
dev->ops->write_acpi_tables = mainboard_write_acpi_tables;
+ /* assign PERST_0 address to GNVS */
+ gnvs = (global_nvs_t *)cbmem_find(CBMEM_ID_ACPI_GNVS);
+
+ if (!gnvs) {
+ printk(BIOS_ERR, "PERST GNVS not located \n");
+ return;
+ }
+
+ if (!gnvs) {
+ gnvs = cbmem_add(CBMEM_ID_ACPI_GNVS, sizeof (*gnvs));
+ printk(BIOS_ERR, "Created GNVS for PERST \n");
+ }
+
+ if(gnvs) {
+ gnvs->prad = PAD_IOSF_MMIO(NW, PERST_0 );
+ printk(BIOS_ERR, "Assigned PERST address to GNVS \n");
+ }
}
struct chip_operations mainboard_ops = {
More information about the coreboot-gerrit
mailing list