This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM4379 QSPI

Other Parts Discussed in Thread: AM4379

你好,使用AM4379,裸机开发,没有外挂DDR,只挂接了QSPI和SD卡,编译bootloader,生成bootloader_boot_qspi_a9host_debug_ti.bin,固化无法启动,找了很长时间没有找到原因,因为修了LDS文件,把运行地址NOR_MEM改成OCMCRAM,如下图,启动正常,不知道为什么,难道NOR_MEM是不可用的吗?

MEMORY
{
    DDR0 :   o = 0x80000000,  l = 0x10000000  /* 256MB external DDR Bank 0 */
    OCMCRAM :   o = 0x402F4000,  l = 0x2FC00    /* 256KB of internal RAM */
    NOR_MEM :   o = 0x30000000,  l = 0x3FFFFFF  /* 64 MB of NOR flash memory */
}

OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
OUTPUT_ARCH(arm)

SECTIONS
{
        .startcode :
        {
            . = ALIGN(4);
            *sbl_init.o      (.text)
        } >OCMCRAM

        .text :
        {
            . = ALIGN(4);
            *(.text*)
            *(.rodata*)
        } >OCMCRAM

        .data :
        {
            . = ALIGN(4);
            _data_start = .;
            *(.data*)
            _data_end = .;
        } >OCMCRAM AT > OCMCRAM

        .bss :
        {
            . = ALIGN(4);
            _bss_start = .;
            *(.bss*)
            *(COMMON)
            _bss_end = .;
        } >OCMCRAM AT > OCMCRAM

        .heap :
        {
            . = ALIGN(4);
            __end__ = .;
            end = __end__;
            __HeapBase = __end__;
            *(.heap*)
            . = . + 0x800;
            __HeapLimit = .;
        } >OCMCRAM

        .stack :
        {
            . = ALIGN(4);
            __StackLimit = . ;
            *(.stack*)
            . = . + 0x10000;
            __StackTop = .;
        } >OCMCRAM
        _stack = __StackTop;

        _data_start_ldr = LOADADDR(.data);
}