| 
									
										
										
										
											2016-10-06 14:21:30 +03:00
										 |  |  | /* ESP32 Linker Script Memory Layout | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    This file describes the memory layout (memory blocks) as virtual | 
					
						
							|  |  |  |    memory addresses. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    esp32.common.ld contains output sections to link compiler output | 
					
						
							|  |  |  |    into these memory blocks. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    *** | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    This linker script is passed through the C preprocessor to include | 
					
						
							|  |  |  |    configuration options. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    Please use preprocessor features sparingly! Restrict | 
					
						
							|  |  |  |    to simple macros with numeric values, and/or #if/#endif blocks. | 
					
						
							|  |  |  | */ | 
					
						
							|  |  |  | /* | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * Automatically generated file; DO NOT EDIT. | 
					
						
							|  |  |  |  * Espressif IoT Development Framework Configuration | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | MEMORY | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   /* All these values assume the flash cache is on, and have the blocks this uses subtracted from the length | 
					
						
							|  |  |  |   of the various regions. The 'data access port' dram/drom regions map to the same iram/irom regions but | 
					
						
							|  |  |  |   are connected to the data port of the CPU and eg allow bytewise access. */ | 
					
						
							|  |  |  |   /* IRAM for PRO cpu. Not sure if happy with this, this is MMU area... */ | 
					
						
							|  |  |  |   iram0_0_seg (RX) : org = 0x40080000, len = 0x20000 | 
					
						
							|  |  |  |   /* Even though the segment name is iram, it is actually mapped to flash */ | 
					
						
							|  |  |  |   iram0_2_seg (RX) : org = 0x400D0018, len = 0x330000 | 
					
						
							|  |  |  |   /* Shared data RAM, excluding memory reserved for ROM bss/data/stack. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      Enabling Bluetooth & Trace Memory features in menuconfig will decrease | 
					
						
							|  |  |  |      the amount of RAM available. | 
					
						
							|  |  |  |   */ | 
					
						
							| 
									
										
										
										
											2016-11-28 01:11:36 +02:00
										 |  |  |   dram0_0_seg (RW) : org = 0x3FFB0000 + 0x10000, | 
					
						
							|  |  |  |                                      len = 0x50000 - 0x0 - 0x10000 | 
					
						
							| 
									
										
										
										
											2016-10-06 14:21:30 +03:00
										 |  |  |   /* Flash mapped constant data */ | 
					
						
							|  |  |  |   drom0_0_seg (R) : org = 0x3F400010, len = 0x800000 | 
					
						
							|  |  |  |   /* RTC fast memory (executable). Persists over deep sleep. | 
					
						
							|  |  |  |    */ | 
					
						
							|  |  |  |   rtc_iram_seg(RWX) : org = 0x400C0000, len = 0x2000 | 
					
						
							|  |  |  |   /* RTC slow memory (data accessible). Persists over deep sleep. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      Start of RTC slow memory is reserved for ULP co-processor code + data, if enabled. | 
					
						
							|  |  |  |   */ | 
					
						
							| 
									
										
										
										
											2016-12-30 01:28:30 +02:00
										 |  |  |   rtc_slow_seg(RW) : org = 0x50000000 + 512, | 
					
						
							|  |  |  |                                      len = 0x1000 - 512 | 
					
						
							| 
									
										
										
										
											2016-10-06 14:21:30 +03:00
										 |  |  | } | 
					
						
							|  |  |  | /* Heap ends at top of dram0_0_seg */ | 
					
						
							|  |  |  | _heap_end = 0x40000000 - 0x0; |