⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gsm_is_secure.template

📁 MMI层OBJ不能完全编译
💻 TEMPLATE
字号:
/*
 * Locosto Standalone PSP build for Virtio Linker Command file 
 *
 * Target : ARM
 *
 * Platform : Locosto Virtio 
 *
 * Copyright (c) Texas Instruments 2005
 *
 * Flash size -- 16MB, check I-sample spec
 * remove Internal ROM
 * Jump table check from release notes
 * .out file is extracted and placed in Flash, copied to RAM in Cal+, store addresses for future reference
 */

-c -heap 64/* Autoinitialize variables at runtime */

/*********************************/
/* SPECIFY THE SYSTEM MEMORY MAP */
/*********************************/

MEMORY
{
  /* Secure Boot ROM */
  BOOT_MEM (RXI)  : org = 0x00000000   len = 0x00100000

  /* Will Keep External RAM for I-Sample to start With */
  /* CS0: External SRAM 2 Mbytes */
  D_MEM0   (RW)  : org = 0x00400000   len = 0x00800000

  /* CS3: Flash 6 Mbytes */
  /* Breaking into Multiple Segments , Thanks to V1.22E the Pre
   * historic Tool chain */
  P_MEM0   (RXI) : org = 0x06000000   len = 0x00410000
  P_MEM1   (RXI) : org = 0x06410000   len = 0x002f0000
   
  /* FFS Area */
  FFS_MEM  (RI)  : org = 0x06700000   len = 0x00100000

  /* CS3: Flash 8 Mbytes */
  /* Breaking into Multiple Segments , Thanks to V1.22E the Pre
   * historic Tool chain */
  P_MEM2   (RXI) : org = 0x06800000   len = 0x00400000
  P_MEM3   (RXI) : org = 0x06C00000   len = 0x00400000

  /* CS6: Locosto Internal SRAM 320 kbytes */
  /* Code & Variables Memory */
  S_MEM    (RXW) : org = 0x08000000   len = 0x00050000

}

/***********************************************/
/* SPECIFY THE SECTIONS ALLOCATION INTO MEMORY */
/***********************************************/

/*
 * Since the bootloader directly calls the INT_Initialize() routine located
 * in int.s, this int.s code must always be mapped at the same address
 * (usually in the second flash sector). Its length is about 0x500 bytes.
 * Then comes the code that need to be loaded into the internal RAM.
 */

SECTIONS
{
    .cert : {} > 0x06000000
    .text    : {} >>   P_MEM0 /* Code. .text must be contiguous to .cert */ 
    
    /* Entry point of the Firmware */
    .start   : {} > P_MEM0

    /*
     *  Interrupt vector re-mapping management
     */
    .intload : {} > P_MEM0
    .indint  : {} load = P_MEM0, run = 0x0800000C
    
    /*
     *  Firmware's certificate location
     */

    .inttext : {} > P_MEM0     /* int.s Code */
    

    .bss_dar : > S_MEM       /* DAR SWE Variables */
    {
        $(BSS_DAR_LIB)
    }

    GROUP > S_MEM |D_MEM0   /* Will be place in S_MEM if it fits there */
    {
   	S_D_Mem	
	.bss   /* Global & Static Variables */
	{
	   $(BSS_BOOT_LIB)
	   $(BSS_LIBS)
	}
	E_D_Mem
    }



    /*
     * .text and .const sections which must be mapped in internal RAM.
     */

    .ldfl  : {} > P_MEM2 /* Used to know the start load address */
    GROUP load = P_MEM2, run = 0x08000044
    {
      S_P_Mem  /* Label of start address of .text & .const sections in Int. RAM */
      .PIntmem
      {
	$(LOOP_LIB)
      }
       /* Add for EMIFS changes into internal RAM  */
      .emifconf
      .nop_delay_sect
      E_P_Mem /* Label of end address of .text and .const sections in Int. RAM */
    }

    /*
     * The rest of the code is mapped in flash, however the trampolines
     * load address should be consistent with .text.
     */

    COMMENT2START
    `trampolines load = P_MEM1 , run = S_MEM
    COMMENT2END


    /*
     * The rest of the constants is mapped in flash.
     */

    .cinit   : {} >   P_MEM0  /* Initialization Tables */
    /* OMAPS00058957 start */
    .pinit   : {} >  P_MEM1   /* C++ constructors if they exist         */
    /* OMAPS00058957 end */
    .const   : {} >>  P_MEM0 | P_MEM1 /* Constant Data */
    .drp_flash_data : {} > P_MEM1
    .flashcnst : {} > P_MEM1


    .stackandheap :> S_MEM   /* System Stacks, etc... */
    {
      /* Leave 20 32bit words for register pushes. */
      . = align(8);
      . += 20 * 4;

      /* Stack for abort and/or undefined modes. */
      exception_stack = .;

      /* Leave 38 32bit words for state saving on exceptions. */
      _xdump_buffer = .;
      . += 38 * 4;
      . = align(8);

      /* Beginning of stacks and heap area - 2.75 kbytes (int.s) */
      stack_segment = .;
      . += 0xB00;
    }

    .data    : {} > S_MEM 
    .r2dbuffer : {} > D_MEM0   /* This Has to remain in external Memory */
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -