#149: AMD DB800 Hangs at "Decompressing Coreboot to Ram" -------------------------------------------+-------------------------------- Reporter: edwin_beasant@… | Owner: somebody Type: defect | Status: new Priority: major | Milestone: Component: coreboot | Version: v2 Keywords: | Dependencies: Patchstatus: patch needs review | -------------------------------------------+-------------------------------- A vanilla build of r4971 appears to hang at the "Decompressing Coreboot to Ram" message when run on the Zoom DB800 development board.
After tearing this down, it appears that the code pre "call cbfs_and_run_core" (and post done_cache_as ram_main) in cache_as_ram.inc for the geode appears to have gained some code from the crt0.S.lb generic i386 infrastructure.
From the end of "done_cache_as_ram_main" to the point of calling cbfs_and_run_core appears to attempt to "reset" the stack after flushing the cache.
This causes the subsequent calls to printk_debug() (or related functions) to fail.
(CONSOLE_DEBUG_TX_STRING would also appear to not clean up after itself)
Solution is to leave the stack as is until the copy to ram has completed.
Patch attached as tested working on Zoom AMD DB800 board, 256MB of RAM, 1024k Flash (SST 49LF008A).