Usha P has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/37308 )
Change subject: soc/intel/cannonlake: Refactor pch_early_init() code
......................................................................
soc/intel/cannonlake: Refactor pch_early_init() code
This patch keeps required pch_early_init() function like ABASE programming,
GPE and RTC init into bootblock and moves remaining functions like
TCO configuration and SMBUS init into romstage/pch.c in order to maintain
only required chipset programming for bootblock and verstage.
Renamed the pch_init function to bootblock_pch_init and romstage_pch_init
according to the stage it is defined in.
TEST=Able to build and boot hatch successfully.
Change-Id: Idf7b04edc3fce147f7857561ce7d5b0cd05f43fe
Signed-off-by: Usha P <usha.p(a)intel.com>
---
M src/soc/intel/cannonlake/bootblock/bootblock.c
M src/soc/intel/cannonlake/bootblock/pch.c
M src/soc/intel/cannonlake/include/soc/bootblock.h
M src/soc/intel/cannonlake/include/soc/romstage.h
M src/soc/intel/cannonlake/romstage/Makefile.inc
A src/soc/intel/cannonlake/romstage/pch.c
M src/soc/intel/cannonlake/romstage/romstage.c
7 files changed, 36 insertions(+), 13 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/08/37308/1
diff --git a/src/soc/intel/cannonlake/bootblock/bootblock.c b/src/soc/intel/cannonlake/bootblock/bootblock.c
index 9f85397..08c1242 100644
--- a/src/soc/intel/cannonlake/bootblock/bootblock.c
+++ b/src/soc/intel/cannonlake/bootblock/bootblock.c
@@ -74,5 +74,5 @@
*/
gpi_clear_int_cfg();
report_platform_info();
- pch_early_init();
+ bootblock_pch_init();
}
diff --git a/src/soc/intel/cannonlake/bootblock/pch.c b/src/soc/intel/cannonlake/bootblock/pch.c
index 39433a2..a27b507 100644
--- a/src/soc/intel/cannonlake/bootblock/pch.c
+++ b/src/soc/intel/cannonlake/bootblock/pch.c
@@ -2,7 +2,7 @@
* This file is part of the coreboot project.
*
* Copyright (C) 2014 Google Inc.
- * Copyright (C) 2017-2018 Intel Corporation.
+ * Copyright (C) 2017-2019 Intel Corporation.
*
* 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
@@ -25,8 +25,6 @@
#include <intelblocks/pcr.h>
#include <intelblocks/pmclib.h>
#include <intelblocks/rtc.h>
-#include <intelblocks/smbus.h>
-#include <intelblocks/tco.h>
#include <soc/bootblock.h>
#include <soc/iomap.h>
#include <soc/lpc.h>
@@ -35,7 +33,6 @@
#include <soc/pci_devs.h>
#include <soc/pcr_ids.h>
#include <soc/pm.h>
-#include <soc/smbus.h>
#define PCR_PSF3_TO_SHDW_PMC_REG_BASE_CNP_LP 0x1400
#define PCR_PSF3_TO_SHDW_PMC_REG_BASE_CNP_H 0x0980
@@ -180,7 +177,7 @@
pch_enable_lpc();
}
-void pch_early_init(void)
+void bootblock_pch_init(void)
{
/*
* Enabling ABASE for accessing PM1_STS, PM1_EN, PM1_CNT,
@@ -188,12 +185,6 @@
*/
soc_config_acpibase();
- /* Programming TCO_BASE_ADDRESS and TCO Timer Halt */
- tco_configure();
-
- /* Program SMBUS_BASE_ADDRESS and Enable it */
- smbus_common_init();
-
/* Set up GPE configuration */
pmc_gpe_init();
diff --git a/src/soc/intel/cannonlake/include/soc/bootblock.h b/src/soc/intel/cannonlake/include/soc/bootblock.h
index a5c3c32..efc837e 100644
--- a/src/soc/intel/cannonlake/include/soc/bootblock.h
+++ b/src/soc/intel/cannonlake/include/soc/bootblock.h
@@ -23,7 +23,7 @@
void bootblock_pch_early_init(void);
/* Bootblock post console init programming */
-void pch_early_init(void);
+void bootblock_pch_init(void);
void pch_early_iorange_init(void);
void report_platform_info(void);
diff --git a/src/soc/intel/cannonlake/include/soc/romstage.h b/src/soc/intel/cannonlake/include/soc/romstage.h
index 643105a..ab20ee7 100644
--- a/src/soc/intel/cannonlake/include/soc/romstage.h
+++ b/src/soc/intel/cannonlake/include/soc/romstage.h
@@ -24,6 +24,7 @@
/* Provide a callback to allow mainboard to override the DRAM part number. */
void mainboard_get_dram_part_num(const char **part_num, size_t *len);
void systemagent_early_init(void);
+void romstage_pch_init(void);
/* Board type */
enum board_type {
diff --git a/src/soc/intel/cannonlake/romstage/Makefile.inc b/src/soc/intel/cannonlake/romstage/Makefile.inc
index 33d9629..ff3d73d 100644
--- a/src/soc/intel/cannonlake/romstage/Makefile.inc
+++ b/src/soc/intel/cannonlake/romstage/Makefile.inc
@@ -17,3 +17,4 @@
romstage-y += romstage.c
romstage-y += fsp_params.c
romstage-y += systemagent.c
+romstage-y += pch.c
diff --git a/src/soc/intel/cannonlake/romstage/pch.c b/src/soc/intel/cannonlake/romstage/pch.c
new file mode 100644
index 0000000..388ad77
--- /dev/null
+++ b/src/soc/intel/cannonlake/romstage/pch.c
@@ -0,0 +1,28 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2019 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; 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 <intelblocks/smbus.h>
+#include <intelblocks/tco.h>
+#include <soc/romstage.h>
+
+void romstage_pch_init(void)
+{
+ /* Programming TCO_BASE_ADDRESS and TCO Timer Halt */
+ tco_configure();
+
+ /* Program SMBUS_BASE_ADDRESS and Enable it */
+ smbus_common_init();
+}
+
diff --git a/src/soc/intel/cannonlake/romstage/romstage.c b/src/soc/intel/cannonlake/romstage/romstage.c
index f782f63..2505683 100644
--- a/src/soc/intel/cannonlake/romstage/romstage.c
+++ b/src/soc/intel/cannonlake/romstage/romstage.c
@@ -132,6 +132,8 @@
/* Program MCHBAR, DMIBAR, GDXBAR and EDRAMBAR */
systemagent_early_init();
+ /* Program PCH init */
+ romstage_pch_init();
/* initialize Heci interface */
heci_init(HECI1_BASE_ADDRESS);
--
To view, visit https://review.coreboot.org/c/coreboot/+/37308
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Idf7b04edc3fce147f7857561ce7d5b0cd05f43fe
Gerrit-Change-Number: 37308
Gerrit-PatchSet: 1
Gerrit-Owner: Usha P <usha.p(a)intel.com>
Gerrit-MessageType: newchange
Bill XIE has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/37912 )
Change subject: mb/gigabyte/ga-b75m-d3h: enable superspeed ports for all variants
......................................................................
mb/gigabyte/ga-b75m-d3h: enable superspeed ports for all variants
Unlike other x7x boards, the ga-b75m-d3h lacks definitions to wire
SuperSpeed-capable ports to XHCI in its device tree, causing these
ports being wired to the second EHCI, and only working as USB 2.0
ports.
This change will add them.
Tested on my ga-b75-d3v board.
Change-Id: Ida4de26f1a493ead83065b1ab27c0c684a074513
Signed-off-by: Bill XIE <persmule(a)hardenedlinux.org>
---
M src/mainboard/gigabyte/ga-b75m-d3h/devicetree.cb
1 file changed, 3 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/12/37912/1
diff --git a/src/mainboard/gigabyte/ga-b75m-d3h/devicetree.cb b/src/mainboard/gigabyte/ga-b75m-d3h/devicetree.cb
index 57b4960..7b47067 100644
--- a/src/mainboard/gigabyte/ga-b75m-d3h/devicetree.cb
+++ b/src/mainboard/gigabyte/ga-b75m-d3h/devicetree.cb
@@ -38,6 +38,9 @@
register "sata_port_map" = "0x3f"
register "sata_interface_speed_support" = "0x3"
+ register "xhci_switchable_ports" = "0xf"
+ register "superspeed_capable_ports" = "0xf"
+
register "pcie_port_coalesce" = "0"
register "docking_supported" = "0"
register "c2_latency" = "0x0065"
--
To view, visit https://review.coreboot.org/c/coreboot/+/37912
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Ida4de26f1a493ead83065b1ab27c0c684a074513
Gerrit-Change-Number: 37912
Gerrit-PatchSet: 1
Gerrit-Owner: Bill XIE <persmule(a)hardenedlinux.org>
Gerrit-MessageType: newchange
Kyösti Mälkki has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/37894 )
Change subject: cpu/intel/car/p4-netburst: Add assert for SIPI_VECTOR_IN_ROM
......................................................................
cpu/intel/car/p4-netburst: Add assert for SIPI_VECTOR_IN_ROM
Location of _start16bit in entry16.inc is about to see some changes,
lets make sure they don't break the alignment requirement here.
Change-Id: Id8a0964982387e5321e8c89254922e1242cf85ee
Signed-off-by: Kyösti Mälkki <kyosti.malkki(a)gmail.com>
---
M src/cpu/x86/16bit/entry16.ld
1 file changed, 23 insertions(+), 3 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/94/37894/1
diff --git a/src/cpu/x86/16bit/entry16.ld b/src/cpu/x86/16bit/entry16.ld
index 66bfbd5..b5c1592 100644
--- a/src/cpu/x86/16bit/entry16.ld
+++ b/src/cpu/x86/16bit/entry16.ld
@@ -1,3 +1,23 @@
- gdtptr16_offset = gdtptr16 & 0xffff;
- nullidt_offset = nullidt & 0xffff;
- ap_sipi_vector_in_rom = (_start16bit >> 12) & 0xff;
+/*
+ * This file is part of the coreboot project.
+ *
+ * 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.
+ */
+
+gdtptr16_offset = gdtptr16 & 0xffff;
+nullidt_offset = nullidt & 0xffff;
+
+/* Symbol _start16bit must be aligned to 4kB to start AP CPUs with
+ * Startup IPI message without RAM.
+ */
+#if CONFIG(SIPI_VECTOR_IN_ROM)
+_bogus = ASSERT((_start16bit & 0xfff) == 0, "Symbol _start16bit is not at 4 KiB boundary");
+ap_sipi_vector_in_rom = (_start16bit >> 12) & 0xff;
+#endif
--
To view, visit https://review.coreboot.org/c/coreboot/+/37894
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Id8a0964982387e5321e8c89254922e1242cf85ee
Gerrit-Change-Number: 37894
Gerrit-PatchSet: 1
Gerrit-Owner: Kyösti Mälkki <kyosti.malkki(a)gmail.com>
Gerrit-MessageType: newchange