blue-pill: copying linker script over
This commit is contained in:
		
							parent
							
								
									943e2bfa93
								
							
						
					
					
						commit
						5f5c4ac7ae
					
				| 
						 | 
					@ -1,11 +1,18 @@
 | 
				
			||||||
MEMORY
 | 
					MEMORY
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    flash (rx) : ORIGIN = 0x00000000, LENGTH = 128K
 | 
					    flash (rx) : ORIGIN = 0x08000000, LENGTH = 64K
 | 
				
			||||||
    sram (rwx) : ORIGIN = 0x20000000, LENGTH = 20K
 | 
					    sram (rwx) : ORIGIN = 0x20000000, LENGTH = 20K
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					EXTERN(vectors);
 | 
				
			||||||
 | 
					ENTRY(reset_handler);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
SECTIONS
 | 
					SECTIONS
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
   .text : { *(.text*) } > flash
 | 
						.text : {
 | 
				
			||||||
   .bss  : { *(.bss*) } > sram
 | 
							*(.vectors*)
 | 
				
			||||||
 | 
					 		*(.text*)
 | 
				
			||||||
 | 
							. = ALIGN(4);
 | 
				
			||||||
 | 
						} > flash
 | 
				
			||||||
 | 
						.bss  : { *(.bss*) } > sram
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,29 +8,26 @@
 | 
				
			||||||
.cpu cortex-m3
 | 
					.cpu cortex-m3
 | 
				
			||||||
.thumb
 | 
					.thumb
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.globl	vectors
 | 
					.section .text
 | 
				
			||||||
 | 
					.global	vectors
 | 
				
			||||||
vectors:
 | 
					vectors:
 | 
				
			||||||
.align	2
 | 
					.align	2
 | 
				
			||||||
.long	0x20002000		/* best guess at stack pointer */
 | 
					.long	0x100			/* best guess at stack pointer */
 | 
				
			||||||
.long	reset_handler		/* reset handler */
 | 
					.long	reset_handler		/* reset handler */
 | 
				
			||||||
.long	hang			/* NMI handler */
 | 
					.long	0			/* NMI handler */
 | 
				
			||||||
.long	hang			/* hard_fault_handler */
 | 
					.long	0			/* hard_fault_handler */
 | 
				
			||||||
.long	hang			/* memory management handler */
 | 
					.long	0			/* memory management handler */
 | 
				
			||||||
.long	hang			/* bus fault handler */
 | 
					.long	0			/* bus fault handler */
 | 
				
			||||||
.long	hang			/* usage fault handler */
 | 
					.long	0			/* usage fault handler */
 | 
				
			||||||
.skip	0x20			/* reserved */
 | 
					.skip	0x20			/* reserved */
 | 
				
			||||||
.long	hang			/* svcall handler */
 | 
					.long	0			/* svcall handler */
 | 
				
			||||||
.long	hang			/* debug handler */
 | 
					.long	0			/* debug handler */
 | 
				
			||||||
.skip	4			/* reserved */
 | 
					.skip	4			/* reserved */
 | 
				
			||||||
.long	hang			/* pendsv handler */
 | 
					.long	0			/* pendsv handler */
 | 
				
			||||||
.long	hang			/* systick handler */
 | 
					.long	0			/* systick handler */
 | 
				
			||||||
.skip   0x100			/* remaining / IRQ vectors */
 | 
					.skip   0xf4			/* remaining / IRQ vectors */
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.thumb_func
 | 
					 | 
				
			||||||
hang:   b .
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
.thumb_func
 | 
					.thumb_func
 | 
				
			||||||
 | 
					.global	reset_handler
 | 
				
			||||||
reset_handler:
 | 
					reset_handler:
 | 
				
			||||||
	bl	main
 | 
						bl	main
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,7 +4,6 @@ constexpr uint32_t	LED = 13;
 | 
				
			||||||
constexpr unsigned long	SDELAY = 100000;
 | 
					constexpr unsigned long	SDELAY = 100000;
 | 
				
			||||||
constexpr unsigned long LDELAY = (SDELAY * 10) - (3 * SDELAY);
 | 
					constexpr unsigned long LDELAY = (SDELAY * 10) - (3 * SDELAY);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// void __attribute__ ((weak, naked)) reset_handler(void) {
 | 
					 | 
				
			||||||
int
 | 
					int
 | 
				
			||||||
main() {
 | 
					main() {
 | 
				
			||||||
    GPIO_C->enable_clock();
 | 
					    GPIO_C->enable_clock();
 | 
				
			||||||
| 
						 | 
					@ -21,4 +20,3 @@ main() {
 | 
				
			||||||
	    delay(SDELAY);
 | 
						    delay(SDELAY);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,6 @@
 | 
				
			||||||
MEMORY
 | 
					MEMORY
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    flash (rx) : ORIGIN = 0x08000000, LENGTH = 64K
 | 
					    flash (rx) : ORIGIN = 0x08000000, LENGTH = 128K
 | 
				
			||||||
    sram (rwx) : ORIGIN = 0x20000000, LENGTH = 20K
 | 
					    sram (rwx) : ORIGIN = 0x20000000, LENGTH = 20K
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -10,9 +10,8 @@ ENTRY(reset_handler);
 | 
				
			||||||
SECTIONS
 | 
					SECTIONS
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	.text : {
 | 
						.text : {
 | 
				
			||||||
		*(.vectors*)
 | 
							*(.vectors)
 | 
				
			||||||
 		*(.text*)
 | 
					 		*(.text*)
 | 
				
			||||||
		. = ALIGN(4);
 | 
							. = ALIGN(4);
 | 
				
			||||||
	} > flash
 | 
						} > flash
 | 
				
			||||||
	.bss  : { *(.bss*) } > sram
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,11 +1,18 @@
 | 
				
			||||||
MEMORY
 | 
					MEMORY
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    flash (rx) : ORIGIN = 0x00000000, LENGTH = 128K
 | 
					    flash (rx) : ORIGIN = 0x08000000, LENGTH = 64K
 | 
				
			||||||
    sram (rwx) : ORIGIN = 0x20000000, LENGTH = 20K
 | 
					    sram (rwx) : ORIGIN = 0x20000000, LENGTH = 20K
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					EXTERN(vectors);
 | 
				
			||||||
 | 
					ENTRY(reset_handler);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
SECTIONS
 | 
					SECTIONS
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
   .text : { *(.text*) } > flash
 | 
						.text : {
 | 
				
			||||||
   .bss  : { *(.bss*) } > sram
 | 
							*(.vectors*)
 | 
				
			||||||
 | 
					 		*(.text*)
 | 
				
			||||||
 | 
							. = ALIGN(4);
 | 
				
			||||||
 | 
						} > flash
 | 
				
			||||||
 | 
						.bss  : { *(.bss*) } > sram
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue