Matt DeVillier has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/31110
Change subject: soc/intel/skylake: select FSP_M_XIP if PLATFORM_USES_FSP2_0
......................................................................
soc/intel/skylake: select FSP_M_XIP if PLATFORM_USES_FSP2_0
Select FSP_M_XIP if PLATFORM_USES_FSP2_0, since all SkyKabylake
boards require FSP-M XIP when FSP 2.0 is used, and since not
having it selected results in a non-booting image.
Also, put select FSP_T_XIP if FSP_CAR in proper alphabetical order.
Change-Id: I6d3986eda18297b12490cefb236f5de5faca6550
Signed-off-by: Matt DeVillier <matt.devillier(a)gmail.com>
---
M src/soc/intel/skylake/Kconfig
1 file changed, 2 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/10/31110/1
diff --git a/src/soc/intel/skylake/Kconfig b/src/soc/intel/skylake/Kconfig
index 442b09a..383b397 100644
--- a/src/soc/intel/skylake/Kconfig
+++ b/src/soc/intel/skylake/Kconfig
@@ -28,6 +28,8 @@
select COMMON_FADT
select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
select C_ENVIRONMENT_BOOTBLOCK
+ select FSP_M_XIP if PLATFORM_USES_FSP2_0
+ select FSP_T_XIP if FSP_CAR
select GENERIC_GPIO_LIB
select HAVE_FSP_GOP
select INTEL_DESCRIPTOR_MODE_CAPABLE
@@ -74,7 +76,6 @@
select TSC_MONOTONIC_TIMER
select TSC_SYNC_MFENCE
select UDELAY_TSC
- select FSP_T_XIP if FSP_CAR
config CPU_INTEL_NUM_FIT_ENTRIES
int
--
To view, visit https://review.coreboot.org/c/coreboot/+/31110
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I6d3986eda18297b12490cefb236f5de5faca6550
Gerrit-Change-Number: 31110
Gerrit-PatchSet: 1
Gerrit-Owner: Matt DeVillier <matt.devillier(a)gmail.com>
Gerrit-MessageType: newchange
Werner Zeh has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/30992
Change subject: intel/apollolake: Add IPU to disable_dev function
......................................................................
intel/apollolake: Add IPU to disable_dev function
The SoC has an Image Processing Unit which is located on PCI 00:03.0.
There is a corresponding parameter for FSP which treats enable/disable
of this functionality (IpuEn). Add this device to the disable_dev()
function of the chip so that if this device is disabled in devicetree
the matching FSP parameter will be disabled as well.
Change-Id: I75444bf483de32ba641f76ca50e9744fdce2e726
Signed-off-by: Werner Zeh <werner.zeh(a)siemens.com>
---
M src/soc/intel/apollolake/chip.c
M src/soc/intel/apollolake/include/soc/pci_devs.h
2 files changed, 7 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/92/30992/1
diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c
index b38265f..102ba34 100644
--- a/src/soc/intel/apollolake/chip.c
+++ b/src/soc/intel/apollolake/chip.c
@@ -482,6 +482,9 @@
case PCH_DEVFN_SMBUS:
silconfig->SmbusEnable = 0;
break;
+ case SA_DEVFN_IPU:
+ silconfig->IpuEn = 0;
+ break;
default:
printk(BIOS_WARNING, "PCI:%02x.%01x: Could not disable the device\n",
PCI_SLOT(dev->path.pci.devfn),
diff --git a/src/soc/intel/apollolake/include/soc/pci_devs.h b/src/soc/intel/apollolake/include/soc/pci_devs.h
index ad726f8..363301d 100644
--- a/src/soc/intel/apollolake/include/soc/pci_devs.h
+++ b/src/soc/intel/apollolake/include/soc/pci_devs.h
@@ -45,6 +45,10 @@
#define SA_DEVFN_IGD _SA_DEVFN(IGD)
#define SA_DEV_IGD _SA_DEV(IGD)
+#define SA_DEV_SLOT_IPU 0x03
+#define SA_DEVFN_IPU _SA_DEVFN(IPU)
+#define SA_DEV_IPU _SA_DEV(IPU)
+
/* PCH Devices */
#define PCH_DEV_SLOT_NPK 0x00
--
To view, visit https://review.coreboot.org/c/coreboot/+/30992
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I75444bf483de32ba641f76ca50e9744fdce2e726
Gerrit-Change-Number: 30992
Gerrit-PatchSet: 1
Gerrit-Owner: Werner Zeh <werner.zeh(a)siemens.com>
Gerrit-MessageType: newchange
Werner Zeh has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/30991
Change subject: intel/apollolake: Add fixed resources for VTd to system resources
......................................................................
intel/apollolake: Add fixed resources for VTd to system resources
If the VTd feature is enabled, there will be up to two fixed resources
which are set up by the FSP. Add this resources to the list of system
resources so that the PCI enumerator will know them.
Change-Id: If96fc1c93746e3c7f510e5b3095ea3090e1b8807
Signed-off-by: Werner Zeh <werner.zeh(a)siemens.com>
---
M src/soc/intel/apollolake/systemagent.c
1 file changed, 20 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/91/30991/1
diff --git a/src/soc/intel/apollolake/systemagent.c b/src/soc/intel/apollolake/systemagent.c
index c8f1330..6acc3b5 100644
--- a/src/soc/intel/apollolake/systemagent.c
+++ b/src/soc/intel/apollolake/systemagent.c
@@ -4,6 +4,7 @@
* Copyright (C) 2015 Intel Corp.
* (Written by Andrey Petrov <andrey.petrov(a)intel.com> for Intel Corp.)
* (Written by Alexandru Gagniuc <alexandrux.gagniuc(a)intel.com> for Intel Corp.)
+ * Copyright (C) 2018 Siemens AG
*
* 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
@@ -19,6 +20,7 @@
#include <cpu/cpu.h>
#include <console/console.h>
#include <device/device.h>
+#include <device/pci_ops.h>
#include <fsp/util.h>
#include <intelblocks/systemagent.h>
#include <soc/iomap.h>
@@ -40,6 +42,24 @@
sa_add_fixed_mmio_resources(dev, index, soc_fixed_resources,
ARRAY_SIZE(soc_fixed_resources));
+
+ /* Add VTd resources if VTd is enabled. These resources has been
+ set up by the FSP-S call. */
+ if ((pci_read_config32(dev, CAPID0_A) & VTD_DISABLE))
+ return;
+
+ if (MCHBAR32(GFXVTBAR) & VTBAR_ENABLED) {
+ mmio_resource(dev, *index,
+ (MCHBAR32(GFXVTBAR) & VTBAR_MASK) / KiB,
+ VTBAR_SIZE / KiB);
+ (*index)++;
+ }
+ if (MCHBAR32(DEFVTBAR) & VTBAR_ENABLED) {
+ mmio_resource(dev, *index,
+ (MCHBAR32(DEFVTBAR) & VTBAR_MASK) / KiB,
+ VTBAR_SIZE / KiB);
+ (*index)++;
+ }
}
int soc_get_uncore_prmmr_base_and_mask(uint64_t *prmrr_base,
--
To view, visit https://review.coreboot.org/c/coreboot/+/30991
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: If96fc1c93746e3c7f510e5b3095ea3090e1b8807
Gerrit-Change-Number: 30991
Gerrit-PatchSet: 1
Gerrit-Owner: Werner Zeh <werner.zeh(a)siemens.com>
Gerrit-MessageType: newchange
Werner Zeh has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/30989
Change subject: intelblocks/systemagent: Add ACPI table generation hook
......................................................................
intelblocks/systemagent: Add ACPI table generation hook
In preparation of generating DMAR tables provide the hook in SoC-scope
for the systemagent to write ACPI tables. The complete functionality is
SoC-specific. Therefore event the entry hook is defined as a
weak-function which can be overridden by SoC-code. If the SoC does not
have support for generating DMAR tables this hook will make no harm.
Change-Id: I1333ae2b79f1a855e6f3bb39bf534da170ddc9e1
Signed-off-by: Werner Zeh <werner.zeh(a)siemens.com>
---
M src/soc/intel/common/block/include/intelblocks/acpi.h
M src/soc/intel/common/block/systemagent/systemagent.c
2 files changed, 21 insertions(+), 7 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/89/30989/1
diff --git a/src/soc/intel/common/block/include/intelblocks/acpi.h b/src/soc/intel/common/block/include/intelblocks/acpi.h
index 6b1b9bd..671aabb 100644
--- a/src/soc/intel/common/block/include/intelblocks/acpi.h
+++ b/src/soc/intel/common/block/include/intelblocks/acpi.h
@@ -2,7 +2,7 @@
* This file is part of the coreboot project.
*
* Copyright (C) 2017 Intel Corp.
- * Copyright (C) 2017 Siemens AG
+ * Copyright (C) 2018 Siemens AG
*
* 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
@@ -75,6 +75,11 @@
/* Chipset specific settings for filling up fadt table */
void soc_fill_fadt(acpi_fadt_t *fadt);
+/* Chipset specific settings for filling up dmar table */
+unsigned long sa_write_acpi_tables(struct device *const dev,
+ unsigned long current,
+ struct acpi_rsdp *const rsdp);
+
/* Return the polarity flag for SCI IRQ */
int soc_madt_sci_irq_polarity(int sci);
diff --git a/src/soc/intel/common/block/systemagent/systemagent.c b/src/soc/intel/common/block/systemagent/systemagent.c
index 9608359..7552afe 100644
--- a/src/soc/intel/common/block/systemagent/systemagent.c
+++ b/src/soc/intel/common/block/systemagent/systemagent.c
@@ -2,6 +2,7 @@
* This file is part of the coreboot project.
*
* Copyright (C) 2017-2018 Intel Corporation.
+ * Copyright (C) 2018 Siemens AG
*
* 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
@@ -19,9 +20,9 @@
#include <device/pci.h>
#include <device/pci_ids.h>
#include <intelblocks/systemagent.h>
+#include <intelblocks/acpi.h>
#include <soc/iomap.h>
#include <soc/pci_devs.h>
-#include <soc/systemagent.h>
#include "systemagent_def.h"
/* SoC override function */
@@ -48,6 +49,13 @@
return 0;
}
+__weak unsigned long sa_write_acpi_tables(struct device *const dev,
+ unsigned long current,
+ struct acpi_rsdp *const rsdp)
+{
+ return current;
+}
+
/*
* Add all known fixed MMIO ranges that hang off the host bridge/memory
* controller device.
@@ -278,11 +286,12 @@
}
static struct device_operations systemagent_ops = {
- .read_resources = &systemagent_read_resources,
- .set_resources = &pci_dev_set_resources,
- .enable_resources = &pci_dev_enable_resources,
- .init = soc_systemagent_init,
- .ops_pci = &pci_dev_ops_pci,
+ .read_resources = &systemagent_read_resources,
+ .set_resources = &pci_dev_set_resources,
+ .enable_resources = &pci_dev_enable_resources,
+ .init = soc_systemagent_init,
+ .ops_pci = &pci_dev_ops_pci,
+ .write_acpi_tables = sa_write_acpi_tables,
};
static const unsigned short systemagent_ids[] = {
--
To view, visit https://review.coreboot.org/c/coreboot/+/30989
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I1333ae2b79f1a855e6f3bb39bf534da170ddc9e1
Gerrit-Change-Number: 30989
Gerrit-PatchSet: 1
Gerrit-Owner: Werner Zeh <werner.zeh(a)siemens.com>
Gerrit-MessageType: newchange
Hello Thomas Heijligen, Nico Huber, Patrick Georgi,
I'd like you to do a code review. Please visit
https://review.coreboot.org/c/coreboot/+/31084
to review the following change.
Change subject: vboot: Makefile: Also apply CPPFLAGS include path fixups to ccopts
......................................................................
vboot: Makefile: Also apply CPPFLAGS include path fixups to ccopts
In some cases (e.g. Arm architecture variants), include paths are stuck
into <stage>-generic-ccopts rather than CPPFLAGS_<stage> (in fact, the
whole redundancy between these two is kinda stupid and we should
probably eliminate the latter, but I don't want to get into that right
now). This patch makes sure those paths are also correctly translated
when invoking $(MAKE) for vboot.
Change-Id: I37f09b88e555567590664e0e6fac23c34fd887df
Signed-off-by: Julius Werner <jwerner(a)chromium.org>
---
M src/security/vboot/Makefile.inc
1 file changed, 5 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/84/31084/1
diff --git a/src/security/vboot/Makefile.inc b/src/security/vboot/Makefile.inc
index ae80a02..6c63f7b 100644
--- a/src/security/vboot/Makefile.inc
+++ b/src/security/vboot/Makefile.inc
@@ -81,16 +81,17 @@
romstage-$(CONFIG_FSP2_0_USES_TPM_MRC_HASH) += mrc_cache_hash_tpm.c
+vboot-fixup-includes = $(patsubst -I%,-I$(top)/%,\
+ $(patsubst $(src)/%.h,$(top)/$(src)/%.h,\
+ $(filter-out -I$(obj),$(1))))
# call with $1 = stage name to create rules for building the library
# for the stage and adding it to the stage's set of object files.
define vboot-for-stage
VB2_LIB_$(1) = $(obj)/external/vboot_reference-$(1)/vboot_fw20.a
-VBOOT_CFLAGS_$(1) += $$(patsubst -I%,-I$(top)/%,\
- $$(patsubst $(src)/%.h,$(top)/$(src)/%.h,\
- $$(filter-out -I$(obj), $$(CPPFLAGS_$(1)))))
+VBOOT_CFLAGS_$(1) += $$(call vboot-fixup-includes,$$(CPPFLAGS_$(1)))
VBOOT_CFLAGS_$(1) += $$(CFLAGS_$(1))
-VBOOT_CFLAGS_$(1) += $$($(1)-c-ccopts)
+VBOOT_CFLAGS_$(1) += $$(call vboot-fixup-includes,$$($(1)-c-ccopts))
VBOOT_CFLAGS_$(1) += -I$(abspath $(obj)) -Wno-missing-prototypes
VBOOT_CFLAGS_$(1) += -DVBOOT_DEBUG
--
To view, visit https://review.coreboot.org/c/coreboot/+/31084
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I37f09b88e555567590664e0e6fac23c34fd887df
Gerrit-Change-Number: 31084
Gerrit-PatchSet: 1
Gerrit-Owner: Julius Werner <jwerner(a)chromium.org>
Gerrit-Reviewer: Nico Huber <nico.h(a)gmx.de>
Gerrit-Reviewer: Patrick Georgi <pgeorgi(a)google.com>
Gerrit-Reviewer: Thomas Heijligen <src(a)posteo.de>
Gerrit-MessageType: newchange