[coreboot-gerrit] Patch merged into coreboot/master: agesawrapper: Fix endless loop on bettong
gerrit at coreboot.org
gerrit at coreboot.org
Thu Mar 2 22:04:47 CET 2017
the following patch was just integrated into master:
commit b2bb6ad2a72a926796a7eaede06ef8acd556c472
Author: Ricardo Ribalda Delgado <ricardo.ribalda at gmail.com>
Date: Tue Dec 20 10:08:45 2016 +0100
agesawrapper: Fix endless loop on bettong
AGESA AmdInitEarly() reconfigures the lapic timer in a way that
conflicts with lapic/apic_timer.
This results in an endless loop when printk() is called after
AmdInitEarly() and before the apic_timer is initialized.
This patch forces a reconfiguration of the timer after
AmdInitEarly() is called.
Codepath of the endless loop:
printk()->
(...)->
uart_tx_byte->
uart8250_mem_tx_byte->
udelay()->
start = lapic_read(LAPIC_TMCCT);
do {
value = lapic_read(LAPIC_TMCCT);
} while ((start - value) < ticks);
[lapic_read returns the same value after AmdInitEarly()]
Change-Id: I1a08789c89401b2bf6d11846ad7c376bfc68801b
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda at gmail.com>
Reviewed-on: https://review.coreboot.org/17924
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi at google.com>
Reviewed-by: Marshall Dawson <marshalldawson3rd at gmail.com>
Reviewed-by: Paul Menzel <paulepanter at users.sourceforge.net>
See https://review.coreboot.org/17924 for details.
-gerrit
More information about the coreboot-gerrit
mailing list