[coreboot-gerrit] New patch to review for coreboot: 4c5348d qemu: fw_cfg insb workaround

Gerd Hoffmann (kraxel@redhat.com) gerrit at coreboot.org
Wed Nov 6 14:56:35 CET 2013


Gerd Hoffmann (kraxel at redhat.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4028

-gerrit

commit 4c5348db066b4bd601ff17dfce4f0ca52df33eaa
Author: Gerd Hoffmann <kraxel at redhat.com>
Date:   Wed Jun 12 10:19:25 2013 +0200

    qemu: fw_cfg insb workaround
    
    Hmm, no idea why this makes a difference.
    It shouldn't, but does.
    
    Change-Id: Id81331a6484702805523344ff3c082e676532226
    Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
---
 src/mainboard/emulation/qemu-i440fx/fw_cfg.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/mainboard/emulation/qemu-i440fx/fw_cfg.c b/src/mainboard/emulation/qemu-i440fx/fw_cfg.c
index 5166f83..6884d37 100644
--- a/src/mainboard/emulation/qemu-i440fx/fw_cfg.c
+++ b/src/mainboard/emulation/qemu-i440fx/fw_cfg.c
@@ -44,7 +44,15 @@ static int fw_cfg_present(void)
 void fw_cfg_get(int entry, void *dst, int dstlen)
 {
 	outw(entry, FW_CFG_PORT_CTL);
+#if 0
 	insb(FW_CFG_PORT_DATA, dst, dstlen);
+#else
+	u8 *d = dst;
+	while (dstlen) {
+		*d = inb(FW_CFG_PORT_DATA);
+		d++; dstlen--;
+	}
+#endif
 }
 
 int fw_cfg_max_cpus(void)



More information about the coreboot-gerrit mailing list