the following patch was just integrated into master: commit 83a49f79e7339b011063e346b9f96765b2805160 Author: Duncan Laurie dlaurie@chromium.org Date: Sat Jun 23 15:09:34 2012 -0700
SMM: Add heap region and move C handler higher in region
In order to support SPI and ELOG drivers the SMM region needs to be able to be larger than the previous allocation below 0x7400. Now that we have support for 4M TSEG we do not need to live in this region.
This change adds a 16KB heap region abofe the save state area at TSEG+64KB and moves the C handler above this.
The heap region is then available for malloc and the C handler can grow to support flash and event log features.
While updating the memory map comment in assembly stub I also added a pause instruction to the cpu spin lock as this was added to the C code in latest upstream rebase.
Dump sympbols from smm.elf binary to see the new regions:
00010000 B _heap 00014000 B _eheap 00014000 T _smm_c_handler_start 0001b240 T _smm_c_handler_end
Change-Id: I45f0ab4df1fdef3b626f877094a58587476ac634 Signed-off-by: Duncan Laurie dlaurie@chromium.org
Build-Tested: build bot (Jenkins) at Tue Jul 24 14:16:21 2012, giving +1 Reviewed-By: Ronald G. Minnich rminnich@gmail.com at Tue Jul 24 23:40:54 2012, giving +2 See http://review.coreboot.org/1308 for details.
-gerrit