summaryrefslogtreecommitdiff
path: root/src/arch/x86/car.ld
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2019-01-31 08:29:32 +0200
committerKyösti Mälkki <kyosti.malkki@gmail.com>2019-02-02 23:48:23 +0000
commitf88208e0acbcb771fdbf5ef851eb6aec12ccc188 (patch)
tree2b6d66c5cd918ab7d725239c04a1aaea06580a3f /src/arch/x86/car.ld
parent909be6a7d8ea87e23e4098a97c23e3263a80057d (diff)
usbdebug: Fix reserve in CAR
We need sizeof(struct ehci_dbg_info) of 88 but only reserved 64 bytes. If usbdebug_hw_init() was called late in romstage, for some builds it would corrupt CAR_GLOBALs like console_inited variable and stop logging anything. Also change pointer initialisation such that glob_dbg_info will hit garbage collection for PRE_RAM stages. Change-Id: Ib49fca781e55619179aa8888e2d859560e050876 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/31174 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-by: Nico Huber <nico.h@gmx.de>
Diffstat (limited to 'src/arch/x86/car.ld')
-rw-r--r--src/arch/x86/car.ld3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/arch/x86/car.ld b/src/arch/x86/car.ld
index 7b10f4313b..1b0d996b8a 100644
--- a/src/arch/x86/car.ld
+++ b/src/arch/x86/car.ld
@@ -67,7 +67,8 @@
_car_drivers_storage_end = .;
#endif
_car_ehci_dbg_info_start = .;
- . += 64;
+ /* Reserve sizeof(struct ehci_dbg_info). */
+ . += 88;
_car_ehci_dbg_info_end = .;
/* _car_global_start and _car_global_end provide symbols to per-stage
* variables that are not shared like the timestamp and the pre-ram