From: RichardBarry Date: Wed, 23 Jan 2008 19:35:54 +0000 (+0000) Subject: Remove system files not longer required by IAR V5.11. X-Git-Tag: V4.7.1~16 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=c1a101e65033bc0ce5551e9c6c7635a2da5b0b0a;p=freertos Remove system files not longer required by IAR V5.11. git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@132 1d2547de-c912-0410-9cb9-b8ca96c0e9e2 --- diff --git a/Demo/ARM7_AT91SAM7S64_IAR/SrcIAR/Cstartup.s79 b/Demo/ARM7_AT91SAM7S64_IAR/SrcIAR/Cstartup.s79 deleted file mode 100644 index 966f6f243..000000000 --- a/Demo/ARM7_AT91SAM7S64_IAR/SrcIAR/Cstartup.s79 +++ /dev/null @@ -1,223 +0,0 @@ -;------------------------------------------------------------------------------ -;- ATMEL Microcontroller Software Support - ROUSSET - -;------------------------------------------------------------------------------ -; The software is delivered "AS IS" without warranty or condition of any -; kind, either express, implied or statutory. This includes without -; limitation any warranty or condition with respect to merchantability or -; fitness for any particular purpose, or against the infringements of -; intellectual property rights of others. -;----------------------------------------------------------------------------- -;- File source : Cstartup.s79 -;- Object : Generic CStartup for IAR No Use REMAP -;- Compilation flag : None -;- -;- 1.0 15/Jun/04 JPP : Creation -;------------------------------------------------------------------------------ - -#include "AT91SAM7S64_inc.h" - -;------------------------------------------------------------------------------ -;- Area Definition -;------------------------------------------------------------------------------ - -;--------------------------------------------------------------- -; ?RESET -; Reset Vector. -; Normally, segment INTVEC is linked at address 0. -; For debugging purposes, INTVEC may be placed at other -; addresses. -; A debugger that honors the entry point will start the -; program in a normal way even if INTVEC is not at address 0. -;------------------------------------------------------------- - - PROGRAM ?RESET - RSEG INTRAMSTART_REMAP - RSEG INTRAMEND_REMAP - - EXTERN vPortYieldProcessor - - RSEG ICODE:CODE:ROOT(2) - CODE32 ; Always ARM mode after reset - org 0 -reset -;------------------------------------------------------------------------------ -;- Exception vectors -;-------------------- -;- These vectors can be read at address 0 or at RAM address -;- They ABSOLUTELY requires to be in relative addresssing mode in order to -;- guarantee a valid jump. For the moment, all are just looping. -;- If an exception occurs before remap, this would result in an infinite loop. -;- To ensure if a exeption occurs before start application to infinite loop. -;------------------------------------------------------------------------------ - - B InitReset ; 0x00 Reset handler -undefvec: - B undefvec ; 0x04 Undefined Instruction -swivec: - B vPortYieldProcessor ; 0x08 Software Interrupt -pabtvec: - B pabtvec ; 0x0C Prefetch Abort -dabtvec: - B dabtvec ; 0x10 Data Abort -rsvdvec: - B rsvdvec ; 0x14 reserved -irqvec: - LDR PC, [PC, #-0xF20] ; Jump directly to the address given by the AIC - -fiqvec: ; 0x1c FIQ - -;------------------------------------------------------------------------------ -;- Function : FIQ_Handler_Entry -;- Treatments : FIQ Controller Interrupt Handler. -;- Called Functions : AIC_FVR[interrupt] -;------------------------------------------------------------------------------ - -FIQ_Handler_Entry: - -;- Switch in SVC/User Mode to allow User Stack access for C code -; because the FIQ is not yet acknowledged - -;- Save and r0 in FIQ_Register - mov r9,r0 - ldr r0 , [r8, #AIC_FVR] - msr CPSR_c,#I_BIT | F_BIT | ARM_MODE_SVC - -;- Save scratch/used registers and LR in User Stack - stmfd sp!, { r1-r3, r12, lr} - -;- Branch to the routine pointed by the AIC_FVR - mov r14, pc - bx r0 - -;- Restore scratch/used registers and LR from User Stack - ldmia sp!, { r1-r3, r12, lr} - -;- Leave Interrupts disabled and switch back in FIQ mode - msr CPSR_c, #I_BIT | F_BIT | ARM_MODE_FIQ - -;- Restore the R0 ARM_MODE_SVC register - mov r0,r9 - -;- Restore the Program Counter using the LR_fiq directly in the PC - subs pc,lr,#4 - -InitReset: -;------------------------------------------------------------------------------ -;- Low level Init (PMC, AIC, ? ....) by C function AT91F_LowLevelInit -;------------------------------------------------------------------------------ - EXTERN AT91F_LowLevelInit - -#define __iramend SFB(INTRAMEND_REMAP) - -;- minumum C initialization -;- call AT91F_LowLevelInit( void) - - ldr r13,=__iramend ; temporary stack in internal RAM -;--Call Low level init function in ABSOLUTE through the Interworking - ldr r0,=AT91F_LowLevelInit - mov lr, pc - bx r0 -;------------------------------------------------------------------------------ -;- Stack Sizes Definition -;------------------------ -;- Interrupt Stack requires 2 words x 8 priority level x 4 bytes when using -;- the vectoring. This assume that the IRQ management. -;- The Interrupt Stack must be adjusted depending on the interrupt handlers. -;- Fast Interrupt not requires stack If in your application it required you must -;- be definehere. -;- The System stack size is not defined and is limited by the free internal -;- SRAM. -;------------------------------------------------------------------------------ - -;------------------------------------------------------------------------------ -;- Top of Stack Definition -;------------------------- -;- Interrupt and Supervisor Stack are located at the top of internal memory in -;- order to speed the exception handling context saving and restoring. -;- ARM_MODE_SVC (Application, C) Stack is located at the top of the external memory. -;------------------------------------------------------------------------------ - -IRQ_STACK_SIZE EQU 300 - -ARM_MODE_FIQ EQU 0x11 -ARM_MODE_IRQ EQU 0x12 -ARM_MODE_SVC EQU 0x13 - -I_BIT EQU 0x80 -F_BIT EQU 0x40 - -;------------------------------------------------------------------------------ -;- Setup the stack for each mode -;------------------------------- - ldr r0, =__iramend - -;- Set up Fast Interrupt Mode and set FIQ Mode Stack - msr CPSR_c, #ARM_MODE_FIQ | I_BIT | F_BIT -;- Init the FIQ register - ldr r8, =AT91C_BASE_AIC - -;- Set up Interrupt Mode and set IRQ Mode Stack - msr CPSR_c, #ARM_MODE_IRQ | I_BIT | F_BIT - mov r13, r0 ; Init stack IRQ - sub r0, r0, #IRQ_STACK_SIZE - -;- Enable interrupt & Set up Supervisor Mode and set Supervisor Mode Stack - msr CPSR_c, #ARM_MODE_SVC - mov r13, r0 - - -;--------------------------------------------------------------- -; ?CSTARTUP -;--------------------------------------------------------------- - EXTERN __segment_init - EXTERN main -; Initialize segments. -; __segment_init is assumed to use -; instruction set and to be reachable by BL from the ICODE segment -; (it is safest to link them in segment ICODE). - ldr r0,=__segment_init - mov lr, pc - bx r0 - - PUBLIC __main -?jump_to_main: - ldr lr,=?call_exit - ldr r0,=main -__main: - bx r0 - -;------------------------------------------------------------------------------ -;- Loop for ever -;--------------- -;- End of application. Normally, never occur. -;- Could jump on Software Reset ( B 0x0 ). -;------------------------------------------------------------------------------ -?call_exit: -End - b End - - - -;--------------------------------------------------------------- -; ?EXEPTION_VECTOR -; This module is only linked if needed for closing files. -;--------------------------------------------------------------- - PUBLIC AT91F_Default_FIQ_handler - PUBLIC AT91F_Default_IRQ_handler - PUBLIC AT91F_Spurious_handler - - CODE32 ; Always ARM mode after exeption - -AT91F_Default_FIQ_handler - b AT91F_Default_FIQ_handler - -AT91F_Default_IRQ_handler - b AT91F_Default_IRQ_handler - -AT91F_Spurious_handler - b AT91F_Spurious_handler - - ENDMOD - - END - diff --git a/Demo/ARM7_AT91SAM7S64_IAR/resource/at91SAM7S64_16KRAM.xcl b/Demo/ARM7_AT91SAM7S64_IAR/resource/at91SAM7S64_16KRAM.xcl deleted file mode 100644 index 6f304e4f0..000000000 --- a/Demo/ARM7_AT91SAM7S64_IAR/resource/at91SAM7S64_16KRAM.xcl +++ /dev/null @@ -1,135 +0,0 @@ -// --------------------------------------------------------- -// ATMEL Microcontroller Software Support - ROUSSET - -// --------------------------------------------------------- -// The software is delivered "AS IS" without warranty or -// condition of any kind, either express, implied or -// statutory. This includes without limitation any warranty -// or condition with respect to merchantability or fitness -// for any particular purpose, or against the infringements of -// intellectual property rights of others. -// --------------------------------------------------------- -// File: at91SAM7S64_16KRAM.xlc -// -// 1.1 16/Jun/04 JPP : Creation for 4.11A -// -// $Revision: 1.1.1.1 $ -// -// --------------------------------------------------------- - -//************************************************************************* -// XLINK command file template for EWARM/ICCARM -// -// Usage: xlink -f lnkarm -// -s -// -// $Revision: 1.1.1.1 $ -//************************************************************************* - -//************************************************ -// Inform the linker about the CPU family used. -// AT91SAM7S64 Memory mapping -// No remap -// ROMSTART -// Start address 0x0000 0000 -// Size 64 Kbo 0x0001 0000 -// RAMSTART -// Start address 0x0020 0000 -// Size 16 Kbo 0x0000 4000 -// Remap done -// RAMSTART -// Start address 0x0000 0000 -// Size 16 Kbo 0x0000 4000 -// ROMSTART -// Start address 0x0010 0000 -// Size 64 Kbo 0x0001 0000 - -//************************************************ --carm - -//************************************************************************* -// Internal Ram segments mapped AFTER REMAP 16 K. -//************************************************************************* -// Use these addresses for the . --Z(CONST)INTRAMSTART_REMAP=00000000 --Z(CONST)INTRAMEND_REMAP=00003FFF - -//************************************************************************* -// Read-only segments mapped to Flash 64 K. -//************************************************************************* --DROMSTART=00000000 --DROMEND=0000FFFF -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* --DRAMSTART=00000000 --DRAMEND=00003FFF - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is 32 bytes, -// an additional 32 bytes is allocated for the -// constant table used by ldr PC in cstartup.s79. -//************************************************ --Z(CODE)INTVEC=00-3F - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - -//************************************************ -// Data segments. -//************************************************ --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* --D_CSTACK_SIZE=(100*4) --D_IRQ_STACK_SIZE=(2*8*4) - --Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND --Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/ARM7_AT91SAM7S64_IAR/resource/at91SAM7S64_NoRemap.xcl b/Demo/ARM7_AT91SAM7S64_IAR/resource/at91SAM7S64_NoRemap.xcl deleted file mode 100644 index 4fa63442a..000000000 --- a/Demo/ARM7_AT91SAM7S64_IAR/resource/at91SAM7S64_NoRemap.xcl +++ /dev/null @@ -1,136 +0,0 @@ -// --------------------------------------------------------- -// ATMEL Microcontroller Software Support - ROUSSET - -// --------------------------------------------------------- -// The software is delivered "AS IS" without warranty or -// condition of any kind, either express, implied or -// statutory. This includes without limitation any warranty -// or condition with respect to merchantability or fitness -// for any particular purpose, or against the infringements of -// intellectual property rights of others. -// --------------------------------------------------------- -// File: at91SAM7S64_NoRemap.xlc -// -// 1.1 16/Jun/04 JPP : Creation for 4.11A -// -// $Revision: 1.1.1.1 $ -// -// --------------------------------------------------------- - -//************************************************************************* -// XLINK command file template for EWARM/ICCARM -// -// Usage: xlink -f lnkarm -// -s -// -// $Revision: 1.1.1.1 $ -//************************************************************************* - -//************************************************ -// Inform the linker about the CPU family used. -// AT91SAM7S64 Memory mapping -// No remap -// ROMSTART -// Start address 0x0000 0000 -// Size 64 Kbo 0x0001 0000 -// RAMSTART -// Start address 0x0020 0000 -// Size 16 Kbo 0x0000 4000 -// Remap done -// RAMSTART -// Start address 0x0000 0000 -// Size 16 Kbo 0x0000 4000 -// ROMSTART -// Start address 0x0010 0000 -// Size 64 Kbo 0x0001 0000 - -//************************************************ --carm - -//************************************************************************* -// Internal Ram segments mapped AFTER REMAP 16 K. -//************************************************************************* -// Use these addresses for the . --Z(CONST)INTRAMSTART_REMAP=00200000 --Z(CONST)INTRAMEND_REMAP=00203FFF - -//************************************************************************* -// Read-only segments mapped to Flash 64 K. -//************************************************************************* --DROMSTART=00000000 --DROMEND=0000FFFF -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* --DRAMSTART=00200000 --DRAMEND=002003FFF - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is 32 bytes, -// an additional 32 bytes is allocated for the -// constant table used by ldr PC in cstartup.s79. -//************************************************ --Z(CODE)INTVEC=00-3F - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - - -//************************************************ -// Data segments. -//************************************************ --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* -//-D_CSTACK_SIZE=(100*4) -//-D_IRQ_STACK_SIZE=(2*8*4) - -//-Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/ARM7_LPC2129_IAR/SrcIAR/cstartup.s79 b/Demo/ARM7_LPC2129_IAR/SrcIAR/cstartup.s79 deleted file mode 100644 index c920a210a..000000000 --- a/Demo/ARM7_LPC2129_IAR/SrcIAR/cstartup.s79 +++ /dev/null @@ -1,173 +0,0 @@ -;----------------------------------------------------------------------------- -; This file contains the startup code used by the ICCARM C compiler. -; -; The modules in this file are included in the libraries, and may be replaced -; by any user-defined modules that define the PUBLIC symbol _program_start or -; a user defined start symbol. -; To override the cstartup defined in the library, simply add your modified -; version to the workbench project. -; -; All code in the modules (except ?RESET) will be placed in the ICODE segment. -; -; $Revision: 1.56 $ -; -;----------------------------------------------------------------------------- - -; -; Naming covention of labels in this file: -; -; ?xxx - External labels only accessed from assembler. -; __xxx - External labels accessed from or defined in C. -; xxx - Labels local to one module (note: this file contains -; several modules). -; main - The starting point of the user program. -; - -;--------------------------------------------------------------- -; Macros and definitions for the whole file -;--------------------------------------------------------------- - -; Mode, correspords to bits 0-5 in CPSR -MODE_BITS DEFINE 0x1F ; Bit mask for mode bits in CPSR -USR_MODE DEFINE 0x10 ; User mode -FIQ_MODE DEFINE 0x11 ; Fast Interrupt Request mode -IRQ_MODE DEFINE 0x12 ; Interrupt Request mode -SVC_MODE DEFINE 0x13 ; Supervisor mode -ABT_MODE DEFINE 0x17 ; Abort mode -UND_MODE DEFINE 0x1B ; Undefined Instruction mode -SYS_MODE DEFINE 0x1F ; System mode - -I_Bit DEFINE 0x80 ; IRQ Disable Bit -F_Bit DEFINE 0x40 ; FIQ Disable Bit - -;--------------------------------------------------------------- -; ?RESET -; Reset Vector. -; Normally, segment INTVEC is linked at address 0. -; For debugging purposes, INTVEC may be placed at other -; addresses. -; A debugger that honors the entry point will start the -; program in a normal way even if INTVEC is not at address 0. -;--------------------------------------------------------------- - - MODULE ?RESET - COMMON INTVEC:CODE:NOROOT(2) - PUBLIC __program_start - EXTERN ?cstartup - EXTERN undef_handler, swi_handler, prefetch_handler - EXTERN data_handler, irq_handler, fiq_handler - EXTERN vPortYieldProcessor - - CODE32 ; Always ARM mode after reset - -__program_start - - org 0x00 - - B InitReset ; 0x00 Reset handler - undefvec: - B undefvec ; 0x04 Undefined Instruction - swivec: - B vPortYieldProcessor ; 0x08 Software Interrupt - pabtvec: - B pabtvec ; 0x0C Prefetch Abort - dabtvec: - B dabtvec ; 0x10 Data Abort - rsvdvec: - B rsvdvec ; 0x14 reserved - irqvec: - LDR PC, [PC, #-0xFF0] ; Jump directly to the address given by the AIC - - fiqvec: ; 0x1c FIQ - - -;--------------------------------------------------------------- -; ?CSTARTUP -;--------------------------------------------------------------- - - RSEG IRQ_STACK:DATA(2) - RSEG SVC_STACK:DATA:NOROOT(2) - RSEG CSTACK:DATA(2) - RSEG ICODE:CODE:NOROOT(2) - EXTERN ?main - -; Execution starts here. -; After a reset, the mode is ARM, Supervisor, interrupts disabled. - - - CODE32 - -InitReset - -; Add initialization needed before setup of stackpointers here - - -; Initialize the stack pointers. -; The pattern below can be used for any of the exception stacks: -; FIQ, IRQ, SVC, ABT, UND, SYS. -; The USR mode uses the same stack as SYS. -; The stack segments must be defined in the linker command file, -; and be declared above. - mrs r0,cpsr ; Original PSR value - bic r0,r0,#MODE_BITS ; Clear the mode bits - orr r0,r0,#IRQ_MODE ; Set IRQ mode bits - msr cpsr_c,r0 ; Change the mode - ldr sp,=SFE(IRQ_STACK) & 0xFFFFFFF8 ; End of IRQ_STACK - - bic r0,r0,#MODE_BITS ; Clear the mode bits - orr r0,r0,#SYS_MODE ; Set System mode bits - msr cpsr_c,r0 ; Change the mode - ldr sp,=SFE(CSTACK) & 0xFFFFFFF8 ; End of CSTACK - - bic r0,r0,#MODE_BITS ; Clear the mode bits - orr r0,r0,#SVC_MODE ; Set System mode bits - msr cpsr_c,r0 ; Change the mode - ldr sp,=SFE(SVC_STACK) & 0xFFFFFFF8 ; End of CSTACK - -; Must start in supervisor mode. - MSR CPSR_c, #SVC_MODE|I_Bit|F_Bit - - -; Add more initialization here - - -; Continue to ?main for more IAR specific system startup - - ldr r0,=?main - bx r0 - - - - -;--------------------------------------------------------------- -; ?EXEPTION_VECTOR -; This module is only linked if needed for closing files. -;--------------------------------------------------------------- - PUBLIC AT91F_Default_FIQ_handler - PUBLIC AT91F_Default_IRQ_handler - PUBLIC AT91F_Spurious_handler - - CODE32 ; Always ARM mode after exeption - -AT91F_Default_FIQ_handler - b AT91F_Default_FIQ_handler - -AT91F_Default_IRQ_handler - b AT91F_Default_IRQ_handler - -AT91F_Spurious_handler - b AT91F_Spurious_handler - - ENDMOD - - END - - - - - ENDMOD - END - - - - diff --git a/Demo/ARM7_LPC2129_IAR/resource/lpc212x.xcl b/Demo/ARM7_LPC2129_IAR/resource/lpc212x.xcl deleted file mode 100644 index 5d427ec66..000000000 --- a/Demo/ARM7_LPC2129_IAR/resource/lpc212x.xcl +++ /dev/null @@ -1,190 +0,0 @@ -//************************************************************************* -// XLINK command file template for EWARM/ICCARM -// -// Usage: xlink -f lnkarm -// -s -// -// $Revision: 1.1 $ -//************************************************************************* - -//************************************************************************* -// -// ------------- -// Code segments - may be placed anywhere in memory. -// ------------- -// -// INTVEC -- Exception vector table. -// SWITAB -- Software interrupt vector table. -// ICODE -- Startup (cstartup) and exception code. -// DIFUNCT -- Dynamic initialization vectors used by C++. -// CODE -- Compiler generated code. -// CODE_I -- Compiler generated code declared __ramfunc (executes in RAM) -// CODE_ID -- Initializer for CODE_I (ROM). -// -// ------------- -// Data segments - may be placed anywhere in memory. -// ------------- -// -// CSTACK -- The stack used by C/C++ programs (system and user mode). -// IRQ_STACK -- The stack used by IRQ service routines. -// SVC_STACK -- The stack used in supervisor mode -// (Define other exception stacks as needed for -// FIQ, ABT, UND). -// HEAP -- The heap used by malloc and free in C and new and -// delete in C++. -// INITTAB -- Table containing addresses and sizes of segments that -// need to be initialized at startup (by cstartup). -// CHECKSUM -- The linker places checksum byte(s) in this segment, -// when the -J linker command line option is used. -// DATA_y -- Data objects. -// -// Where _y can be one of: -// -// _AN -- Holds uninitialized located objects, i.e. objects with -// an absolute location given by the @ operator or the -// #pragma location directive. Since these segments -// contain objects which already have a fixed address, -// they should not be mentioned in this linker command -// file. -// _C -- Constants (ROM). -// _I -- Initialized data (RAM). -// _ID -- The original content of _I (copied to _I by cstartup) (ROM). -// _N -- Uninitialized data (RAM). -// _Z -- Zero initialized data (RAM). -// -// Note: Be sure to use end values for the defined address ranges. -// Otherwise, the linker may allocate space outside the -// intended memory range. -//************************************************************************* - - -//************************************************ -// Inform the linker about the CPU family used. -//************************************************ - --carm - -//************************************************************************* -// Segment placement - General information -// -// All numbers in the segment placement command lines below are interpreted -// as hexadecimal unless they are immediately preceded by a '.', which -// denotes decimal notation. -// -// When specifying the segment placement using the -P instead of the -Z -// option, the linker is free to split each segment into its segment parts -// and randomly place these parts within the given ranges in order to -// achieve a more efficient memory usage. One disadvantage, however, is -// that it is not possible to find the start or end address (using -// the assembler operators .sfb./.sfe.) of a segment which has been split -// and reformed. -// -// When generating an output file which is to be used for programming -// external ROM/Flash devices, the -M linker option is very useful -// (see xlink.pdf for details). -//************************************************************************* - - -//************************************************************************* -// Read-only segments mapped to ROM. -//************************************************************************* - --DROMSTART=00000000 --DROMEND=00001ffff - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is 32 bytes, -// an additional 32 bytes is allocated for the -// constant table used by ldr PC in cstartup.s79. -//************************************************ - --Z(CODE)INTVEC=00000000-0000003f - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ - --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ - --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Original ROM location for __ramfunc code copied -// to and executed from RAM. -//************************************************ - --Z(CONST)CODE_ID=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ - --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* - --DRAMSTART=40000000 --DRAMEND=40003fff - -//************************************************ -// Data segments. -//************************************************ - --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ - --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// CODE_ID segment instead, but to keep symbol and -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - --QCODE_I=CODE_ID - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* - --D_CSTACK_SIZE=200 --D_SVC_STACK_SIZE=190 --D_IRQ_STACK_SIZE=190 --D_HEAP_SIZE=4 - --Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND --Z(DATA)SVC_STACK+_SVC_STACK_SIZE=RAMSTART-RAMEND --Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE,HEAP+_HEAP_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/ARM7_STR71x_IAR/RTOSDemo.dep b/Demo/ARM7_STR71x_IAR/RTOSDemo.dep deleted file mode 100644 index 800760c68..000000000 --- a/Demo/ARM7_STR71x_IAR/RTOSDemo.dep +++ /dev/null @@ -1,866 +0,0 @@ - - - - 2 - - Debug - - $PROJ_DIR$\..\Common\Minimal\comtest.c - $PROJ_DIR$\Debug\Obj\tasks.pbi - $PROJ_DIR$\Debug\Obj\serial.pbi - $PROJ_DIR$\Debug\Obj\71x_lib.pbi - $PROJ_DIR$\Debug\Obj\wdg.pbi - $PROJ_DIR$\Debug\Obj\semtest.r79 - $TOOLKIT_DIR$\inc\string.h - $TOOLKIT_DIR$\inc\ysizet.h - $PROJ_DIR$\..\Common\include\comtest.h - $PROJ_DIR$\Debug\Obj\BlockQ.pbi - $PROJ_DIR$\..\Common\include\dynamic.h - $PROJ_DIR$\Library\include\71x_map.h - $PROJ_DIR$\Debug\Obj\list.r79 - $PROJ_DIR$\Library\include\eic.h - $TOOLKIT_DIR$\inc\xencoding_limits.h - $PROJ_DIR$\Debug\Obj\list.pbi - $PROJ_DIR$\Debug\Obj\ParTest.r79 - $PROJ_DIR$\Debug\Obj\BlockQ.r79 - $TOOLKIT_DIR$\inc\yvals.h - $PROJ_DIR$\Debug\Obj\main.r79 - $PROJ_DIR$\..\Common\include\partest.h - $PROJ_DIR$\Library\include\rccu.h - $PROJ_DIR$\Debug\Obj\portasm.r79 - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\ISR_Support.h - $PROJ_DIR$\..\Common\include\PollQ.h - $PROJ_DIR$\Debug\Obj\cstartup.r79 - $TOOLKIT_DIR$\inc\DLib_Threads.h - $PROJ_DIR$\FreeRTOSConfig.h - $PROJ_DIR$\Debug\Obj\dynamic.pbi - $PROJ_DIR$\..\..\Source\include\FreeRTOS.h - $PROJ_DIR$\Debug\Obj\heap_2.r79 - $PROJ_DIR$\Debug\Obj\queue.r79 - $PROJ_DIR$\..\..\Source\include\queue.h - $TOOLKIT_DIR$\inc\stdlib.h - $PROJ_DIR$\Library\include\wdg.h - $PROJ_DIR$\Debug\Obj\serialISR.r79 - $TOOLKIT_DIR$\lib\dl4tptinl8n.h - $PROJ_DIR$\Debug\Obj\heap_2.pbi - $PROJ_DIR$\Debug\Obj\integer.pbi - $PROJ_DIR$\Debug\Obj\rccu.pbi - $PROJ_DIR$\Debug\Obj\uart.r79 - $PROJ_DIR$\Debug\Obj\port.pbi - $PROJ_DIR$\..\..\Source\include\croutine.h - $PROJ_DIR$\Debug\Obj\queue.pbi - $TOOLKIT_DIR$\inc\DLib_Defaults.h - $PROJ_DIR$\Debug\Obj\port.r79 - $TOOLKIT_DIR$\inc\stddef.h - $PROJ_DIR$\..\Common\include\comtest2.h - $PROJ_DIR$\Library\include\71x_conf.h - $TOOLKIT_DIR$\inc\stdio.h - $PROJ_DIR$\Debug\Obj\serial.r79 - $PROJ_DIR$\..\Common\include\BlockQ.h - $PROJ_DIR$\..\Common\include\integer.h - $PROJ_DIR$\Debug\Obj\comtest.r79 - $PROJ_DIR$\Debug\Obj\71x_lib.r79 - $PROJ_DIR$\Debug\Obj\main.pbi - $PROJ_DIR$\Debug\Obj\dynamic.r79 - $PROJ_DIR$\Library\include\gpio.h - $TOOLKIT_DIR$\inc\DLib_Product.h - $PROJ_DIR$\Debug\Obj\tasks.r79 - $PROJ_DIR$\..\..\Source\include\semphr.h - $TOOLKIT_DIR$\inc\intrinsic.h - $PROJ_DIR$\Library\include\uart.h - $PROJ_DIR$\Debug\Exe\RTOSDemo.sim - $PROJ_DIR$\Debug\Obj\flash.r79 - $PROJ_DIR$\Debug\Obj\integer.r79 - $PROJ_DIR$\Debug\Obj\PollQ.r79 - $PROJ_DIR$\Debug\Exe\RTOSDemo.d79 - $TOOLKIT_DIR$\lib\dl4tptinl8n.r79 - $PROJ_DIR$\..\..\Source\include\task.h - $PROJ_DIR$\Debug\Obj\uart.pbi - $PROJ_DIR$\Debug\Obj\gpio.pbi - $PROJ_DIR$\Debug\Obj\flash.pbi - $PROJ_DIR$\Debug\Obj\vect.r79 - $PROJ_DIR$\..\Common\include\serial.h - $PROJ_DIR$\..\Common\include\flash.h - $PROJ_DIR$\Debug\Obj\rccu.r79 - $PROJ_DIR$\Debug\Obj\ParTest.pbi - $PROJ_DIR$\Debug\Obj\PollQ.pbi - $PROJ_DIR$\Debug\Obj\semtest.pbi - $PROJ_DIR$\..\..\Source\include\projdefs.h - $PROJ_DIR$\..\..\Source\include\list.h - $PROJ_DIR$\Debug\Obj\comtest.pbi - $PROJ_DIR$\Library\include\71x_type.h - $PROJ_DIR$\Debug\Obj\gpio.r79 - $PROJ_DIR$\..\..\Source\include\portable.h - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\portmacro.h - $PROJ_DIR$\Debug\Obj\wdg.r79 - $PROJ_DIR$\..\Common\include\semtest.h - $PROJ_DIR$\cstartup.s79 - $PROJ_DIR$\lnkarm.xcl - $PROJ_DIR$\vect.s79 - $PROJ_DIR$\..\Common\Minimal\BlockQ.c - $PROJ_DIR$\serial\serialISR.s79 - $PROJ_DIR$\Library\rccu.c - $PROJ_DIR$\Library\uart.c - $PROJ_DIR$\Library\wdg.c - $PROJ_DIR$\..\..\Source\list.c - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\port.c - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\portasm.s79 - $PROJ_DIR$\..\..\Source\queue.c - $PROJ_DIR$\..\..\Source\tasks.c - $PROJ_DIR$\..\Common\Minimal\flash.c - $PROJ_DIR$\..\..\Source\portable\MemMang\heap_2.c - $PROJ_DIR$\..\Common\Minimal\dynamic.c - $PROJ_DIR$\..\Common\Minimal\integer.c - $PROJ_DIR$\main.c - $PROJ_DIR$\ParTest\ParTest.c - $PROJ_DIR$\..\Common\Minimal\PollQ.c - $PROJ_DIR$\..\Common\Minimal\semtest.c - $PROJ_DIR$\serial\serial.c - $PROJ_DIR$\Library\gpio.c - $PROJ_DIR$\Library\71x_lib.c - - - $PROJ_DIR$\..\Common\Minimal\comtest.c - - - ICCARM - 53 - - - BICOMP - 82 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 74 8 20 - - - - - [ROOT_NODE] - - - XLINK - 67 63 - - - - - $PROJ_DIR$\Debug\Exe\RTOSDemo.d79 - - - XLINK - 63 - - - - - XLINK - 90 54 17 16 66 53 25 56 64 84 30 65 12 19 45 22 31 76 5 50 35 59 40 73 87 68 - - - - - $PROJ_DIR$\cstartup.s79 - - - AARM - 25 - - - - - $PROJ_DIR$\vect.s79 - - - AARM - 73 - - - - - AARM - 27 - - - - - $PROJ_DIR$\..\Common\Minimal\BlockQ.c - - - ICCARM - 17 - - - BICOMP - 9 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 32 51 - - - - - $PROJ_DIR$\serial\serialISR.s79 - - - AARM - 35 - - - - - AARM - 23 - - - - - $PROJ_DIR$\Library\rccu.c - - - ICCARM - 76 - - - BICOMP - 39 - - - - - ICCARM - 21 11 48 83 - - - - - $PROJ_DIR$\Library\uart.c - - - ICCARM - 40 - - - BICOMP - 70 - - - - - ICCARM - 62 11 48 83 21 - - - - - $PROJ_DIR$\Library\wdg.c - - - ICCARM - 87 - - - BICOMP - 4 - - - - - ICCARM - 34 11 48 83 21 - - - - - $PROJ_DIR$\..\..\Source\list.c - - - ICCARM - 12 - - - BICOMP - 15 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 81 - - - - - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\port.c - - - ICCARM - 45 - - - BICOMP - 41 - - - - - ICCARM - 34 11 48 83 21 13 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 - - - - - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\portasm.s79 - - - AARM - 22 - - - - - AARM - 23 - - - - - $PROJ_DIR$\..\..\Source\queue.c - - - ICCARM - 31 - - - BICOMP - 43 - - - - - ICCARM - 33 18 44 36 58 14 26 7 6 29 46 80 27 85 86 61 69 81 42 - - - - - $PROJ_DIR$\..\..\Source\tasks.c - - - ICCARM - 59 - - - BICOMP - 1 - - - - - ICCARM - 49 18 44 36 58 14 26 7 33 6 29 46 80 27 85 86 61 69 81 - - - - - $PROJ_DIR$\..\Common\Minimal\flash.c - - - ICCARM - 64 - - - BICOMP - 72 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 20 75 - - - - - $PROJ_DIR$\..\..\Source\portable\MemMang\heap_2.c - - - ICCARM - 30 - - - BICOMP - 37 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 - - - - - $PROJ_DIR$\..\Common\Minimal\dynamic.c - - - ICCARM - 56 - - - BICOMP - 28 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 60 32 10 - - - - - $PROJ_DIR$\..\Common\Minimal\integer.c - - - ICCARM - 65 - - - BICOMP - 38 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 52 - - - - - $PROJ_DIR$\main.c - - - ICCARM - 19 - - - BICOMP - 55 - - - - - ICCARM - 21 11 48 83 34 29 46 18 44 36 58 14 26 7 80 27 85 86 61 69 81 75 52 24 51 88 10 20 47 - - - - - $PROJ_DIR$\ParTest\ParTest.c - - - ICCARM - 16 - - - BICOMP - 77 - - - - - ICCARM - 57 11 48 83 29 46 18 44 36 58 14 26 7 80 27 85 86 61 20 - - - - - $PROJ_DIR$\..\Common\Minimal\PollQ.c - - - ICCARM - 66 - - - BICOMP - 78 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 32 24 - - - - - $PROJ_DIR$\..\Common\Minimal\semtest.c - - - ICCARM - 5 - - - BICOMP - 79 - - - - - ICCARM - 33 18 44 36 58 14 26 7 29 46 80 27 85 86 61 69 81 60 32 88 - - - - - $PROJ_DIR$\serial\serial.c - - - ICCARM - 50 - - - BICOMP - 2 - - - - - ICCARM - 62 11 48 83 21 57 13 29 46 18 44 36 58 14 26 7 80 27 85 86 61 32 74 - - - - - $PROJ_DIR$\Library\gpio.c - - - ICCARM - 84 - - - BICOMP - 71 - - - - - ICCARM - 57 11 48 83 - - - - - $PROJ_DIR$\Library\71x_lib.c - - - ICCARM - 54 - - - BICOMP - 3 - - - - - ICCARM - 11 48 83 - - - - - - Release - - $PROJ_DIR$\Release\Obj\dynamic.r79 - $PROJ_DIR$\Release\Obj\list.r79 - $PROJ_DIR$\Release\Obj\wdg.r79 - $PROJ_DIR$\Release\Obj\ParTest.r79 - $PROJ_DIR$\Release\Obj\71x_lib.r79 - $PROJ_DIR$\..\Common\Minimal\comtest.c - $PROJ_DIR$\Release\Obj\cstartup.r79 - $PROJ_DIR$\Release\Obj\uart.r79 - $PROJ_DIR$\Release\Obj\vect.r79 - $PROJ_DIR$\Release\Obj\portasm.r79 - $PROJ_DIR$\Release\Obj\heap_2.r79 - $PROJ_DIR$\Release\Obj\tasks.r79 - $PROJ_DIR$\Release\Obj\BlockQ.r79 - $PROJ_DIR$\Release\Obj\integer.r79 - $PROJ_DIR$\Release\Obj\rccu.r79 - $PROJ_DIR$\Release\Obj\PollQ.r79 - $PROJ_DIR$\Release\Obj\flash.r79 - $PROJ_DIR$\Release\Obj\main.r79 - $PROJ_DIR$\Release\Obj\gpio.r79 - $PROJ_DIR$\Release\Obj\semtest.r79 - $PROJ_DIR$\Release\Exe\RTOSDemo.d79 - $PROJ_DIR$\Release\Obj\serialISR.r79 - $PROJ_DIR$\Release\Obj\port.r79 - $PROJ_DIR$\Release\Obj\comtest.r79 - $PROJ_DIR$\Release\Obj\serial.r79 - $PROJ_DIR$\Release\Obj\queue.r79 - $PROJ_DIR$\cstartup.s79 - $PROJ_DIR$\vect.s79 - $PROJ_DIR$\..\Common\Minimal\BlockQ.c - $PROJ_DIR$\serial\serialISR.s79 - $PROJ_DIR$\Library\rccu.c - $PROJ_DIR$\Library\uart.c - $PROJ_DIR$\Library\wdg.c - $PROJ_DIR$\..\..\Source\list.c - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\port.c - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\portasm.s79 - $PROJ_DIR$\..\..\Source\queue.c - $PROJ_DIR$\..\..\Source\tasks.c - $PROJ_DIR$\..\Common\Minimal\flash.c - $PROJ_DIR$\..\..\Source\portable\MemMang\heap_2.c - $PROJ_DIR$\..\Common\Minimal\dynamic.c - $PROJ_DIR$\..\Common\Minimal\integer.c - $PROJ_DIR$\main.c - $PROJ_DIR$\ParTest\ParTest.c - $PROJ_DIR$\..\Common\Minimal\PollQ.c - $PROJ_DIR$\..\Common\Minimal\semtest.c - $PROJ_DIR$\serial\serial.c - $PROJ_DIR$\Library\gpio.c - $PROJ_DIR$\Library\71x_lib.c - - - $PROJ_DIR$\..\Common\Minimal\comtest.c - - - ICCARM - 23 - - - - - [ROOT_NODE] - - - XLINK - 20 - - - - - $PROJ_DIR$\cstartup.s79 - - - AARM - 6 - - - - - $PROJ_DIR$\vect.s79 - - - AARM - 8 - - - - - $PROJ_DIR$\..\Common\Minimal\BlockQ.c - - - ICCARM - 12 - - - - - $PROJ_DIR$\serial\serialISR.s79 - - - AARM - 21 - - - - - $PROJ_DIR$\Library\rccu.c - - - ICCARM - 14 - - - - - $PROJ_DIR$\Library\uart.c - - - ICCARM - 7 - - - - - $PROJ_DIR$\Library\wdg.c - - - ICCARM - 2 - - - - - $PROJ_DIR$\..\..\Source\list.c - - - ICCARM - 1 - - - - - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\port.c - - - ICCARM - 22 - - - - - $PROJ_DIR$\..\..\Source\portable\IAR\STR71x\portasm.s79 - - - AARM - 9 - - - - - $PROJ_DIR$\..\..\Source\queue.c - - - ICCARM - 25 - - - - - $PROJ_DIR$\..\..\Source\tasks.c - - - ICCARM - 11 - - - - - $PROJ_DIR$\..\Common\Minimal\flash.c - - - ICCARM - 16 - - - - - $PROJ_DIR$\..\..\Source\portable\MemMang\heap_2.c - - - ICCARM - 10 - - - - - $PROJ_DIR$\..\Common\Minimal\dynamic.c - - - ICCARM - 0 - - - - - $PROJ_DIR$\..\Common\Minimal\integer.c - - - ICCARM - 13 - - - - - $PROJ_DIR$\main.c - - - ICCARM - 17 - - - - - $PROJ_DIR$\ParTest\ParTest.c - - - ICCARM - 3 - - - - - $PROJ_DIR$\..\Common\Minimal\PollQ.c - - - ICCARM - 15 - - - - - $PROJ_DIR$\..\Common\Minimal\semtest.c - - - ICCARM - 19 - - - - - $PROJ_DIR$\serial\serial.c - - - ICCARM - 24 - - - - - $PROJ_DIR$\Library\gpio.c - - - ICCARM - 18 - - - - - $PROJ_DIR$\Library\71x_lib.c - - - ICCARM - 4 - - - - - [MULTI_TOOL] - XLINK - - - - - diff --git a/Demo/ARM7_STR71x_IAR/cstartup.s79 b/Demo/ARM7_STR71x_IAR/cstartup.s79 deleted file mode 100644 index 74e9763f8..000000000 --- a/Demo/ARM7_STR71x_IAR/cstartup.s79 +++ /dev/null @@ -1,212 +0,0 @@ -;----------------------------------------------------------------------------- -; This file contains the startup code used by the ICCARM C compiler. -; -; The modules in this file are included in the libraries, and may be replaced -; by any user-defined modules that define the PUBLIC symbol _program_start or -; a user defined start symbol. -; To override the cstartup defined in the library, simply add your modified -; version to the workbench project. -; -; All code in the modules (except ?RESET) will be placed in the ICODE segment. -; -; $Revision: 1.1 $ -; -;----------------------------------------------------------------------------- - -; -; Naming covention of labels in this file: -; -; ?xxx - External labels only accessed from assembler. -; __xxx - External labels accessed from or defined in C. -; xxx - Labels local to one module (note: this file contains -; several modules). -; main - The starting point of the user program. -; - -;--------------------------------------------------------------- -; Macros and definitions for the whole file -;--------------------------------------------------------------- - - -; --- Standard definitions of mode bits and interrupt (I & F) flags in PSRs - - - -Mode_USR DEFINE 0x10 -Mode_FIQ DEFINE 0x11 -Mode_IRQ DEFINE 0x12 -Mode_SVC DEFINE 0x13 -Mode_ABT DEFINE 0x17 -Mode_UNDEF DEFINE 0x1B -Mode_SYS DEFINE 0x1F ; available on ARM Arch 4 and later - -I_Bit DEFINE 0x80 ; when I bit is set, IRQ is disabled -F_Bit DEFINE 0x40 ; when F bit is set, FIQ is disabled - - -; --- System memory locations - -RAM_Base DEFINE 0x20000000 -RAM_Limit DEFINE 0x20010000 -SRAM_Base DEFINE 0x60000000 - -SVC_Stack DEFINE RAM_Limit ; 512 byte SVC stack at - ; top of memory - used by kernel. -IRQ_Stack DEFINE SVC_Stack-512 ; followed by IRQ stack -USR_Stack DEFINE IRQ_Stack-512 ; followed by USR stack. Tasks run in - ; system mode but task stacks are allocated - ; when the task is created. -FIQ_Stack DEFINE USR_Stack-8 ; followed by FIQ stack -ABT_Stack DEFINE FIQ_Stack-8 ; followed by ABT stack -UNDEF_Stack DEFINE ABT_Stack-8 ; followed by UNDEF stack - -EIC_Base_addr DEFINE 0xFFFFF800 ; EIC base address -ICR_off_addr DEFINE 0x00 ; Interrupt Control register offset -CIPR_off_addr DEFINE 0x08 ; Current Interrupt Priority Register offset -IVR_off_addr DEFINE 0x18 ; Interrupt Vector Register offset -FIR_off_addr DEFINE 0x1C ; Fast Interrupt Register offset -IER_off_addr DEFINE 0x20 ; Interrupt Enable Register offset -IPR_off_addr DEFINE 0x40 ; Interrupt Pending Bit Register offset -SIR0_off_addr DEFINE 0x60 ; Source Interrupt Register 0 - -EMI_Base_addr DEFINE 0x6C000000 ; EMI base address -BCON0_off_addr DEFINE 0x00 ; Bank 0 configuration register offset -BCON1_off_addr DEFINE 0x04 ; Bank 1 configuration register offset -BCON2_off_addr DEFINE 0x08 ; Bank 2 configuration register offset -BCON3_off_addr DEFINE 0x0C ; Bank 3 configuration register offset - -GPIO2_Base_addr DEFINE 0xE0005000 ; GPIO2 base address -PC0_off_addr DEFINE 0x00 ; Port Configuration Register 0 offset -PC1_off_addr DEFINE 0x04 ; Port Configuration Register 1 offset -PC2_off_addr DEFINE 0x08 ; Port Configuration Register 2 offset -PD_off_addr DEFINE 0x0C ; Port Data Register offset - -CPM_Base_addr DEFINE 0xA0000040 ; CPM Base Address -BOOTCONF_off_addr DEFINE 0x10 ; CPM - Boot Configuration Register -FLASH_mask DEFINE 0x0000 ; to remap FLASH at 0x0 -RAM_mask DEFINE 0x0002 ; to remap RAM at 0x0 -EXTMEM_mask DEFINE 0x0003 ; to remap EXTMEM at 0x0 - -;--------------------------------------------------------------- -; ?RESET -; Reset Vector. -; Normally, segment INTVEC is linked at address 0. -; For debugging purposes, INTVEC may be placed at other -; addresses. -; A debugger that honors the entry point will start the -; program in a normal way even if INTVEC is not at address 0. -;--------------------------------------------------------------- - - MODULE ?RESET - COMMON INTVEC:CODE:NOROOT(2) - PUBLIC __program_start - EXTERN ?cstartup - CODE32 ; Always ARM mode after reset - -__program_start - ldr pc,=?cstartup ; Absolute jump can reach 4 GByte - b ?cstartup ; Relative branch allows remap, limited to 32 MByte - - LTORG - ENDMOD - - -;--------------------------------------------------------------- -; ?CSTARTUP -;--------------------------------------------------------------- - MODULE ?CSTARTUP - -; RSEG IRQ_STACK:DATA(2) -; RSEG SVC_STACK:DATA:NOROOT(2) -; RSEG CSTACK:DATA(2) - RSEG ICODE:CODE:NOROOT(2) - PUBLIC ?cstartup - EXTERN ?main - - - - - CODE32 -?cstartup - - - NOP ; Wait for OSC stabilization - NOP - NOP - NOP - NOP - NOP - NOP - NOP - NOP - - - /* Setup a stack for each mode - note that this only sets up a usable stack - for system/user, SWI and IRQ modes. Also each mode is setup with - interrupts initially disabled. */ - msr CPSR_c, #Mode_UNDEF|I_Bit|F_Bit /* Undefined Instruction Mode */ - LDR SP, =UNDEF_Stack - - msr CPSR_c, #Mode_ABT|I_Bit|F_Bit /* Abort Mode */ - LDR SP, =ABT_Stack - - msr CPSR_c, #Mode_FIQ|I_Bit|F_Bit /* FIQ Mode */ - LDR SP, =FIQ_Stack - - msr CPSR_c, #Mode_IRQ|I_Bit|F_Bit /* IRQ Mode */ - LDR SP, =IRQ_Stack - - msr CPSR_c, #Mode_SVC|I_Bit|F_Bit /* Supervisor Mode */ - LDR SP, =SVC_Stack - - msr CPSR_c, #Mode_SYS|I_Bit|F_Bit /* System Mode */ - LDR SP, =USR_Stack - - /* We want to start in supervisor mode. Operation will switch to system - mode when the first task starts. */ - msr CPSR_c, #Mode_SVC|I_Bit|F_Bit - - - IMPORT T0TIMI_Addr - -EIC_INIT - LDR r3, =EIC_Base_addr - LDR r4, =0x00000000 - STR r4, [r3, #ICR_off_addr] ; Disable FIQ and IRQ - STR r4, [r3, #IER_off_addr] ; Disable all channels interrupts - LDR r4, =0xFFFFFFFF - STR r4, [r3, #IPR_off_addr] ; Clear all IRQ pending bits - LDR r4, =0x0C - STR r4, [r3, #FIR_off_addr] ; Disable FIQ channels and clear FIQ pending bits - LDR r4, =0x00000000 - STR r4, [r3, #CIPR_off_addr] ; Reset the current priority register - LDR r4, =0xE59F0000 - STR r4, [r3, #IVR_off_addr] ; Write the LDR pc,pc,#offset instruction code in IVR[31:16] - LDR r2, =32 ; 32 Channel to initialize - LDR r0, =T0TIMI_Addr ; Read the address of the IRQs address table - LDR r1, =0x00000FFF - AND r0,r0,r1 - LDR r5, =SIR0_off_addr ; Read SIR0 address - SUB r4,r0,#8 ; subtract 8 for prefetch - LDR r1, =0xF7E8 ; add the offset to the 0x00000000 address(IVR address + 7E8 = 0x00000000) - ; 0xF7E8 used to complete the LDR pc,pc,#offset opcode - ADD r1,r4,r1 ; compute the jump offset -EIC_INI MOV r4, r1, LSL #16 ; Left shift the result - STR r4, [r3, r5] ; Store the result in SIRx register - ADD r1, r1, #4 ; Next IRQ address - ADD r5, r5, #4 ; Next SIR - SUBS r2, r2, #1 ; Decrement the number of SIR registers to initialize - BNE EIC_INI ; If more then continue - - - ldr r0,=?main - bx r0 - - LTORG - - ENDMOD - - - END - - diff --git a/Demo/ARM7_STR71x_IAR/lnkarm.xcl b/Demo/ARM7_STR71x_IAR/lnkarm.xcl deleted file mode 100644 index eb3403a7c..000000000 --- a/Demo/ARM7_STR71x_IAR/lnkarm.xcl +++ /dev/null @@ -1,201 +0,0 @@ -//************************************************************************* -// XLINK command file template for EWARM/ICCARM -// -// Usage: xlink -f lnkarm -// -s -// -// $Revision: 1.1 $ -//************************************************************************* - -// Code memory in flash --DROMSTART=0x00000000 --DROMEND=0x0003FFFF --DVECSTART=ROMSTART - -// Data memory --DRAMSTART=0x20000000 --DRAMEND=0x2000FFFF - - -//************************************************************************* -// In this file it is assumed that the system has the following -// memory layout: -// -// Exception vectors [0x000000--0x00001F] RAM or ROM -// ROMSTART--ROMEND [0x008000--0x0FFFFF] ROM (or other non-volatile memory) -// RAMSTART--RAMEND [0x100000--0x7FFFFF] RAM (or other read/write memory) -// -// ------------- -// Code segments - may be placed anywhere in memory. -// ------------- -// -// INTVEC -- Exception vector table. -// SWITAB -- Software interrupt vector table. -// ICODE -- Startup (cstartup) and exception code. -// DIFUNCT -- Dynamic initialization vectors used by C++. -// CODE -- Compiler generated code. -// CODE_I -- Compiler generated code declared __ramfunc (executes in RAM) -// CODE_ID -- Initializer for CODE_I (ROM). -// -// ------------- -// Data segments - may be placed anywhere in memory. -// ------------- -// -// CSTACK -- The stack used by C/C++ programs (system and user mode). -// IRQ_STACK -- The stack used by IRQ service routines. -// SVC_STACK -- The stack used in supervisor mode -// (Define other exception stacks as needed for -// FIQ, ABT, UND). -// HEAP -- The heap used by malloc and free in C and new and -// delete in C++. -// INITTAB -- Table containing addresses and sizes of segments that -// need to be initialized at startup (by cstartup). -// CHECKSUM -- The linker places checksum byte(s) in this segment, -// when the -J linker command line option is used. -// DATA_y -- Data objects. -// -// Where _y can be one of: -// -// _AN -- Holds uninitialized located objects, i.e. objects with -// an absolute location given by the @ operator or the -// #pragma location directive. Since these segments -// contain objects which already have a fixed address, -// they should not be mentioned in this linker command -// file. -// _C -- Constants (ROM). -// _I -- Initialized data (RAM). -// _ID -- The original content of _I (copied to _I by cstartup) (ROM). -// _N -- Uninitialized data (RAM). -// _Z -- Zero initialized data (RAM). -// -// Note: Be sure to use end values for the defined address ranges. -// Otherwise, the linker may allocate space outside the -// intended memory range. -//************************************************************************* - - -//************************************************ -// Inform the linker about the CPU family used. -//************************************************ - --carm - -//************************************************************************* -// Segment placement - General information -// -// All numbers in the segment placement command lines below are interpreted -// as hexadecimal unless they are immediately preceded by a '.', which -// denotes decimal notation. -// -// When specifying the segment placement using the -P instead of the -Z -// option, the linker is free to split each segment into its segment parts -// and randomly place these parts within the given ranges in order to -// achieve a more efficient memory usage. One disadvantage, however, is -// that it is not possible to find the start or end address (using -// the assembler operators .sfb./.sfe.) of a segment which has been split -// and reformed. -// -// When generating an output file which is to be used for programming -// external ROM/Flash devices, the -M linker option is very useful -// (see xlink.pdf for details). -//************************************************************************* - - -//************************************************************************* -// Read-only segments mapped to ROM. -//************************************************************************* - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is 32 bytes, -// an additional 32 bytes is allocated for the -// constant table used by ldr PC in cstartup.s79. -//************************************************ - --Z(CODE)INTVEC=VECSTART:+0x940 - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ - --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ - --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Original ROM location for __ramfunc code copied -// to and executed from RAM. -//************************************************ - --Z(CONST)CODE_ID=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ - --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - - -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* - -//************************************************ -// Data segments. -//************************************************ - --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ - --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// CODE_ID segment instead, but to keep symbol and -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - --QCODE_I=CODE_ID - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* - -//-D_CSTACK_SIZE=400 -// -D_SVC_STACK_SIZE=10 -//-D_IRQ_STACK_SIZE=500 -//-D_HEAP_SIZE=4 - -//-Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)SVC_STACK+_SVC_STACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE,HEAP+_HEAP_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/ARM7_STR71x_IAR/vect.s79 b/Demo/ARM7_STR71x_IAR/vect.s79 deleted file mode 100644 index f363a0d35..000000000 --- a/Demo/ARM7_STR71x_IAR/vect.s79 +++ /dev/null @@ -1,127 +0,0 @@ -#include "FreeRTOSConfig.h" - -IVR_ADDR DEFINE 0xFFFFF818 - -;******************************************************************************* -; Import the Reset_Handler address from 71x_init.s -;******************************************************************************* - - IMPORT __program_start - -;******************************************************************************* -; Import exception handlers -;******************************************************************************* - - IMPORT vPortYieldProcessor ; FreeRTOS SWI handler - -;******************************************************************************* -; Import IRQ handlers from 71x_it.c -;******************************************************************************* - - IMPORT vPortNonPreemptiveTick ; Cooperative FreeRTOS tick handler - IMPORT vPortPreemptiveTickISR ; Preemptive FreeRTOS tick handler - IMPORT vSerialISREntry ; Demo serial port handler - -;******************************************************************************* -; Export Peripherals IRQ handlers table address -;******************************************************************************* - - CODE32 - - - LDR PC, Reset_Addr - LDR PC, Undefined_Addr - LDR PC, SWI_Addr - LDR PC, Prefetch_Addr - LDR PC, Abort_Addr - NOP ; Reserved vector - LDR PC, =IVR_ADDR - LDR PC, FIQ_Addr - - - -;******************************************************************************* -; Exception handlers address table -;******************************************************************************* - -Reset_Addr DCD __program_start -Undefined_Addr DCD UndefinedHandler -SWI_Addr DCD vPortYieldProcessor -Prefetch_Addr DCD PrefetchAbortHandler -Abort_Addr DCD DataAbortHandler - DCD 0 ; Reserved vector -IRQ_Addr DCD IRQHandler -FIQ_Addr DCD FIQHandler - -;******************************************************************************* -; Peripherals IRQ handlers address table -;******************************************************************************* - - EXPORT T0TIMI_Addr - -T0TIMI_Addr DCD DefaultISR -FLASH_Addr DCD DefaultISR -RCCU_Addr DCD DefaultISR -RTC_Addr DCD DefaultISR -#if configUSE_PREEMPTION == 0 -WDG_Addr DCD vPortNonPreemptiveTick ; Tick ISR if the cooperative scheduler is used. -#else -WDG_Addr DCD vPortPreemptiveTickISR ; Tick ISR if the preemptive scheduler is used. -#endif -XTI_Addr DCD DefaultISR -USBHP_Addr DCD DefaultISR -I2C0ITERR_Addr DCD DefaultISR -I2C1ITERR_ADDR DCD DefaultISR -UART0_Addr DCD vSerialISREntry -UART1_Addr DCD DefaultISR -UART2_ADDR DCD DefaultISR -UART3_ADDR DCD DefaultISR -BSPI0_ADDR DCD DefaultISR -BSPI1_Addr DCD DefaultISR -I2C0_Addr DCD DefaultISR -I2C1_Addr DCD DefaultISR -CAN_Addr DCD DefaultISR -ADC12_Addr DCD DefaultISR -T1TIMI_Addr DCD DefaultISR -T2TIMI_Addr DCD DefaultISR -T3TIMI_Addr DCD DefaultISR - DCD 0 ; reserved - DCD 0 ; reserved - DCD 0 ; reserved -HDLC_Addr DCD DefaultISR -USBLP_Addr DCD DefaultISR - DCD 0 ; reserved - DCD 0 ; reserved -T0TOI_Addr DCD DefaultISR -T0OC1_Addr DCD DefaultISR -T0OC2_Addr DCD DefaultISR - - -;******************************************************************************* -; Exception Handlers -;******************************************************************************* - - -UndefinedHandler - b UndefinedHandler - -PrefetchAbortHandler - b PrefetchAbortHandler - -DataAbortHandler - b DataAbortHandler - -IRQHandler - b DefaultISR - -FIQHandler - b FIQHandler - -DefaultISR - b DefaultISR - - - - LTORG - - END diff --git a/Demo/ARM7_STR75x_IAR/lnkarm_flash.xcl b/Demo/ARM7_STR75x_IAR/lnkarm_flash.xcl deleted file mode 100644 index 054d9627b..000000000 --- a/Demo/ARM7_STR75x_IAR/lnkarm_flash.xcl +++ /dev/null @@ -1,215 +0,0 @@ -/*;******************** (C) COPYRIGHT 2005 STMicroelectronics ****************** -;* File Name : lnkarm_flash.xcl -;* Author : MCD Application Team -;* Date First Issued : 03/10/2006 -;* Description : XLINK command file for EWARM/ICCARM -;* : Usage: xlink -f lnkarm -;* : -s -;******************************************************************************* -; History: -; 07/17/2006 : V1.0 -; 03/10/2006 : V0.1 -;******************************************************************************* -; THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -; WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -; AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -; INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -; CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -; INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -;******************************************************************************/ - -// Embedded Flash (256/128/64Kbytes) -// The user has to change the flash memory length depending STR75xFxx devices - -// Code memory in flash --DROMSTART=0x20000000 --DROMEND=0x2003FFFF //0x2001FFFF;0x200FFFF - -// Data memory --DRAMSTART=0x40000000 --DRAMEND=0x40003FFF - - -//************************************************************************* -// ------------- -// Code segments - may be placed anywhere in memory. -// ------------- -// -// INTVEC -- Exception vector table. -// SWITAB -- Software interrupt vector table. -// ICODE -- Startup (cstartup) and exception code. -// DIFUNCT -- Dynamic initialization vectors used by C++. -// CODE -- Compiler generated code. -// CODE_I -- Compiler generated code declared __ramfunc (executes in RAM) -// CODE_ID -- Initializer for CODE_I (ROM). -// -// ------------- -// Data segments - may be placed anywhere in memory. -// ------------- -// -// CSTACK -- The stack used by C/C++ programs (system and user mode). -// IRQ_STACK -- The stack used by IRQ service routines. -// SVC_STACK -- The stack used in supervisor mode -// UND_STACK -- The stack used in Und mode -// ABT_STACK -- The stack used in Abort mode -// FIQ_STACK -- The stack used by FIQ service routines -// HEAP -- The heap used by malloc and free in C and new and -// delete in C++. -// INITTAB -- Table containing addresses and sizes of segments that -// need to be initialized at startup (by cstartup). -// CHECKSUM -- The linker places checksum byte(s) in this segment, -// when the -J linker command line option is used. -// DATA_y -- Data objects. -// -// Where _y can be one of: -// -// _AN -- Holds uninitialized located objects, i.e. objects with -// an absolute location given by the @ operator or the -// #pragma location directive. Since these segments -// contain objects which already have a fixed address, -// they should not be mentioned in this linker command -// file. -// _C -- Constants (ROM). -// _I -- Initialized data (RAM). -// _ID -- The original content of _I (copied to _I by cstartup) (ROM). -// _N -- Uninitialized data (RAM). -// _Z -- Zero initialized data (RAM). -// -// Note: Be sure to use end values for the defined address ranges. -// Otherwise, the linker may allocate space outside the -// intended memory range. -//************************************************************************* - - -//************************************************ -// Inform the linker about the CPU family used. -//************************************************ - --carm - -//************************************************************************* -// Segment placement - General information -// -// All numbers in the segment placement command lines below are interpreted -// as hexadecimal unless they are immediately preceded by a '.', which -// denotes decimal notation. -// -// When specifying the segment placement using the -P instead of the -Z -// option, the linker is free to split each segment into its segment parts -// and randomly place these parts within the given ranges in order to -// achieve a more efficient memory usage. One disadvantage, however, is -// that it is not possible to find the start or end address (using -// the assembler operators .sfb./.sfe.) of a segment which has been split -// and reformed. -// -// When generating an output file which is to be used for programming -// external ROM/Flash devices, the -M linker option is very useful -// (see xlink.pdf for details). -//************************************************************************* - - -//************************************************************************* -// Read-only segments mapped to ROM. -//************************************************************************* - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -//************************************************ - --Z(CODE)INTVEC=ROMSTART-ROMEND - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ - --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ - --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Original ROM location for __ramfunc code copied -// to and executed from RAM. -//************************************************ - --Z(CONST)CODE_ID=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ - --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - - -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* - -//************************************************ -// Data segments. -//************************************************ - --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ - --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// CODE_ID segment instead, but to keep symbol and -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - --QCODE_I=CODE_ID - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* - -// Add size >0 for ABT_Stack, UND_Stack if you need them. -// size must be 8 byte aligned. - --D_CSTACK_SIZE=0x100 --D_SVC_STACK_SIZE=0x400 --D_IRQ_STACK_SIZE=0x400 --D_FIQ_STACK_SIZE=0x40 --D_ABT_STACK_SIZE=0x0 --D_UND_STACK_SIZE=0x0 --D_HEAP_SIZE=0x10 - --Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND --Z(DATA)SVC_STACK+_SVC_STACK_SIZE=RAMSTART-RAMEND --Z(DATA)ABT_STACK+_ABT_STACK_SIZE=RAMSTART-RAMEND --Z(DATA)UND_STACK+_UND_STACK_SIZE=RAMSTART-RAMEND --Z(DATA)FIQ_STACK+_FIQ_STACK_SIZE=RAMSTART-RAMEND --Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE=RAMSTART-RAMEND --Z(DATA)HEAP+_HEAP_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/ARM9_STR91X_IAR/lnkarm_flash.xcl b/Demo/ARM9_STR91X_IAR/lnkarm_flash.xcl deleted file mode 100644 index 5e82f2f9d..000000000 --- a/Demo/ARM9_STR91X_IAR/lnkarm_flash.xcl +++ /dev/null @@ -1,218 +0,0 @@ -/*;******************** (C) COPYRIGHT 2005 STMicroelectronics ************************** -;* File Name : lnkarm_ram.xcl -;* Author : MCD Application Team -;* Date First Issued : 09/27/2005 : V1.0 -;* Description : XLINK command file for EWARM/ICCARM -;* : Usage: xlink -f lnkarm -;* : -s -;************************************************************************************* -;* History: -;* 09/27/2005 : V1.0 -;************************************************************************************* -; THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -; WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -; AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT -; OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT -; OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION -; CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -;*************************************************************************************/ - -// Code memory in flash --DROMSTART=0x00000000 --DROMEND=0x00080000 --DVECSTART=ROMSTART - -// Data memory --DRAMSTART=0x4000000 --DRAMEND=0x04018000 - - -//************************************************************************* -// In this file it is assumed that the system has the following -// memory layout: -// -// Exception vectors [0x000000--0x00001F] RAM or ROM -// ROMSTART--ROMEND [0x008000--0x0FFFFF] ROM (or other non-volatile memory) -// RAMSTART--RAMEND [0x100000--0x7FFFFF] RAM (or other read/write memory) -// -// ------------- -// Code segments - may be placed anywhere in memory. -// ------------- -// -// INTVEC -- Exception vector table. -// SWITAB -- Software interrupt vector table. -// ICODE -- Startup (cstartup) and exception code. -// DIFUNCT -- Dynamic initialization vectors used by C++. -// CODE -- Compiler generated code. -// CODE_I -- Compiler generated code declared __ramfunc (executes in RAM) -// CODE_ID -- Initializer for CODE_I (ROM). -// -// ------------- -// Data segments - may be placed anywhere in memory. -// ------------- -// -// CSTACK -- The stack used by C/C++ programs (system and user mode). -// IRQ_STACK -- The stack used by IRQ service routines. -// SVC_STACK -- The stack used in supervisor mode -// (Define other exception stacks as needed for -// FIQ, ABT, UND). -// HEAP -- The heap used by malloc and free in C and new and -// delete in C++. -// INITTAB -- Table containing addresses and sizes of segments that -// need to be initialized at startup (by cstartup). -// CHECKSUM -- The linker places checksum byte(s) in this segment, -// when the -J linker command line option is used. -// DATA_y -- Data objects. -// -// Where _y can be one of: -// -// _AN -- Holds uninitialized located objects, i.e. objects with -// an absolute location given by the @ operator or the -// #pragma location directive. Since these segments -// contain objects which already have a fixed address, -// they should not be mentioned in this linker command -// file. -// _C -- Constants (ROM). -// _I -- Initialized data (RAM). -// _ID -- The original content of _I (copied to _I by cstartup) (ROM). -// _N -- Uninitialized data (RAM). -// _Z -- Zero initialized data (RAM). -// -// Note: Be sure to use end values for the defined address ranges. -// Otherwise, the linker may allocate space outside the -// intended memory range. -//************************************************************************* - - -//************************************************ -// Inform the linker about the CPU family used. -//************************************************ - --carm - -//************************************************************************* -// Segment placement - General information -// -// All numbers in the segment placement command lines below are interpreted -// as hexadecimal unless they are immediately preceded by a '.', which -// denotes decimal notation. -// -// When specifying the segment placement using the -P instead of the -Z -// option, the linker is free to split each segment into its segment parts -// and randomly place these parts within the given ranges in order to -// achieve a more efficient memory usage. One disadvantage, however, is -// that it is not possible to find the start or end address (using -// the assembler operators .sfb./.sfe.) of a segment which has been split -// and reformed. -// -// When generating an output file which is to be used for programming -// external ROM/Flash devices, the -M linker option is very useful -// (see xlink.pdf for details). -//************************************************************************* - - -//************************************************************************* -// Read-only segments mapped to ROM. -//************************************************************************* - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is 32 bytes, -// an additional 32 bytes is allocated for the -// constant table used by ldr PC in cstartup.s79. -//************************************************ - --Z(CODE)INTVEC=ROMSTART-ROMEND - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ - --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ - --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Original ROM location for __ramfunc code copied -// to and executed from RAM. -//************************************************ - --Z(CONST)CODE_ID=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ - --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - - -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* - -//************************************************ -// Data segments. -//************************************************ - --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ - --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// CODE_ID segment instead, but to keep symbol and -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - --QCODE_I=CODE_ID - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* - -//-D_CSTACK_SIZE=0x1000 -//-D_SVC_STACK_SIZE=0x100 -//-D_IRQ_STACK_SIZE=0x400 -//-D_FIQ_STACK_SIZE=0x40 -//-D_ABT_STACK_SIZE=0x40 -//-D_UND_STACK_SIZE=0x40 -//-D_HEAP_SIZE=0x400 - -//-Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)SVC_STACK+_SVC_STACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)ABT_STACK+_ABT_STACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)UND_STACK+_UND_STACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)FIQ_STACK+_FIQ_STACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)HEAP+_HEAP_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/CORTEX_LM3S316_IAR/hw_include/RTOSDemo_lnk.xcl b/Demo/CORTEX_LM3S316_IAR/hw_include/RTOSDemo_lnk.xcl deleted file mode 100644 index d937b98d8..000000000 --- a/Demo/CORTEX_LM3S316_IAR/hw_include/RTOSDemo_lnk.xcl +++ /dev/null @@ -1,192 +0,0 @@ -// Generated : 06/01/06 20:29:52 -//********************************************************************** -// XLINK template command file to be used with the ICCARM C/C++ Compiler -// -// Usage: xlink -f lnkarm -// -s -// -// $Revision: 1.3 $ -// -//********************************************************************** - -//************************************************************************* -// In this file it is assumed that the system has the following -// memory layout: -// -// Exception vectors [0x000000--0x00001F] RAM or ROM -// ROMSTART--ROMEND [0x008000--0x0FFFFF] ROM (or other non-volatile memory) -// RAMSTART--RAMEND [0x100000--0x7FFFFF] RAM (or other read/write memory) -// -// ------------- -// Code segments - may be placed anywhere in memory. -// ------------- -// -// INTVEC -- Exception vector table. -// SWITAB -- Software interrupt vector table. -// ICODE -- Startup (cstartup) and exception code. -// DIFUNCT -- Dynamic initialization vectors used by C++. -// CODE -- Compiler generated code. -// CODE_I -- Compiler generated code declared __ramfunc (executes in RAM) -// CODE_ID -- Initializer for CODE_I (ROM). -// -// ------------- -// Data segments - may be placed anywhere in memory. -// ------------- -// -// CSTACK -- The stack used by C/C++ programs (system and user mode). -// IRQ_STACK -- The stack used by IRQ service routines. -// SVC_STACK -- The stack used in supervisor mode -// (Define other exception stacks as needed for -// FIQ, ABT, UND). -// HEAP -- The heap used by malloc and free in C and new and -// delete in C++. -// INITTAB -- Table containing addresses and sizes of segments that -// need to be initialized at startup (by cstartup). -// CHECKSUM -- The linker places checksum byte(s) in this segment, -// when the -J linker command line option is used. -// DATA_y -- Data objects. -// -// Where _y can be one of: -// -// _AN -- Holds uninitialized located objects, i.e. objects with -// an absolute location given by the @ operator or the -// #pragma location directive. Since these segments -// contain objects which already have a fixed address, -// they should not be mentioned in this linker command -// file. -// _C -- Constants (ROM). -// _I -- Initialized data (RAM). -// _ID -- The original content of _I (copied to _I by cstartup) (ROM). -// _N -- Uninitialized data (RAM). -// _Z -- Zero initialized data (RAM). -// -// Note: Be sure to use end values for the defined address ranges. -// Otherwise, the linker may allocate space outside the -// intended memory range. -//************************************************************************* - -//************************************************ -// Inform the linker about the CPU family used. -//************************************************ - --carm - -//************************************************************************* -// Segment placement - General information -// -// All numbers in the segment placement command lines below are interpreted -// as hexadecimal unless they are immediately preceded by a '.', which -// denotes decimal notation. -// -// When specifying the segment placement using the -P instead of the -Z -// option, the linker is free to split each segment into its segment parts -// and randomly place these parts within the given ranges in order to -// achieve a more efficient memory usage. One disadvantage, however, is -// that it is not possible to find the start or end address (using -// the assembler operators .sfb./.sfe.) of a segment which has been split -// and reformed. -// -// When generating an output file which is to be used for programming -// external ROM/Flash devices, the -M linker option is very useful -// (see xlink.pdf for details). -//************************************************************************* - - -//************************************************************************* -// Read-only segments mapped to ROM. -//************************************************************************* - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is 32 bytes, -// an additional 32 bytes is allocated for the -// constant table used by ldr PC in cstartup.s79. -//************************************************ - --Z(CODE)INTVEC=0-3F - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ - --Z(CODE)ICODE,DIFUNCT=8000-FFFFF --Z(CODE)SWITAB=8000-FFFFF - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ - --Z(CODE)CODE=8000-FFFFF - -//************************************************ -// Original ROM location for __ramfunc code copied -// to and executed from RAM. -//************************************************ - --Z(CONST)CODE_ID=8000-FFFFF - -//************************************************ -// Various constants and initializers. -//************************************************ - --Z(CONST)INITTAB,DATA_ID,DATA_C=8000-FFFFF --Z(CONST)CHECKSUM=8000-FFFFF - -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* - -//************************************************ -// Data segments. -//************************************************ - --Z(DATA)DATA_I,DATA_Z,DATA_N=100000-7FFFFF - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ - --Z(DATA)CODE_I=100000-7FFFFF - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// CODE_ID segment instead, but to keep symbol and -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - --QCODE_I=CODE_ID - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* - --Z(DATA)CSTACK+200=100000-7FFFFF --Z(DATA)IRQ_STACK+100=100000-7FFFFF --Z(DATA)HEAP+8000=100000-7FFFFF - -//********************************************************************** -// Output user defined segments -//********************************************************************** - - - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/CORTEX_LM3S316_IAR/hw_include/lnkarm.xcl b/Demo/CORTEX_LM3S316_IAR/hw_include/lnkarm.xcl deleted file mode 100644 index 0dfdc1d2c..000000000 --- a/Demo/CORTEX_LM3S316_IAR/hw_include/lnkarm.xcl +++ /dev/null @@ -1,196 +0,0 @@ -//************************************************************************* -// XLINK command file template for EWARM/ICCARM -// -// Usage: xlink -f lnkarm -// -s -// -// $Revision: 1.32 $ -//************************************************************************* - -//************************************************************************* -// In this file it is assumed that the system has the following -// memory layout: -// -// Exception vectors [0x000000--0x00001F] RAM or ROM -// ROMSTART--ROMEND [0x008000--0x0FFFFF] ROM (or other non-volatile memory) -// RAMSTART--RAMEND [0x100000--0x7FFFFF] RAM (or other read/write memory) -// -// ------------- -// Code segments - may be placed anywhere in memory. -// ------------- -// -// INTVEC -- Exception vector table. -// SWITAB -- Software interrupt vector table. -// ICODE -- Startup (cstartup) and exception code. -// DIFUNCT -- Dynamic initialization vectors used by C++. -// CODE -- Compiler generated code. -// CODE_I -- Compiler generated code declared __ramfunc (executes in RAM) -// CODE_ID -- Initializer for CODE_I (ROM). -// -// ------------- -// Data segments - may be placed anywhere in memory. -// ------------- -// -// CSTACK -- The stack used by C/C++ programs (system and user mode). -// IRQ_STACK -- The stack used by IRQ service routines. -// SVC_STACK -- The stack used in supervisor mode -// (Define other exception stacks as needed for -// FIQ, ABT, UND). -// HEAP -- The heap used by malloc and free in C and new and -// delete in C++. -// INITTAB -- Table containing addresses and sizes of segments that -// need to be initialized at startup (by cstartup). -// CHECKSUM -- The linker places checksum byte(s) in this segment, -// when the -J linker command line option is used. -// DATA_y -- Data objects. -// -// Where _y can be one of: -// -// _AN -- Holds uninitialized located objects, i.e. objects with -// an absolute location given by the @ operator or the -// #pragma location directive. Since these segments -// contain objects which already have a fixed address, -// they should not be mentioned in this linker command -// file. -// _C -- Constants (ROM). -// _I -- Initialized data (RAM). -// _ID -- The original content of _I (copied to _I by cstartup) (ROM). -// _N -- Uninitialized data (RAM). -// _Z -- Zero initialized data (RAM). -// -// Note: Be sure to use end values for the defined address ranges. -// Otherwise, the linker may allocate space outside the -// intended memory range. -//************************************************************************* - - -//************************************************ -// Inform the linker about the CPU family used. -//************************************************ - --carm - -//************************************************************************* -// Segment placement - General information -// -// All numbers in the segment placement command lines below are interpreted -// as hexadecimal unless they are immediately preceded by a '.', which -// denotes decimal notation. -// -// When specifying the segment placement using the -P instead of the -Z -// option, the linker is free to split each segment into its segment parts -// and randomly place these parts within the given ranges in order to -// achieve a more efficient memory usage. One disadvantage, however, is -// that it is not possible to find the start or end address (using -// the assembler operators .sfb./.sfe.) of a segment which has been split -// and reformed. -// -// When generating an output file which is to be used for programming -// external ROM/Flash devices, the -M linker option is very useful -// (see xlink.pdf for details). -//************************************************************************* - - -//************************************************************************* -// Read-only segments mapped to ROM. -//************************************************************************* - --DROMSTART=08000 --DROMEND=FFFFF - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is 32 bytes, -// an additional 32 bytes is allocated for the -// constant table used by ldr PC in cstartup.s79. -//************************************************ - --Z(CODE)INTVEC=00-3F - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ - --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ - --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Original ROM location for __ramfunc code copied -// to and executed from RAM. -//************************************************ - --Z(CONST)CODE_ID=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ - --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* - --DRAMSTART=100000 --DRAMEND=7FFFFF - -//************************************************ -// Data segments. -//************************************************ - --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ - --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// CODE_ID segment instead, but to keep symbol and -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - --QCODE_I=CODE_ID - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* - --D_CSTACK_SIZE=2000 -// -D_SVC_STACK_SIZE=10 --D_IRQ_STACK_SIZE=100 --D_HEAP_SIZE=8000 - --Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND -// -Z(DATA)SVC_STACK+_SVC_STACK_SIZE=RAMSTART-RAMEND --Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE,HEAP+_HEAP_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/CORTEX_LM3S316_IAR/hw_include/lnkarm_standalone.xcl b/Demo/CORTEX_LM3S316_IAR/hw_include/lnkarm_standalone.xcl deleted file mode 100644 index f2cc3632c..000000000 --- a/Demo/CORTEX_LM3S316_IAR/hw_include/lnkarm_standalone.xcl +++ /dev/null @@ -1,192 +0,0 @@ -//************************************************************************* -// XLINK command file template for EWARM/ICCARM -// -// Usage: xlink -f lnkarm -// -s -// -// $Revision: 1.1 $ -//************************************************************************* - -//************************************************************************* -// In this file it is assumed that the system has the following -// memory layout: -// -// ROMSTART--ROMEND [00000000--00001FFF] Flash -// RAMSTART--RAMEND [20000000--200007FF] RAM -// -// ------------- -// Code segments - may be placed anywhere in memory (except INTVEC). -// ------------- -// -// INTVEC -- Exception vector table. -// SWITAB -- Software interrupt vector table. -// ICODE -- Startup (cstartup) and exception code. -// DIFUNCT -- Dynamic initialization vectors used by C++. -// CODE -- Compiler generated code. -// CODE_I -- Compiler generated code declared __ramfunc (executes in RAM) -// CODE_ID -- Initializer for CODE_I (ROM). -// -// ------------- -// Data segments - may be placed anywhere in memory. -// ------------- -// -// CSTACK -- The stack used by C/C++ programs (system and user mode). -// HEAP -- The heap used by malloc and free in C and new and -// delete in C++. -// INITTAB -- Table containing addresses and sizes of segments that -// need to be initialized at startup (by cstartup). -// CHECKSUM -- The linker places checksum byte(s) in this segment, -// when the -J linker command line option is used. -// DATA_y -- Data objects. -// -// Where _y can be one of: -// -// _AN -- Holds uninitialized located objects, i.e. objects with -// an absolute location given by the @ operator or the -// #pragma location directive. Since these segments -// contain objects which already have a fixed address, -// they should not be mentioned in this linker command -// file. -// _C -- Constants (ROM). -// _I -- Initialized data (RAM). -// _ID -- The original content of _I (copied to _I by cstartup) (ROM). -// _N -- Uninitialized data (RAM). -// _Z -- Zero initialized data (RAM). -// -// Note: Be sure to use end values for the defined address ranges. -// Otherwise, the linker may allocate space outside the -// intended memory range. -//************************************************************************* - - -//************************************************ -// Inform the linker about the CPU family used. -//************************************************ - --carm - -//************************************************************************* -// Segment placement - General information -// -// All numbers in the segment placement command lines below are interpreted -// as hexadecimal unless they are immediately preceded by a '.', which -// denotes decimal notation. -// -// When specifying the segment placement using the -P instead of the -Z -// option, the linker is free to split each segment into its segment parts -// and randomly place these parts within the given ranges in order to -// achieve a more efficient memory usage. One disadvantage, however, is -// that it is not possible to find the start or end address (using -// the assembler operators .sfb./.sfe.) of a segment which has been split -// and reformed. -// -// When generating an output file which is to be used for programming -// external ROM/Flash devices, the -M linker option is very useful -// (see xlink.pdf for details). -//************************************************************************* - - -//************************************************************************* -// Read-only segments mapped to ROM. -//************************************************************************* - --DROMSTART=00000000 --DROMEND=00001FFF - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is at least 8 bytes, -// and is normally located at address 0. -// It may be changed to a RAM address when -// debugging in RAM (aligned to 2^7). -//************************************************ - --Z(CODE)INTVEC=ROMSTART-ROMEND - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ - --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ - --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Original ROM location for __ramfunc code copied -// to and executed from RAM. -//************************************************ - --Z(CONST)CODE_ID=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ - --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* - --DRAMSTART=20000000 --DRAMEND=200007FF - -//************************************************ -// Data segments. -//************************************************ - --Z(DATA)VTABLE=RAMSTART-RAMEND - --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ - --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// CODE_ID segment instead, but to keep symbol and -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - --QCODE_I=CODE_ID - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* - --D_CSTACK_SIZE=180 --D_IRQ_STACK_SIZE=100 --D_HEAP_SIZE=100 - --Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND --Z(DATA)HEAP+_HEAP_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf diff --git a/Demo/CORTEX_LM3S316_IAR/standalone.xcl b/Demo/CORTEX_LM3S316_IAR/standalone.xcl deleted file mode 100644 index fdd107a75..000000000 --- a/Demo/CORTEX_LM3S316_IAR/standalone.xcl +++ /dev/null @@ -1,37 +0,0 @@ -//***************************************************************************** -// -// standalone.xcl - Linker script for EW-ARM. -// -// Copyright (c) 2006 Luminary Micro, Inc. All rights reserved. -// -//***************************************************************************** - -// -// Set the CPU type to ARM. -// --carm - -// -// Define the size of flash and SRAM. -// --DROMSTART=00000000 --DROMEND=0000FFFF --DRAMSTART=20000000 --DRAMEND=20001FFF - -// -// Define the sections to place into flash, and the order to place them. -// --Z(CODE)INTVEC=ROMSTART-ROMEND --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)CODE=ROMSTART-ROMEND --Z(CONST)CODE_ID=ROMSTART-ROMEND --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - -// -// Define the sections to place into SRAM, and the order to place them. -// --Z(DATA)VTABLE=RAMSTART-RAMEND --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND --Z(DATA)CODE_I=RAMSTART-RAMEND diff --git a/Demo/CORTEX_LM3S811_IAR/standalone.xcl b/Demo/CORTEX_LM3S811_IAR/standalone.xcl deleted file mode 100644 index fdd107a75..000000000 --- a/Demo/CORTEX_LM3S811_IAR/standalone.xcl +++ /dev/null @@ -1,37 +0,0 @@ -//***************************************************************************** -// -// standalone.xcl - Linker script for EW-ARM. -// -// Copyright (c) 2006 Luminary Micro, Inc. All rights reserved. -// -//***************************************************************************** - -// -// Set the CPU type to ARM. -// --carm - -// -// Define the size of flash and SRAM. -// --DROMSTART=00000000 --DROMEND=0000FFFF --DRAMSTART=20000000 --DRAMEND=20001FFF - -// -// Define the sections to place into flash, and the order to place them. -// --Z(CODE)INTVEC=ROMSTART-ROMEND --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)CODE=ROMSTART-ROMEND --Z(CONST)CODE_ID=ROMSTART-ROMEND --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - -// -// Define the sections to place into SRAM, and the order to place them. -// --Z(DATA)VTABLE=RAMSTART-RAMEND --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND --Z(DATA)CODE_I=RAMSTART-RAMEND diff --git a/Demo/CORTEX_LM3Sxxxx_IAR_Keil/RTOSDemo.dep b/Demo/CORTEX_LM3Sxxxx_IAR_Keil/RTOSDemo.dep deleted file mode 100644 index 014fd12e6..000000000 --- a/Demo/CORTEX_LM3Sxxxx_IAR_Keil/RTOSDemo.dep +++ /dev/null @@ -1,957 +0,0 @@ - - - - 2 - 4157957474 - - Debug - - $TOOLKIT_DIR$\inc\DLib_Product.h - $PROJ_DIR$\Debug\Exe\RTOSDemo.out - $PROJ_DIR$\Debug\Obj\startup_ewarm.pbi - $PROJ_DIR$\Debug\Obj\death.pbi - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\hw_ints.h - $PROJ_DIR$\..\..\Source\include\semphr.h - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\hw_ssi.h - $PROJ_DIR$\Debug\Obj\psock.o - $PROJ_DIR$\Debug\Obj\GenQTest.o - $PROJ_DIR$\LuminaryDrivers\hw_ssi.h - $PROJ_DIR$\LuminaryDrivers\pdc.c - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\hw_ethernet.h - $PROJ_DIR$\..\Common\include\semtest.h - $PROJ_DIR$\webserver\httpd-cgi.h - $PROJ_DIR$\..\..\Source\include\portable.h - $PROJ_DIR$\LuminaryDrivers\hw_types.h - $PROJ_DIR$\LM3Sxxxx.icf - $PROJ_DIR$\lcd_message.h - $PROJ_DIR$\Debug\Obj\http-strings.o - $PROJ_DIR$\..\..\Source\portable\IAR\ARM_CM3\portasm.s - $PROJ_DIR$\Debug\Obj\port.pbi - $PROJ_DIR$\LuminaryDrivers\osram128x64x4.c - $PROJ_DIR$\webserver\httpd.h - $TOOLKIT_DIR$\inc\ysizet.h - $PROJ_DIR$\Debug\Obj\rit128x96x4.o - $PROJ_DIR$\..\Common\include\BlockQ.h - $PROJ_DIR$\..\..\Source\include\FreeRTOS.h - $TOOLKIT_DIR$\inc\DLib_Defaults.h - $PROJ_DIR$\..\Common\include\integer.h - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\pt.h - $PROJ_DIR$\Debug\Obj\emac.pbi - $PROJ_DIR$\Debug\Obj\timer.o - $PROJ_DIR$\..\..\Source\portable\IAR\ARM_CM3\portmacro.h - $TOOLKIT_DIR$\inc\stdint.h - $PROJ_DIR$\LuminaryDrivers\gpio.h - $PROJ_DIR$\Debug\Obj\ParTest.o - $PROJ_DIR$\..\Common\Minimal\integer.c - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\lmi_timer.h - $PROJ_DIR$\Debug\Obj\PollQ.o - $PROJ_DIR$\LuminaryDrivers\hw_memmap.h - $PROJ_DIR$\..\..\Source\include\list.h - $PROJ_DIR$\Debug\Obj\port.o - $TOOLKIT_DIR$\lib\dl7M_tl_in.a - $PROJ_DIR$\Debug\Obj\queue.pbi - $PROJ_DIR$\Debug\Obj\uip_arp.o - $PROJ_DIR$\webserver\uip-conf.h - $PROJ_DIR$\Debug\Obj\portasm.o - $PROJ_DIR$\..\..\Source\portable\MemMang\heap_2.c - $PROJ_DIR$\osram128x64x4.c - $PROJ_DIR$\Debug\Obj\http-strings.pbi - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\gpio.h - $PROJ_DIR$\Debug\Obj\httpd-cgi.o - $PROJ_DIR$\..\Common\Minimal\flash.c - $PROJ_DIR$\..\Common\include\blocktim.h - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\timer.h - $PROJ_DIR$\Debug\Obj\flash.o - $TOOLKIT_DIR$\inc\xencoding_limits.h - $PROJ_DIR$\..\Common\include\PollQ.h - $PROJ_DIR$\..\..\Source\include\projdefs.h - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\psock.h - $PROJ_DIR$\webserver\httpd-fsdata.c - $PROJ_DIR$\Debug\Obj\startup_ewarm.o - $PROJ_DIR$\Debug\Obj\uip.pbi - $PROJ_DIR$\Debug\Obj\osram128x64x4.r79 - $PROJ_DIR$\Debug\Obj\rit128x96x4.pbi - $PROJ_DIR$\webserver\httpd-cgi.c - $PROJ_DIR$\..\..\Source\portable\IAR\ARM_CM3\port.c - $PROJ_DIR$\..\..\Source\queue.c - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\lmi_flash.h - $PROJ_DIR$\Debug\Obj\blocktim.o - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\uip_arp.h - $PROJ_DIR$\Debug\Obj\list.o - $PROJ_DIR$\Debug\Obj\tasks.pbi - $PROJ_DIR$\Debug\Obj\timertest.pbi - $PROJ_DIR$\..\Common\include\partest.h - $PROJ_DIR$\webserver\clock-arch.h - $PROJ_DIR$\webserver\httpd-fs.h - $PROJ_DIR$\Debug\Obj\flash.pbi - $PROJ_DIR$\Debug\Obj\GenQTest.pbi - $TOOLKIT_DIR$\inc\stddef.h - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\uipopt.h - $PROJ_DIR$\Debug\Obj\httpd-fs.o - $TOOLKIT_DIR$\inc\ycheck.h - $PROJ_DIR$\..\Common\include\QPeek.h - $PROJ_DIR$\Debug\Obj\list.pbi - $PROJ_DIR$\Debug\Obj\ParTest.pbi - $PROJ_DIR$\webserver\http-strings.h - $PROJ_DIR$\Debug\Obj\semtest.pbi - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\interrupt.h - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\debug.h - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\hw_types.h - $PROJ_DIR$\Debug\Obj\uIP_Task.pbi - $PROJ_DIR$\Debug\Obj\RTOSDemo.pbd - $TOOLKIT_DIR$\inc\DLib_Config_Normal.h - $PROJ_DIR$\ParTest\ParTest.c - $PROJ_DIR$\Debug\Obj\BlockQ.o - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\uip_arch.h - $PROJ_DIR$\main.c - $PROJ_DIR$\Debug\Obj\osram128x64x4.pbi - $PROJ_DIR$\Debug\Obj\uip.o - $PROJ_DIR$\rit128x96x4.c - $PROJ_DIR$\LuminaryDrivers\ssi.h - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\hw_sysctl.h - $PROJ_DIR$\webserver\uIP_Task.c - $PROJ_DIR$\Debug\Obj\emac.o - $PROJ_DIR$\Debug\Obj\BlockQ.pbi - $PROJ_DIR$\LuminaryDrivers\pdc.h - $TOOLKIT_DIR$\inc\DLib_Threads.h - $PROJ_DIR$\..\..\Source\include\task.h - $PROJ_DIR$\LuminaryDrivers\osram128x64x4.h - $PROJ_DIR$\Debug\Obj\uip_arp.pbi - $PROJ_DIR$\Debug\Obj\httpd.o - $PROJ_DIR$\..\Common\include\death.h - $PROJ_DIR$\..\Common\Minimal\death.c - $PROJ_DIR$\Debug\Obj\pdc.r79 - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\uip.h - $PROJ_DIR$\startup_ewarm.c - $PROJ_DIR$\Debug\Obj\blocktim.pbi - $PROJ_DIR$\Debug\Obj\semtest.o - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\lc-switch.h - $PROJ_DIR$\Debug\Obj\integer.o - $PROJ_DIR$\Debug\Obj\death.o - $PROJ_DIR$\Debug\Obj\QPeek.o - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\hw_memmap.h - $TOOLKIT_DIR$\inc\yvals.h - $PROJ_DIR$\Debug\Obj\httpd.pbi - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\timer.h - $PROJ_DIR$\Debug\Obj\queue.o - $PROJ_DIR$\Debug\Obj\httpd-cgi.pbi - $PROJ_DIR$\LuminaryDrivers\debug.h - $PROJ_DIR$\webserver\webserver.h - $PROJ_DIR$\..\..\Source\list.c - $PROJ_DIR$\..\Common\include\flash.h - $PROJ_DIR$\..\..\Source\include\croutine.h - $PROJ_DIR$\Debug\Obj\timer.pbi - $TOOLKIT_DIR$\inc\stdio.h - $PROJ_DIR$\Debug\Obj\timertest.o - $TOOLKIT_DIR$\inc\DLib_Product_string.h - $PROJ_DIR$\webserver\httpd-fsdata.h - $TOOLKIT_DIR$\lib\rt7M_tl.a - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\IAR\driverlib.a - $TOOLKIT_DIR$\inc\string.h - $PROJ_DIR$\Debug\Obj\integer.pbi - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\ssi.h - $PROJ_DIR$\..\Common\Minimal\GenQTest.c - $PROJ_DIR$\Debug\Obj\PollQ.pbi - $PROJ_DIR$\LuminaryDrivers\hw_sysctl.h - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\clock.h - $PROJ_DIR$\bitmap.h - $PROJ_DIR$\..\Common\Minimal\blocktim.c - $PROJ_DIR$\..\Common\Minimal\PollQ.c - $PROJ_DIR$\Debug\Obj\osram128x64x4.o - $PROJ_DIR$\osram128x64x4.h - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\sysctl.h - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\ethernet.h - $PROJ_DIR$\..\Common\drivers\LuminaryMicro\rit128x96x4.h - $PROJ_DIR$\..\Common\Minimal\BlockQ.c - $PROJ_DIR$\LuminaryDrivers\sysctl.h - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\uip_arp.c - $PROJ_DIR$\webserver\emac.c - $PROJ_DIR$\..\..\Source\tasks.c - $PROJ_DIR$\webserver\http-strings.c - $TOOLKIT_DIR$\inc\stdlib.h - $PROJ_DIR$\Debug\Obj\main.o - $PROJ_DIR$\Debug\Obj\main.pbi - $PROJ_DIR$\..\Common\Minimal\QPeek.c - $PROJ_DIR$\timertest.c - $PROJ_DIR$\..\Common\Minimal\semtest.c - $PROJ_DIR$\webserver\httpd-fs.c - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\uip.c - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\timer.c - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\psock.c - $PROJ_DIR$\webserver\httpd.c - $PROJ_DIR$\Debug\Obj\httpd-fs.pbi - $PROJ_DIR$\FreeRTOSConfig.h - $PROJ_DIR$\Debug\Obj\pdc.pbi - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\lc.h - $PROJ_DIR$\Debug\Obj\uIP_Task.o - $PROJ_DIR$\Debug\Obj\heap_2.pbi - $PROJ_DIR$\..\..\Source\include\queue.h - $PROJ_DIR$\Debug\Obj\psock.pbi - $PROJ_DIR$\Debug\Obj\tasks.o - $PROJ_DIR$\Debug\Obj\QPeek.pbi - $PROJ_DIR$\Debug\Obj\heap_2.o - $PROJ_DIR$\..\Common\include\GenQTest.h - $PROJ_DIR$\webserver\emac.h - - - $PROJ_DIR$\Debug\Exe\RTOSDemo.out - - - ILINK - 16 95 8 35 38 122 69 121 104 55 183 18 51 81 111 120 71 163 151 41 46 7 127 24 118 61 181 31 136 177 99 44 140 139 42 - - - - - $PROJ_DIR$\LuminaryDrivers\pdc.c - - - BICOMP - 175 - - - ICCARM - 114 - - - - - BICOMP - 39 15 129 34 101 157 106 - - - ICCARM - 39 15 129 34 101 157 106 - - - - - $PROJ_DIR$\..\..\Source\portable\IAR\ARM_CM3\portasm.s - - - AARM - 46 - - - - - AARM - 174 - - - - - $PROJ_DIR$\LuminaryDrivers\osram128x64x4.c - - - BICOMP - 98 - - - ICCARM - 63 - - - - - ICCARM - 9 39 146 15 129 34 101 157 109 - - - - - $PROJ_DIR$\..\Common\Minimal\integer.c - - - BICOMP - 142 - - - ICCARM - 120 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 28 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 28 - - - - - $PROJ_DIR$\..\..\Source\portable\MemMang\heap_2.c - - - BICOMP - 178 - - - ICCARM - 183 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 - - - - - $PROJ_DIR$\osram128x64x4.c - - - BICOMP - 98 - - - ICCARM - 151 - - - - - BICOMP - 6 123 102 90 89 50 143 153 152 - - - ICCARM - 6 123 102 90 89 50 143 153 152 - - - - - $PROJ_DIR$\..\Common\Minimal\flash.c - - - BICOMP - 77 - - - ICCARM - 55 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 74 132 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 74 132 - - - - - $PROJ_DIR$\webserver\httpd-cgi.c - - - BICOMP - 128 - - - ICCARM - 51 - - - - - BICOMP - 115 80 45 33 82 124 27 0 56 107 130 22 59 29 176 119 76 13 135 23 141 137 - - - ICCARM - 115 80 45 33 82 124 27 93 0 56 107 130 22 59 29 176 119 76 13 135 23 141 137 - - - - - $PROJ_DIR$\..\..\Source\portable\IAR\ARM_CM3\port.c - - - BICOMP - 20 - - - ICCARM - 41 - - - - - BICOMP - 26 79 82 124 27 0 56 107 23 58 174 14 32 108 40 - - - ICCARM - 26 79 82 124 27 93 0 56 107 23 58 174 14 32 108 40 - - - - - $PROJ_DIR$\..\..\Source\queue.c - - - BICOMP - 43 - - - ICCARM - 127 - - - - - BICOMP - 162 82 124 27 0 56 107 23 141 137 26 79 58 174 14 32 108 40 133 - - - ICCARM - 162 82 124 27 93 0 56 107 23 141 137 26 79 58 174 14 32 108 40 133 - - - - - $PROJ_DIR$\Debug\Obj\RTOSDemo.pbd - - - BILINK - 105 78 85 145 182 117 3 30 77 178 49 128 173 125 142 84 164 98 20 180 43 64 87 2 72 134 73 91 62 110 - - - - - $PROJ_DIR$\ParTest\ParTest.c - - - BICOMP - 85 - - - ICCARM - 35 - - - - - BICOMP - 26 79 82 124 27 0 56 107 23 58 174 14 32 108 40 74 90 50 123 - - - ICCARM - 26 79 82 124 27 93 0 56 107 23 58 174 14 32 108 40 74 90 50 123 - - - - - $PROJ_DIR$\main.c - - - BICOMP - 164 - - - ICCARM - 163 - - - - - BICOMP - 135 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 179 5 25 112 28 53 132 74 12 57 17 148 184 83 123 90 102 153 50 155 152 - - - ICCARM - 135 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 179 5 25 112 28 53 132 74 12 57 17 148 184 83 123 90 102 153 50 155 152 - - - - - $PROJ_DIR$\rit128x96x4.c - - - BICOMP - 64 - - - ICCARM - 24 - - - - - BICOMP - 6 123 102 90 89 50 143 153 155 - - - ICCARM - 6 123 102 90 89 50 143 153 155 - - - - - $PROJ_DIR$\webserver\uIP_Task.c - - - BICOMP - 91 - - - ICCARM - 177 - - - - - BICOMP - 141 82 124 27 0 56 107 23 137 26 79 58 174 14 32 108 40 5 179 90 115 80 45 33 130 22 59 29 176 119 76 70 126 75 11 154 153 123 68 185 74 17 - - - ICCARM - 141 82 124 27 93 0 56 107 23 137 26 79 58 174 14 32 108 40 5 179 90 115 80 45 33 130 22 59 29 176 119 76 70 126 75 11 154 153 123 68 185 74 17 - - - - - $PROJ_DIR$\..\Common\Minimal\death.c - - - BICOMP - 3 - - - ICCARM - 121 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 112 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 112 - - - - - $PROJ_DIR$\startup_ewarm.c - - - BICOMP - 2 - - - ICCARM - 61 - - - - - $PROJ_DIR$\..\..\Source\list.c - - - BICOMP - 84 - - - ICCARM - 71 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 40 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 40 - - - - - $PROJ_DIR$\..\Common\Minimal\GenQTest.c - - - BICOMP - 78 - - - ICCARM - 8 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 179 5 184 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 179 5 184 - - - - - $PROJ_DIR$\..\Common\Minimal\blocktim.c - - - BICOMP - 117 - - - ICCARM - 69 - - - - - BICOMP - 26 79 82 124 27 0 56 107 23 58 174 14 32 108 40 179 53 - - - ICCARM - 26 79 82 124 27 93 0 56 107 23 58 174 14 32 108 40 179 53 - - - - - $PROJ_DIR$\..\Common\Minimal\PollQ.c - - - BICOMP - 145 - - - ICCARM - 38 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 179 57 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 179 57 - - - - - $PROJ_DIR$\..\Common\Minimal\BlockQ.c - - - BICOMP - 105 - - - ICCARM - 95 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 179 25 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 179 25 - - - - - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\uip_arp.c - - - BICOMP - 110 - - - ICCARM - 44 - - - - - BICOMP - 70 115 80 45 33 82 124 27 0 56 107 130 22 59 29 176 119 76 141 23 137 - - - ICCARM - 70 115 80 45 33 82 124 27 93 0 56 107 130 22 59 29 176 119 76 141 23 137 - - - - - $PROJ_DIR$\webserver\emac.c - - - BICOMP - 30 - - - ICCARM - 104 - - - - - BICOMP - 26 79 82 124 27 0 56 107 23 58 174 14 32 5 179 108 40 185 115 80 45 33 130 22 59 29 176 119 76 90 123 4 11 154 153 88 - - - ICCARM - 26 79 82 124 27 93 0 56 107 23 58 174 14 32 5 179 108 40 185 115 80 45 33 130 22 59 29 176 119 76 90 123 4 11 154 153 88 - - - - - $PROJ_DIR$\..\..\Source\tasks.c - - - BICOMP - 72 - - - ICCARM - 181 - - - - - BICOMP - 135 82 124 27 0 56 107 23 162 141 137 26 79 58 174 14 32 108 40 - - - ICCARM - 135 82 124 27 93 0 56 107 23 162 141 137 26 79 58 174 14 32 108 40 - - - - - $PROJ_DIR$\webserver\http-strings.c - - - BICOMP - 49 - - - ICCARM - 18 - - - - - $PROJ_DIR$\..\Common\Minimal\QPeek.c - - - BICOMP - 182 - - - ICCARM - 122 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 179 5 83 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 179 5 83 - - - - - $PROJ_DIR$\timertest.c - - - BICOMP - 73 - - - ICCARM - 136 - - - - - BICOMP - 26 79 82 124 27 0 56 107 23 58 174 14 32 4 123 90 88 153 37 - - - ICCARM - 26 79 82 124 27 93 0 56 107 23 58 174 14 32 4 123 90 88 153 37 - - - - - $PROJ_DIR$\..\Common\Minimal\semtest.c - - - BICOMP - 87 - - - ICCARM - 118 - - - - - BICOMP - 162 82 124 27 0 56 107 23 26 79 58 174 14 32 108 40 5 179 12 - - - ICCARM - 162 82 124 27 93 0 56 107 23 26 79 58 174 14 32 108 40 5 179 12 - - - - - $PROJ_DIR$\webserver\httpd-fs.c - - - BICOMP - 173 - - - ICCARM - 81 - - - - - BICOMP - 22 59 80 45 33 82 124 27 0 56 107 130 29 176 119 76 138 115 60 - - - ICCARM - 22 59 80 45 33 82 124 27 93 0 56 107 130 29 176 119 76 138 115 60 - - - - - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\uip.c - - - BICOMP - 62 - - - ICCARM - 99 - - - - - BICOMP - 115 80 45 33 82 124 27 0 56 107 130 22 59 29 176 119 76 96 141 23 137 - - - ICCARM - 115 80 45 33 82 124 27 93 0 56 107 130 22 59 29 176 119 76 96 141 23 137 - - - - - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\timer.c - - - BICOMP - 134 - - - ICCARM - 31 - - - - - BICOMP - 147 75 26 79 82 124 27 0 56 107 23 58 174 14 32 54 - - - ICCARM - 147 75 26 79 82 124 27 93 0 56 107 23 58 174 14 32 54 - - - - - $PROJ_DIR$\..\Common\ethernet\uIP\uip-1.0\uip\psock.c - - - BICOMP - 180 - - - ICCARM - 7 - - - - - BICOMP - 135 82 124 27 0 56 107 23 141 137 80 45 33 130 22 59 29 176 119 76 115 - - - ICCARM - 135 82 124 27 93 0 56 107 23 141 137 80 45 33 130 22 59 29 176 119 76 115 - - - - - $PROJ_DIR$\webserver\httpd.c - - - BICOMP - 125 - - - ICCARM - 111 - - - - - BICOMP - 115 80 45 33 82 124 27 0 56 107 130 22 59 29 176 119 76 13 86 141 23 137 - - - ICCARM - 115 80 45 33 82 124 27 93 0 56 107 130 22 59 29 176 119 76 13 86 141 23 137 - - - - - [ROOT_NODE] - - - ILINK - 1 - - - - - $PROJ_DIR$\LuminaryDrivers\osram128x64x4.c - ICCARM - - - - - diff --git a/Demo/CORTEX_LM3Sxxxx_IAR_Keil/RTOSDemo.xcl b/Demo/CORTEX_LM3Sxxxx_IAR_Keil/RTOSDemo.xcl deleted file mode 100644 index a7044e640..000000000 --- a/Demo/CORTEX_LM3Sxxxx_IAR_Keil/RTOSDemo.xcl +++ /dev/null @@ -1,56 +0,0 @@ -//***************************************************************************** -// -// webserver-lwip.xcl - Linker script for EW-ARM. -// -// Copyright (c) 2006-2007 Luminary Micro, Inc. All rights reserved. -// -// Software License Agreement -// -// Luminary Micro, Inc. (LMI) is supplying this software for use solely and -// exclusively on LMI's microcontroller products. -// -// The software is owned by LMI and/or its suppliers, and is protected under -// applicable copyright laws. All rights are reserved. Any use in violation -// of the foregoing restrictions may subject the user to criminal sanctions -// under applicable laws, as well as to civil liability for the breach of the -// terms and conditions of this license. -// -// THIS SOFTWARE IS PROVIDED AS IS. NO WARRANTIES, WHETHER EXPRESS, IMPLIED -// OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF -// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. -// LMI SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR -// CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. -// -//***************************************************************************** - -// -// Set the CPU type to ARM. -// --carm - -// -// Define the size of flash and SRAM. -// --DROMSTART=00000000 --DROMEND=00040000 --DRAMSTART=20000000 --DRAMEND=20010000 - - - -// -// Define the sections to place into flash, and the order to place them. -// --Z(CODE)INTVEC=ROMSTART-ROMEND --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)CODE=ROMSTART-ROMEND --Z(CONST)CODE_ID=ROMSTART-ROMEND --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - -// -// Define the sections to place into SRAM, and the order to place them. -// --Z(DATA)VTABLE=RAMSTART-RAMEND --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND --Z(DATA)CODE_I=RAMSTART-RAMEND diff --git a/Demo/CORTEX_STM32F103_IAR/lnkarm_flash.xcl b/Demo/CORTEX_STM32F103_IAR/lnkarm_flash.xcl deleted file mode 100644 index 060ab158f..000000000 --- a/Demo/CORTEX_STM32F103_IAR/lnkarm_flash.xcl +++ /dev/null @@ -1,194 +0,0 @@ -/*;******************** (C) COPYRIGHT 2007 STMicroelectronics ****************** -;* File Name : lnkarm_flash.xcl -;* Author : MCD Application Team -;* Date First Issued : 02/19/2007 -;* Description : XLINK command file template for EWARM/ICCARM -;* Usage : xlink -f lnkarm -;* :-s -;******************************************************************************* -; History: -; 04/02/2007: V0.2 -; 02/19/2007: V0.1 -;******************************************************************************* -; THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS -; WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. -; AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, -; INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE -; CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING -; INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. -;******************************************************************************/ - -// Code memory in FLASH --DROMSTART=0x8000000 --DROMEND=0x801FFFF - -// Data in RAM --DRAMSTART=0x20000000 --DRAMEND=0x20004FFF - -//************************************************************************* -// ------------- -// Code segments - may be placed anywhere in memory. -// ------------- -// -// INTVEC -- Exception vector table. -// SWITAB -- Software interrupt vector table. -// ICODE -- Startup (cstartup) and exception code. -// DIFUNCT -- Dynamic initialization vectors used by C++. -// CODE -- Compiler generated code. -// CODE_I -- Compiler generated code declared __ramfunc (executes in RAM) -// CODE_ID -- Initializer for CODE_I (ROM). -// -// ------------- -// Data segments - may be placed anywhere in memory. -// ------------- -// -// CSTACK -- The stack used by C/C++ programs (system and user mode). -// HEAP -- The heap used by malloc and free in C and new and -// delete in C++. -// INITTAB -- Table containing addresses and sizes of segments that -// need to be initialized at startup (by cstartup). -// CHECKSUM -- The linker places checksum byte(s) in this segment, -// when the -J linker command line option is used. -// DATA_y -- Data objects. -// -// Where _y can be one of: -// -// _AN -- Holds uninitialized located objects, i.e. objects with -// an absolute location given by the @ operator or the -// #pragma location directive. Since these segments -// contain objects which already have a fixed address, -// they should not be mentioned in this linker command -// file. -// _C -- Constants (ROM). -// _I -- Initialized data (RAM). -// _ID -- The original content of _I (copied to _I by cstartup) (ROM). -// _N -- Uninitialized data (RAM). -// _Z -- Zero initialized data (RAM). -// -// Note: Be sure to use end values for the defined address ranges. -// Otherwise, the linker may allocate space outside the -// intended memory range. -//************************************************************************* - - -//************************************************ -// Inform the linker about the CPU family used. -//************************************************ - --carm - -//************************************************************************* -// Segment placement - General information -// -// All numbers in the segment placement command lines below are interpreted -// as hexadecimal unless they are immediately preceded by a '.', which -// denotes decimal notation. -// -// When specifying the segment placement using the -P instead of the -Z -// option, the linker is free to split each segment into its segment parts -// and randomly place these parts within the given ranges in order to -// achieve a more efficient memory usage. One disadvantage, however, is -// that it is not possible to find the start or end address (using -// the assembler operators .sfb./.sfe.) of a segment which has been split -// and reformed. -// -// When generating an output file which is to be used for programming -// external ROM/Flash devices, the -M linker option is very useful -// (see xlink.pdf for details). -//************************************************************************* - - -//************************************************************************* -// Read-only segments mapped to ROM. -//************************************************************************* - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -//************************************************ - --Z(CODE)INTVEC=ROMSTART-ROMEND - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ - --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ - --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Original ROM location for __ramfunc code copied -// to and executed from RAM. -//************************************************ - --Z(CONST)CODE_ID=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ - --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - - -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* - -//************************************************ -// Data segments. -//************************************************ - --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ - --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// CODE_ID segment instead, but to keep symbol and -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - --QCODE_I=CODE_ID - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* - --D_CSTACK_SIZE=400 --D_HEAP_SIZE=4 - --Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND --Z(DATA)HEAP+_HEAP_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf - diff --git a/Demo/uIP_Demo_IAR_ARM7/SrcIAR/Cstartup.s79 b/Demo/uIP_Demo_IAR_ARM7/SrcIAR/Cstartup.s79 deleted file mode 100644 index b875618fc..000000000 --- a/Demo/uIP_Demo_IAR_ARM7/SrcIAR/Cstartup.s79 +++ /dev/null @@ -1,223 +0,0 @@ -;------------------------------------------------------------------------------ -;- ATMEL Microcontroller Software Support - ROUSSET - -;------------------------------------------------------------------------------ -; The software is delivered "AS IS" without warranty or condition of any -; kind, either express, implied or statutory. This includes without -; limitation any warranty or condition with respect to merchantability or -; fitness for any particular purpose, or against the infringements of -; intellectual property rights of others. -;----------------------------------------------------------------------------- -;- File source : Cstartup.s79 -;- Object : Generic CStartup for IAR No Use REMAP -;- Compilation flag : None -;- -;- 1.0 15/Jun/04 JPP : Creation -;------------------------------------------------------------------------------ - -#include "AT91SAM7X256_inc.h" - -;------------------------------------------------------------------------------ -;- Area Definition -;------------------------------------------------------------------------------ - -;--------------------------------------------------------------- -; ?RESET -; Reset Vector. -; Normally, segment INTVEC is linked at address 0. -; For debugging purposes, INTVEC may be placed at other -; addresses. -; A debugger that honors the entry point will start the -; program in a normal way even if INTVEC is not at address 0. -;------------------------------------------------------------- - - PROGRAM ?RESET - RSEG INTRAMSTART_REMAP - RSEG INTRAMEND_REMAP - - EXTERN vPortYieldProcessor - - RSEG ICODE:CODE:ROOT(2) - CODE32 ; Always ARM mode after reset - org 0 -reset -;------------------------------------------------------------------------------ -;- Exception vectors -;-------------------- -;- These vectors can be read at address 0 or at RAM address -;- They ABSOLUTELY requires to be in relative addresssing mode in order to -;- guarantee a valid jump. For the moment, all are just looping. -;- If an exception occurs before remap, this would result in an infinite loop. -;- To ensure if a exeption occurs before start application to infinite loop. -;------------------------------------------------------------------------------ - - B InitReset ; 0x00 Reset handler -undefvec: - B undefvec ; 0x04 Undefined Instruction -swivec: - B vPortYieldProcessor ; 0x08 Software Interrupt -pabtvec: - B pabtvec ; 0x0C Prefetch Abort -dabtvec: - B dabtvec ; 0x10 Data Abort -rsvdvec: - B rsvdvec ; 0x14 reserved -irqvec: - LDR PC, [PC, #-0xF20] ; Jump directly to the address given by the AIC - -fiqvec: ; 0x1c FIQ - -;------------------------------------------------------------------------------ -;- Function : FIQ_Handler_Entry -;- Treatments : FIQ Controller Interrupt Handler. -;- Called Functions : AIC_FVR[interrupt] -;------------------------------------------------------------------------------ - -FIQ_Handler_Entry: - -;- Switch in SVC/User Mode to allow User Stack access for C code -; because the FIQ is not yet acknowledged - -;- Save and r0 in FIQ_Register - mov r9,r0 - ldr r0 , [r8, #AIC_FVR] - msr CPSR_c,#I_BIT | F_BIT | ARM_MODE_SVC - -;- Save scratch/used registers and LR in User Stack - stmfd sp!, { r1-r3, r12, lr} - -;- Branch to the routine pointed by the AIC_FVR - mov r14, pc - bx r0 - -;- Restore scratch/used registers and LR from User Stack - ldmia sp!, { r1-r3, r12, lr} - -;- Leave Interrupts disabled and switch back in FIQ mode - msr CPSR_c, #I_BIT | F_BIT | ARM_MODE_FIQ - -;- Restore the R0 ARM_MODE_SVC register - mov r0,r9 - -;- Restore the Program Counter using the LR_fiq directly in the PC - subs pc,lr,#4 - -InitReset: -;------------------------------------------------------------------------------ -;- Low level Init (PMC, AIC, ? ....) by C function AT91F_LowLevelInit -;------------------------------------------------------------------------------ - EXTERN AT91F_LowLevelInit - -#define __iramend SFB(INTRAMEND_REMAP) - -;- minumum C initialization -;- call AT91F_LowLevelInit( void) - - ldr r13,=__iramend ; temporary stack in internal RAM -;--Call Low level init function in ABSOLUTE through the Interworking - ldr r0,=AT91F_LowLevelInit - mov lr, pc - bx r0 -;------------------------------------------------------------------------------ -;- Stack Sizes Definition -;------------------------ -;- Interrupt Stack requires 2 words x 8 priority level x 4 bytes when using -;- the vectoring. This assume that the IRQ management. -;- The Interrupt Stack must be adjusted depending on the interrupt handlers. -;- Fast Interrupt not requires stack If in your application it required you must -;- be definehere. -;- The System stack size is not defined and is limited by the free internal -;- SRAM. -;------------------------------------------------------------------------------ - -;------------------------------------------------------------------------------ -;- Top of Stack Definition -;------------------------- -;- Interrupt and Supervisor Stack are located at the top of internal memory in -;- order to speed the exception handling context saving and restoring. -;- ARM_MODE_SVC (Application, C) Stack is located at the top of the external memory. -;------------------------------------------------------------------------------ - -IRQ_STACK_SIZE EQU 300 - -ARM_MODE_FIQ EQU 0x11 -ARM_MODE_IRQ EQU 0x12 -ARM_MODE_SVC EQU 0x13 - -I_BIT EQU 0x80 -F_BIT EQU 0x40 - -;------------------------------------------------------------------------------ -;- Setup the stack for each mode -;------------------------------- - ldr r0, =__iramend - -;- Set up Fast Interrupt Mode and set FIQ Mode Stack - msr CPSR_c, #ARM_MODE_FIQ | I_BIT | F_BIT -;- Init the FIQ register - ldr r8, =AT91C_BASE_AIC - -;- Set up Interrupt Mode and set IRQ Mode Stack - msr CPSR_c, #ARM_MODE_IRQ | I_BIT | F_BIT - mov r13, r0 ; Init stack IRQ - sub r0, r0, #IRQ_STACK_SIZE - -;- Enable interrupt & Set up Supervisor Mode and set Supervisor Mode Stack - msr CPSR_c, #ARM_MODE_SVC - mov r13, r0 - - -;--------------------------------------------------------------- -; ?CSTARTUP -;--------------------------------------------------------------- - EXTERN __segment_init - EXTERN main -; Initialize segments. -; __segment_init is assumed to use -; instruction set and to be reachable by BL from the ICODE segment -; (it is safest to link them in segment ICODE). - ldr r0,=__segment_init - mov lr, pc - bx r0 - - PUBLIC __main -?jump_to_main: - ldr lr,=?call_exit - ldr r0,=main -__main: - bx r0 - -;------------------------------------------------------------------------------ -;- Loop for ever -;--------------- -;- End of application. Normally, never occur. -;- Could jump on Software Reset ( B 0x0 ). -;------------------------------------------------------------------------------ -?call_exit: -End - b End - - - -;--------------------------------------------------------------- -; ?EXEPTION_VECTOR -; This module is only linked if needed for closing files. -;--------------------------------------------------------------- - PUBLIC AT91F_Default_FIQ_handler - PUBLIC AT91F_Default_IRQ_handler - PUBLIC AT91F_Spurious_handler - - CODE32 ; Always ARM mode after exeption - -AT91F_Default_FIQ_handler - b AT91F_Default_FIQ_handler - -AT91F_Default_IRQ_handler - b AT91F_Default_IRQ_handler - -AT91F_Spurious_handler - b AT91F_Spurious_handler - - ENDMOD - - END - diff --git a/Demo/uIP_Demo_IAR_ARM7/resource/at91SAM7X256_NoRemap.xcl b/Demo/uIP_Demo_IAR_ARM7/resource/at91SAM7X256_NoRemap.xcl deleted file mode 100644 index 95fa2e1de..000000000 --- a/Demo/uIP_Demo_IAR_ARM7/resource/at91SAM7X256_NoRemap.xcl +++ /dev/null @@ -1,135 +0,0 @@ -// --------------------------------------------------------- -// ATMEL Microcontroller Software Support - ROUSSET - -// --------------------------------------------------------- -// The software is delivered "AS IS" without warranty or -// condition of any kind, either express, implied or -// statutory. This includes without limitation any warranty -// or condition with respect to merchantability or fitness -// for any particular purpose, or against the infringements of -// intellectual property rights of others. -// --------------------------------------------------------- -// File: at91SAM7x256_NoRemap.xlc -// -// -// $Revision: 1.1.1.1 $ -// -// --------------------------------------------------------- - -//************************************************************************* -// XLINK command file template for EWARM/ICCARM -// -// Usage: xlink -f lnkarm -// -s -// -// $Revision: 1.1.1.1 $ -//************************************************************************* - -//************************************************ -// Inform the linker about the CPU family used. -// AT91SAM7S64 Memory mapping -// No remap -// ROMSTART -// Start address 0x0000 0000 -// Size 256 Kbo 0x0004 0000 -// RAMSTART -// Start address 0x0020 0000 -// Size 64Kbo 0x0001 0000 -// Remap done -// RAMSTART -// Start address 0x0000 0000 -// Size 64Kbo 0x0001 0000 -// ROMSTART -// Start address 0x0010 0000 -// Size 256Kbo 0x0004 0000 - -//************************************************ --carm - -//************************************************************************* -// Internal Ram segments mapped AFTER REMAP 64K. -//************************************************************************* -// Use these addresses for the . --Z(CONST)INTRAMSTART_REMAP=00200000 --Z(CONST)INTRAMEND_REMAP=0020FFFF - -//************************************************************************* -// Read-only segments mapped to Flash 256K. -//************************************************************************* --DROMSTART=00000000 --DROMEND=0003FFFF -//************************************************************************* -// Read/write segments mapped to RAM. -//************************************************************************* --DRAMSTART=00200000 --DRAMEND=00200FFFF - -//************************************************ -// Address range for reset and exception -// vectors (INTVEC). -// The vector area is 32 bytes, -// an additional 32 bytes is allocated for the -// constant table used by ldr PC in cstartup.s79. -//************************************************ --Z(CODE)INTVEC=00-3F - -//************************************************ -// Startup code and exception routines (ICODE). -//************************************************ --Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND --Z(CODE)SWITAB=ROMSTART-ROMEND - -//************************************************ -// Code segments may be placed anywhere. -//************************************************ --Z(CODE)CODE=ROMSTART-ROMEND - -//************************************************ -// Various constants and initializers. -//************************************************ --Z(CONST)INITTAB,DATA_ID,DATA_C=ROMSTART-ROMEND --Z(CONST)CHECKSUM=ROMSTART-ROMEND - - -//************************************************ -// Data segments. -//************************************************ --Z(DATA)DATA_I,DATA_Z,DATA_N=RAMSTART-RAMEND - -//************************************************ -// __ramfunc code copied to and executed from RAM. -//************************************************ --Z(DATA)CODE_I=RAMSTART-RAMEND - -//************************************************ -// ICCARM produces code for __ramfunc functions in -// CODE_I segments. The -Q XLINK command line -// option redirects XLINK to emit the code in the -// debug information associated with the CODE_I -// segment, where the code will execute. -//************************************************ - -//************************************************************************* -// Stack and heap segments. -//************************************************************************* -//-D_CSTACK_SIZE=(400*4) -//-D_IRQ_STACK_SIZE=(2*8*4) - -//-Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND -//-Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE=RAMSTART-RAMEND - -//************************************************************************* -// ELF/DWARF support. -// -// Uncomment the line "-Felf" below to generate ELF/DWARF output. -// Available format specifiers are: -// -// "-yn": Suppress DWARF debug output -// "-yp": Multiple ELF program sections -// "-yas": Format suitable for debuggers from ARM Ltd (also sets -p flag) -// -// "-Felf" and the format specifiers can also be supplied directly as -// command line options, or selected from the Xlink Output tab in the -// IAR Embedded Workbench. -//************************************************************************* - -// -Felf