the following patch was just integrated into master:
commit 11d98bbd78ba811d961b11033240521a6f9ffb68
Author: Nico Huber <nico.huber(a)secunet.com>
Date: Thu Jul 19 16:16:59 2012 +0200
Fix udelay() implementation for i945 romstage
Work around 32-bit overflow with 64-bit multiplication. Calculate
correct CPU frequency.
Change-Id: I86d78f2d70b9f9c62fd4e1e0d765e92e4de83f67
Signed-off-by: Nico Huber <nico.huber(a)secunet.com>
Build-Tested: build bot (Jenkins) at Fri Jul 20 15:37:47 2012, giving +1
Reviewed-By: Stefan Reinauer <stefan.reinauer(a)coreboot.org> at Fri Jul 20 23:41:38 2012, giving +2
See http://review.coreboot.org/1254 for details.
-gerrit
the following patch was just integrated into master:
commit ce2a44e3cbb5766261da8f1893b64e030edd0070
Author: Patrick Georgi <patrick.georgi(a)secunet.com>
Date: Fri Jul 20 12:29:33 2012 +0200
Allow shutting down internal graphics if plugin graphics are preferred
VGA is this part-legacy thing that can cause trouble...
For this, introduce device_t->disable(dev) method, in which a driver
can take care to deregister the device if necessary.
Change-Id: I3fecec07f402e530458b79eda30b2c274101fefa
Signed-off-by: Patrick Georgi <patrick.georgi(a)secunet.com>
Build-Tested: build bot (Jenkins) at Fri Jul 20 14:57:34 2012, giving +1
Reviewed-By: Stefan Reinauer <stefan.reinauer(a)coreboot.org> at Fri Jul 20 23:38:50 2012, giving +2
See http://review.coreboot.org/1251 for details.
-gerrit
the following patch was just integrated into master:
commit 3bb096d434e40819c882e841efc93c4b5d68f20a
Author: Patrick Georgi <patrick.georgi(a)secunet.com>
Date: Fri Jul 20 13:44:50 2012 +0200
Allow YABEL to fake write accesses to config space
A new Kconfig option tells YABEL to succeed on write accesses
on other devices' config space without performing the actual
write.
This is enough for some basic bus modification done by some
Option ROMs.
Change-Id: Iab04f3a5c350b96654da4ba26858037f4c4b5c0a
Signed-off-by: Patrick Georgi <patrick.georgi(a)secunet.com>
Build-Tested: build bot (Jenkins) at Fri Jul 20 14:15:36 2012, giving +1
Reviewed-By: Stefan Reinauer <stefan.reinauer(a)coreboot.org> at Fri Jul 20 23:37:55 2012, giving +2
See http://review.coreboot.org/1249 for details.
-gerrit
the following patch was just integrated into master:
commit 05ca672a0521ce81886e1bd4bfecfc81970507e6
Author: Patrick Georgi <patrick.georgi(a)secunet.com>
Date: Fri Jul 20 11:55:19 2012 +0200
Drop VGA_BRIDGE_SETUP config option
It defaults to true, and isn't disabled anywhere in the tree.
I also couldn't think of a case where it's actually useful.
Change-Id: I126a47625d5294f3cfff225629f2a948a83c9b7e
Signed-off-by: Patrick Georgi <patrick.georgi(a)secunet.com>
Build-Tested: build bot (Jenkins) at Fri Jul 20 14:37:51 2012, giving +1
Reviewed-By: Stefan Reinauer <stefan.reinauer(a)coreboot.org> at Fri Jul 20 23:36:22 2012, giving +2
See http://review.coreboot.org/1250 for details.
-gerrit
Patrick Georgi (patrick(a)georgi-clan.de) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/1255
-gerrit
commit 19c16edf950bd34d28ae06413bdcc31c75cfa821
Author: Patrick Georgi <patrick.georgi(a)secunet.com>
Date: Fri Jul 20 12:16:17 2012 +0200
Simplify VGA card discovery
We were handling vga, vga_first, vga_last, vga_onboard just to determine
an onboard chip and the first plugin card.
We were also traversing the devices manually instead of using the utility
functions we have, for the chance that there are non-VGA cards we need to
cope with (but why would they require VGA-style handling?)
Change-Id: I8aa73aefa102725a64287f78a59de3d5dda1c7f2
Signed-off-by: Patrick Georgi <patrick.georgi(a)secunet.com>
---
src/devices/device.c | 43 +++++++++++++------------------------------
1 files changed, 13 insertions(+), 30 deletions(-)
diff --git a/src/devices/device.c b/src/devices/device.c
index de27e88..9753de8 100644
--- a/src/devices/device.c
+++ b/src/devices/device.c
@@ -715,52 +715,35 @@ static void set_vga_bridge_bits(void)
*/
/* FIXME: Handle the VGA palette snooping. */
- struct device *dev, *vga, *vga_onboard, *vga_first, *vga_last;
+ struct device *dev, *vga, *vga_onboard;
struct bus *bus;
bus = 0;
vga = 0;
vga_onboard = 0;
- vga_first = 0;
- vga_last = 0;
-
- for (dev = all_devices; dev; dev = dev->next) {
+ dev = NULL;
+ while ((dev = dev_find_class(PCI_CLASS_DISPLAY_VGA << 8, dev))) {
if (!dev->enabled)
continue;
- if (((dev->class >> 16) == PCI_BASE_CLASS_DISPLAY) &&
- ((dev->class >> 8) != PCI_CLASS_DISPLAY_OTHER)) {
- if (!vga_first) {
- if (dev->on_mainboard)
- vga_onboard = dev;
- else
- vga_first = dev;
- } else {
- if (dev->on_mainboard)
- vga_onboard = dev;
- else
- vga_last = dev;
- }
+ printk(BIOS_DEBUG, "found VGA at %s\n", dev_path(dev));
- /* It isn't safe to enable other VGA cards. */
- dev->command &= ~(PCI_COMMAND_MEMORY | PCI_COMMAND_IO);
+ if (dev->on_mainboard) {
+ vga_onboard = dev;
+ } else if (!vga) {
+ vga = dev;
}
- }
- vga = vga_last;
+ /* It isn't safe to enable all VGA cards. */
+ dev->command &= ~(PCI_COMMAND_MEMORY | PCI_COMMAND_IO);
+ };
if (!vga)
- vga = vga_first;
+ vga = vga_onboard;
-#if CONFIG_ONBOARD_VGA_IS_PRIMARY
- if (vga_onboard) /* Will use onboard VGA as primary. */
-#else
- if (!vga) /* Will use last add-on adapter as primary. */
-#endif
- {
+ if (CONFIG_ONBOARD_VGA_IS_PRIMARY && vga_onboard)
vga = vga_onboard;
- }
/* If we prefer plugin VGA over chipset VGA, the chipset might
want to know. */