LinuxBIOS hangs while copying the image from ROM TO RAM.

sivakumar sivakumar.subramani at wipro.com
Tue Dec 31 04:49:01 CET 2002


Hi,

The following piece of code is from crt0.base file. In my case it is
hanging while copying the Image from ROM to RAM. From the serial output,
it is sure that SDRAM testing is passed. But it hangs while doing movsb
and rep instruction. I feel that value in the ecx register is getting
corrupted and the loop runs for ever. Do any one faced this problem.


#include "crt0_includes.h"

        CONSOLE_DEBUG_TX_STRING($str_after_ram)

        /* clear boot_complete flag */
        xorl    %ebp, %ebp
__main:

        /*
         *      Copy data into RAM and clear the BSS. Since these
segments
         *      isn\'t really that big we just copy/clear using bytes,
not
         *      double words.
         */
        CONSOLE_DEBUG_TX_STRING($siva_debug1)
        intel_chip_post_macro(0x11)             /* post 11 */

        cld                             /* clear direction flag */

        /* copy linuxBIOS from it's initial load location to
         * the location it is compiled to run at.
         * Normally this is copying from FLASH ROM to RAM.
         */
        CONSOLE_DEBUG_TX_STRING($siva_debug2)
        leal    EXT(_liseg), %esi
        leal    EXT(_iseg), %edi
        cmpl    %esi, %edi
        jz      .Lnocopy
        CONSOLE_DEBUG_TX_STRING($siva_debug4)
        movl    $EXT(_eliseg), %ecx
        subl    %esi, %ecx
        jz      .Lnocopy                /* should not happen */
        rep
        movsb
        CONSOLE_DEBUG_TX_STRING($siva_debug5)
.Lnocopy:
	 CONSOLE_DEBUG_TX_STRING($siva_debug3)
        intel_chip_post_macro(0x12)             /*

The output I got through the serial console is as follows:
----------------------------------------------------------------

LinuxBIOS-1.0.0 Tue Dec 31 14:18:19 IST 2002 starting...
Ram1
Ram2
Ram3
Ram Enable 1
Ram Enable 2
Ram Enable 3
Ram Enable 4
Ram Enable 5
12345678123456781234567812345678--- SDRAM TEST PASSED
Ram4
Ram5
Ram6
Copying LinuxBIOS to ram.
Debug Siva 1
Debug Siva 2
Debug Siva 4


LinuxBIOS-1.0.0 Tue Dec 31 14:18:19 IST 2002 starting...
Ram1
Ram2
Ram3
Ram Enable 1
Ram Enable 2
Ram Enable 3
Ram Enable 4
Ram Enable 5
12345678123456781234567812345678--- SDRAM TEST PASSED
Ram4
Ram5
Ram6
Copying LinuxBIOS to ram.
Debug Siva 1
Debug Siva 2
Debug Siva 4


-- 
sivakumar <sivakumar.subramani at wipro.com>
wipro




More information about the coreboot mailing list