Angel Pons has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/45562 )
Change subject: nb/intel/ironlake: Add more host bridge PCI IDs
......................................................................
nb/intel/ironlake: Add more host bridge PCI IDs
The host bridge PCI device ID can be changed by the firmware. There
is no documentation about it, though. There's 'official' IDs, which
appear in spec updates and Windows drivers, and 'mysterious' IDs,
which Intel doesn't want OSes to know about and thus are not listed.
The current coreboot code seems to be able to change the device ID
of the host bridge, but it seems to be missing a warm reset so that
the device ID changes. Account for the 'mysterious' device IDs in
the northbridge driver, so that booting an OS has a chance to work.
Change-Id: I93c9c47e2b0bf13d80c986c7d66b6cdf0e192b22
Signed-off-by: Angel Pons <th3fanbus(a)gmail.com>
---
M src/northbridge/intel/ironlake/northbridge.c
1 file changed, 25 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/62/45562/1
diff --git a/src/northbridge/intel/ironlake/northbridge.c b/src/northbridge/intel/ironlake/northbridge.c
index cf014fe..e0e926e 100644
--- a/src/northbridge/intel/ironlake/northbridge.c
+++ b/src/northbridge/intel/ironlake/northbridge.c
@@ -202,10 +202,34 @@
.ops_pci = &pci_dev_ops_pci,
};
+/*
+ * The host bridge PCI device ID can be changed by the firmware. There
+ * is no documentation about it, though. There's 'official' IDs, which
+ * appear in spec updates and Windows drivers, and 'mysterious' IDs,
+ * which Intel doesn't want OSes to know about and thus are not listed.
+ *
+ * The current coreboot code seems to be able to change the device ID
+ * of the host bridge, but it seems to be missing a warm reset so that
+ * the device ID changes. Account for the 'mysterious' device IDs in
+ * the northbridge driver, so that booting an OS has a chance to work.
+ */
+static const unsigned short pci_device_ids[] = {
+ /* 'Official' DIDs */
+ 0x0040, /* Clarkdale */
+ 0x0044, /* Arrandale */
+ 0x0048, /* Unknown, but it appears in OS drivers and raminit */
+
+ /* Mysterious DIDs, taken from Linux' intel-agp driver */
+ 0x0062, /* Clarkdale A-? */
+ 0x0069, /* Clarkdale K-0 */
+ 0x006a, /* Arrandale K-0 */
+ 0
+};
+
static const struct pci_driver mc_driver_ard __pci_driver = {
.ops = &mc_ops,
.vendor = PCI_VENDOR_ID_INTEL,
- .device = 0x0044, /* Arrandale DRAM controller */
+ .device = pci_device_ids,
};
static struct device_operations cpu_bus_ops = {
--
To view, visit https://review.coreboot.org/c/coreboot/+/45562
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I93c9c47e2b0bf13d80c986c7d66b6cdf0e192b22
Gerrit-Change-Number: 45562
Gerrit-PatchSet: 1
Gerrit-Owner: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-MessageType: newchange
Angel Pons has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/46664 )
Change subject: nb/intel/ironlake: Generalise northbridge chip name
......................................................................
nb/intel/ironlake: Generalise northbridge chip name
The code is known to work on processors other than just i7's. Also, use
the northbridge's name (Ironlake) in place of the CPU's (Arrandale).
Change-Id: Ia33fa285b4bacd652932d2187384ca1814c9528a
Signed-off-by: Angel Pons <th3fanbus(a)gmail.com>
---
M src/northbridge/intel/ironlake/northbridge.c
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/64/46664/1
diff --git a/src/northbridge/intel/ironlake/northbridge.c b/src/northbridge/intel/ironlake/northbridge.c
index 2cffa29..0047c2f 100644
--- a/src/northbridge/intel/ironlake/northbridge.c
+++ b/src/northbridge/intel/ironlake/northbridge.c
@@ -225,7 +225,7 @@
}
struct chip_operations northbridge_intel_ironlake_ops = {
- CHIP_NAME("Intel i7 (Arrandale) integrated Northbridge")
+ CHIP_NAME("Intel Ironlake integrated Northbridge")
.enable_dev = enable_dev,
.init = ironlake_init,
};
--
To view, visit https://review.coreboot.org/c/coreboot/+/46664
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Ia33fa285b4bacd652932d2187384ca1814c9528a
Gerrit-Change-Number: 46664
Gerrit-PatchSet: 1
Gerrit-Owner: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Reviewer: Patrick Rudolph <siro(a)das-labor.org>
Gerrit-MessageType: newchange
Michael Niewöhner has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/46301 )
Change subject: soc/intel/common: drop default to enable the PIT if SeaBIOS is chosen
......................................................................
Patch Set 1:
> Patch Set 1:
>
> > Patch Set 1:
> >
> > > Well. Sure that actually works?
> > >
> > > The pmtimer is used in case seabios runs on qemu and initializes the (virtual) acpi pci device.
> > > I doubt this also happens when running as coreboot payload.
> >
> > I have reason to assume it does:
> >
> > platform_hardware_setup() calls coreboot_platform_setup() calls
> > find_acpi_features() calls pmtimer_setup(). Didn't test it though,
> > but I assume the PM timer would be used.
> >
> > And the PM timer always works as it's emulated in the worst case :)
>
> Thanks Nico, I'll test that once again
Meh. Testing this again, I noticed that with PIT disabled SeaBIOS does not auto-boot from disk after ~ 2 sec anymore. To make it work again I had to disable CONFIG_HARDWARE_IRQ.
That means, somehow the PIC (code) depends on PIT
--
To view, visit https://review.coreboot.org/c/coreboot/+/46301
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Ifd75800678707a92110682347c7cfb93e25109a4
Gerrit-Change-Number: 46301
Gerrit-PatchSet: 1
Gerrit-Owner: Michael Niewöhner <foss(a)mniewoehner.de>
Gerrit-Reviewer: Felix Singer <felixsinger(a)posteo.net>
Gerrit-Reviewer: Aaron Durbin <adurbin(a)chromium.org>
Gerrit-Reviewer: Arthur Heymans <arthur(a)aheymans.xyz>
Gerrit-Reviewer: Furquan Shaikh <furquan(a)google.com>
Gerrit-Reviewer: Gerd Hoffmann <kraxel(a)redhat.com>
Gerrit-Reviewer: Kevin O'Connor <kevin(a)koconnor.net>
Gerrit-Reviewer: Michael Niewöhner <foss(a)mniewoehner.de>
Gerrit-Reviewer: Nico Huber <nico.h(a)gmx.de>
Gerrit-Reviewer: Patrick Rudolph <siro(a)das-labor.org>
Gerrit-Reviewer: Paul Menzel <paulepanter(a)users.sourceforge.net>
Gerrit-Reviewer: Subrata Banik <subrata.banik(a)intel.com>
Gerrit-Reviewer: Tim Wawrzynczak <twawrzynczak(a)chromium.org>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-Comment-Date: Sat, 24 Oct 2020 15:35:04 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
Gerrit-MessageType: comment