mirror of
				https://github.com/Proxmark/proxmark3.git
				synced 2025-10-31 16:48:38 +08:00 
			
		
		
		
	- added compiler options -fdata-sections and -ffunction-sections (thanks to iceman for the hint) - removed float operations from common/lfdemod.c to avoid adding float libraries to the ARM os image - moved the fpga images to the data section to avoid reserving unused space for a separate section
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| /*
 | |
| -----------------------------------------------------------------------------
 | |
|  This code is licensed to you under the ter 
 | |
| ms of the GNU GPL, version 2 or,
 | |
|  at your option, any later version. See the LICENSE.txt file for the text of
 | |
|  the license.
 | |
| -----------------------------------------------------------------------------
 | |
|  Common linker script
 | |
| -----------------------------------------------------------------------------
 | |
| */
 | |
| 
 | |
| /* AT91SAM7S256 has 256k Flash and 64k RAM */
 | |
| MEMORY 
 | |
| {
 | |
| 	bootphase1 : ORIGIN = 0x00100000, LENGTH = 0x200             /* Phase 1 bootloader: Copies real bootloader to RAM */
 | |
| 	bootphase2 : ORIGIN = 0x00100200, LENGTH = 0x2000 - 0x200    /* Main bootloader code, stored in Flash, executed from RAM */
 | |
| 	osimage    : ORIGIN = 0x00102000, LENGTH = 256K - 0x2000     /* Place where the main OS will end up */
 | |
| 	ram        : ORIGIN = 0x00200000, LENGTH = 64K - 0x20        /* RAM, minus small common area */
 | |
| 	commonarea : ORIGIN = 0x00200000 + 64K - 0x20, LENGTH = 0x20 /* Communication between bootloader and main OS */
 | |
| }
 | |
| 
 | |
| /* Export some information that can be used from within the firmware */
 | |
| _bootphase1_version_pointer = ORIGIN(bootphase1) + LENGTH(bootphase1) - 0x4;
 | |
| _osimage_entry = ORIGIN(osimage);
 | |
| _bootrom_start = ORIGIN(bootphase1);
 | |
| _bootrom_end = ORIGIN(bootphase2) + LENGTH(bootphase2);
 | |
| _flash_start = ORIGIN(bootphase1);
 | |
| _flash_end = ORIGIN(osimage) + LENGTH(osimage);
 | |
| _stack_end = ORIGIN(ram) + LENGTH(ram) - 8;
 |