📄 gsm_is_lj3.~templat
字号:
/*
* 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 /* Autoinitialize variables at runtime */
/*********************************/
/* SPECIFY THE SYSTEM MEMORY MAP */
/*********************************/
MEMORY
{
/* Secure Boot ROM */
BOOT_MEM (RXI) : org = 0x00000000 len = 0x00100000
/* CS0: External SRAM 2 Mbytes */
D_MEM0 (RW) : org = 0x00400000 len = 0x00180000
/* ********spansion S71NS128NC0 Flash ROM*********************
*
*Total size: 16Mbytes = 16banks = 127 * 128kbytes + 4 * 32kbytes
*
*
************************************************************/
/* code Area */
P_MEM0 (RXI) : org = 0x06000000 len = 0x00200000
P_MEM1 (RXI) : org = 0x06200000 len = 0x00080000
P_MEM2 (RXI) : org = 0x06400000 len = 0x00100000
P_MEM3 (RXI) : org = 0x06500000 len = 0x00180000
/* resource Area */
R_MEM (RXI) : org = 0x06280000 len = 0x00080000
/* FFS Area */
FFS_MEM (RI) : org = 0x06300000 len = 0x00100000
S_ROM (RXI) : org = 0x08050000 len = 0x00030000
/* Allocate memory for MIDI and JPEG */
/* S_MEM_JPEG_JUMPTABLE (RXW) : org = 0x0804FB60 len = 0x00000250 */
/* JPEG Jump Table */
S_MEM_JUMPTABLE (RXW) : org = 0x0804FDB0 len = 0x00000250 /* MIDI Jump Table */
/* CS6: Calypso+ Internal SRAM 320 kbytes */
/* Code & Variables Memory */
S_MEM (RXW) : org = 0x08000000 len = 0x0004FDB0
}
-heap 0x10000 /*HEAP AREA SIZE*/
/***********************************************/
/* 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
{
/* Entry point of the Firmware */
.start : {} > 0x06000000
/*
* Interrupt vector re-mapping management
*/
.intload : {} > 0x06000004
.indint : {} load = 0x06000008, run = 0x0800000C
/*
* Firmware's certificate location
*/
.cert : {} > P_MEM0
.inttext : {} > P_MEM0 /* int.s Code */
.bss_dar : > D_MEM0 /* DAR SWE Variables */
{
$(BSS_DAR_LIB)
}
.bss : > D_MEM0 /* Global & Static Variables */
{
$(BSS_BOOT_LIB)
}
/*
* All .bss sections, which must be mapped in internal RAM must be
* grouped in order to initialized the corresponding memory to 0.
* This initialization is done in int.s file before calling the Nucleus
* routine.
*/
GROUP
{
S_D_Mem /* Label of start address of .bss section in Int. RAM */
.DintMem
{
/*
* .bss sections of the application
*/
$(BSS_LIBS)
}
E_D_Mem /* Label of end address of .bss section in Int. RAM */
} > S_MEM
/*
* .text and .const sections which must be mapped in internal RAM.
*/
.ldfl : {} > P_MEM1 /* Used to know the start load address */
GROUP load = P_MEM1, run = 0x08000044
{
S_P_Mem /* Label of start address of .text & .const sections in Int. RAM */
.PIntMem
{
/*
* .text and .const sections of the application.
*
* The .veneer sections correspond exactly to .text:v&n sections
* implementing the veneer functions. The .text:v$n -> .veneer
* translation is performed by PTOOL software when PTOOL_OPTIONS
* environement variable is set to veneer_section.
*/
$(CONST_LIBS)
}
/* Add for EMIFS changes into internal RAM */
.emifconf
.bios_camera_osd_overlay
.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
.text : {} >> P_MEM0 | P_MEM1 /* Code */
/*
* The rest of the constants is mapped in flash.
*/
.cinit : {} > P_MEM1 /* Initialization Tables */
/* OMAPS00058957 start */
.pinit : {} > P_MEM1 /* C++ constructors if they exist */
/* OMAPS00058957 end */
.const : {} >> P_MEM1 /* Constant Data */
.drp_flash_data : {} > P_MEM1
.flashcnst : {} > P_MEM1
.l1s_global: {} > S_MEM
.HISR_stack: {} > S_MEM
API_HISR_global : {} > S_MEM
API_HISR_stack : {} > S_MEM
.isram_midi_buffer :{} > S_MEM
/* begin: zhangclc added at 2007-01-11 --- 解决开机无法搜到网的问题 */
.drp_data :{} > S_MEM
/* end: zhangclc added at 2007-01-11 */
.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 : {} > D_MEM0 /* Initialized Data */
.sysmem : {} > D_MEM0 /* Dynamic Memory Allocation Area */
.MMICACHEHEAP : {} > S_MEM
.ERAM_DAR_FLAG : {} > D_MEM0 /* lixhg added 04/09/08 : Must put in DMEM
(External RAM will be left unmodified when reset) */
S_MEM_JUMPTABLE : {} > S_MEM_JUMPTABLE /* OMAPS00082333: MIDI Jump table */
/* JPEG_JUMP_TABLE : {} > S_MEM_JPEG_JUMPTABLE */
/* JPEG Jump Table */
.BUF_IDLE: {} > S_MEM
/* AAC DMA input buffers are placed in ARM internal memory */
/* AAC_dma_input_buffer : {} > S_MEM */
/*We need to point to the global variables of JPEG components in the ROM */
emz_acChromCodeLen_var_sec: {} > 0x0807618c
emz_acChromCodeWord_var_sec: {} > 0x08075fa4
emz_ACCountTable0_var_sec: {} > 0x08076418
emz_ACCountTable1_var_sec: {} > 0x08076428
emz_acLumCodeLen_var_sec: {} > 0x080760e8
emz_acLumCodeWord_var_sec: {} > 0x08075e60
emz_ACLumTable0_var_sec: {} > 0x08076438
emz_ACLumTable1_var_sec: {} > 0x080764dc
emz_dcChromCodeLen_var_sec: {} > 0x0807626c
emz_dcChromCodeWord_var_sec: {} > 0x08076254
emz_DCChromTable_var_sec: {} > 0x08076408
emz_dcLumCodeLen_var_sec: {} > 0x08076248
emz_dcLumCodeWord_var_sec: {} > 0x08076230
emz_DCLumTable_var_sec: {} > 0x080763f8
emz_QuantTable_var_sec: {} > 0x080762f8
emz_sInvZigzagScan_EzdJpgEnc_var_sec: {} > 0x080762b8
emz_sInvZigzagScanMtx_var_sec: {} > 0x080766c0
emz_sPrePostMult_Jpeg_enc_var_sec: {} > 0x08076780
emz_sZigzagPreMult_var_sec: {} > 0x08076700
emz_zigzagScan_EzdJpgEnc_var_sec: {} > 0x08076278
.r2dbuffer : {} > D_MEM0 /* This Has to remain in external Memory */
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -