@ -1,101 +0,0 @@ | |||||
/* | |||||
* Copyright (C) 2013-2016 Fabio Utzig, http://fabioutzig.com | |||||
* (C) 2016 flabbergast <s3+flabbergast@sdfeu.org> | |||||
* | |||||
* Permission is hereby granted, free of charge, to any person obtaining | |||||
* a copy of this software and associated documentation files (the "Software"), | |||||
* to deal in the Software without restriction, including without limitation | |||||
* the rights to use, copy, modify, merge, publish, distribute, sublicense, | |||||
* and/or sell copies of the Software, and to permit persons to whom the | |||||
* Software is furnished to do so, subject to the following conditions: | |||||
* | |||||
* The above copyright notice and this permission notice shall be included in | |||||
* all copies or substantial portions of the Software. | |||||
* | |||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | |||||
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | |||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | |||||
* SOFTWARE. | |||||
*/ | |||||
/* | |||||
* MK20DX256 memory setup. | |||||
*/ | |||||
MEMORY | |||||
{ | |||||
flash0 : org = 0x00000000, len = 0x400 | |||||
flash1 : org = 0x00000400, len = 0x10 | |||||
flash2 : org = 0x00000410, len = 256k - 0x410 | |||||
flash3 : org = 0x00000000, len = 0 | |||||
flash4 : org = 0x00000000, len = 0 | |||||
flash5 : org = 0x00000000, len = 0 | |||||
flash6 : org = 0x00000000, len = 0 | |||||
flash7 : org = 0x00000000, len = 0 | |||||
ram0 : org = 0x1FFF8000, len = 64k | |||||
ram1 : org = 0x00000000, len = 0 | |||||
ram2 : org = 0x00000000, len = 0 | |||||
ram3 : org = 0x00000000, len = 0 | |||||
ram4 : org = 0x00000000, len = 0 | |||||
ram5 : org = 0x00000000, len = 0 | |||||
ram6 : org = 0x00000000, len = 0 | |||||
ram7 : org = 0x00000000, len = 0 | |||||
} | |||||
/* Flash region for the configuration bytes.*/ | |||||
SECTIONS | |||||
{ | |||||
.cfmprotect : ALIGN(4) SUBALIGN(4) | |||||
{ | |||||
KEEP(*(.cfmconfig)) | |||||
} > flash1 | |||||
} | |||||
/* For each data/text section two region are defined, a virtual region | |||||
and a load region (_LMA suffix).*/ | |||||
/* Flash region to be used for exception vectors.*/ | |||||
REGION_ALIAS("VECTORS_FLASH", flash0); | |||||
REGION_ALIAS("VECTORS_FLASH_LMA", flash0); | |||||
/* Flash region to be used for constructors and destructors.*/ | |||||
REGION_ALIAS("XTORS_FLASH", flash2); | |||||
REGION_ALIAS("XTORS_FLASH_LMA", flash2); | |||||
/* Flash region to be used for code text.*/ | |||||
REGION_ALIAS("TEXT_FLASH", flash2); | |||||
REGION_ALIAS("TEXT_FLASH_LMA", flash2); | |||||
/* Flash region to be used for read only data.*/ | |||||
REGION_ALIAS("RODATA_FLASH", flash2); | |||||
REGION_ALIAS("RODATA_FLASH_LMA", flash2); | |||||
/* Flash region to be used for various.*/ | |||||
REGION_ALIAS("VARIOUS_FLASH", flash2); | |||||
REGION_ALIAS("VARIOUS_FLASH_LMA", flash2); | |||||
/* Flash region to be used for RAM(n) initialization data.*/ | |||||
REGION_ALIAS("RAM_INIT_FLASH_LMA", flash2); | |||||
/* RAM region to be used for Main stack. This stack accommodates the processing | |||||
of all exceptions and interrupts.*/ | |||||
REGION_ALIAS("MAIN_STACK_RAM", ram0); | |||||
/* RAM region to be used for the process stack. This is the stack used by | |||||
the main() function.*/ | |||||
REGION_ALIAS("PROCESS_STACK_RAM", ram0); | |||||
/* RAM region to be used for data segment.*/ | |||||
REGION_ALIAS("DATA_RAM", ram0); | |||||
REGION_ALIAS("DATA_RAM_LMA", flash2); | |||||
/* RAM region to be used for BSS segment.*/ | |||||
REGION_ALIAS("BSS_RAM", ram0); | |||||
/* RAM region to be used for the default heap.*/ | |||||
REGION_ALIAS("HEAP_RAM", ram0); | |||||
/* Generic rules inclusion.*/ | |||||
INCLUDE rules.ld |
@ -1,105 +0,0 @@ | |||||
/* | |||||
* Copyright (C) 2013-2016 Fabio Utzig, http://fabioutzig.com | |||||
* (C) 2016 flabbergast <s3+flabbergast@sdfeu.org> | |||||
* | |||||
* Permission is hereby granted, free of charge, to any person obtaining | |||||
* a copy of this software and associated documentation files (the "Software"), | |||||
* to deal in the Software without restriction, including without limitation | |||||
* the rights to use, copy, modify, merge, publish, distribute, sublicense, | |||||
* and/or sell copies of the Software, and to permit persons to whom the | |||||
* Software is furnished to do so, subject to the following conditions: | |||||
* | |||||
* The above copyright notice and this permission notice shall be included in | |||||
* all copies or substantial portions of the Software. | |||||
* | |||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | |||||
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | |||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | |||||
* SOFTWARE. | |||||
*/ | |||||
/* | |||||
* KL26Z64 memory setup. | |||||
*/ | |||||
MEMORY | |||||
{ | |||||
flash0 : org = 0x00000000, len = 0x100 | |||||
flash1 : org = 0x00000400, len = 0x10 | |||||
flash2 : org = 0x00000410, len = 62k - 0x410 | |||||
flash3 : org = 0x0000F800, len = 2k | |||||
flash4 : org = 0x00000000, len = 0 | |||||
flash5 : org = 0x00000000, len = 0 | |||||
flash6 : org = 0x00000000, len = 0 | |||||
flash7 : org = 0x00000000, len = 0 | |||||
ram0 : org = 0x1FFFF800, len = 8k | |||||
ram1 : org = 0x00000000, len = 0 | |||||
ram2 : org = 0x00000000, len = 0 | |||||
ram3 : org = 0x00000000, len = 0 | |||||
ram4 : org = 0x00000000, len = 0 | |||||
ram5 : org = 0x00000000, len = 0 | |||||
ram6 : org = 0x00000000, len = 0 | |||||
ram7 : org = 0x00000000, len = 0 | |||||
} | |||||
/* Flash region for the configuration bytes.*/ | |||||
SECTIONS | |||||
{ | |||||
.cfmprotect : ALIGN(4) SUBALIGN(4) | |||||
{ | |||||
KEEP(*(.cfmconfig)) | |||||
} > flash1 | |||||
} | |||||
/* For each data/text section two region are defined, a virtual region | |||||
and a load region (_LMA suffix).*/ | |||||
/* Flash region to be used for exception vectors.*/ | |||||
REGION_ALIAS("VECTORS_FLASH", flash0); | |||||
REGION_ALIAS("VECTORS_FLASH_LMA", flash0); | |||||
/* Flash region to be used for constructors and destructors.*/ | |||||
REGION_ALIAS("XTORS_FLASH", flash2); | |||||
REGION_ALIAS("XTORS_FLASH_LMA", flash2); | |||||
/* Flash region to be used for code text.*/ | |||||
REGION_ALIAS("TEXT_FLASH", flash2); | |||||
REGION_ALIAS("TEXT_FLASH_LMA", flash2); | |||||
/* Flash region to be used for read only data.*/ | |||||
REGION_ALIAS("RODATA_FLASH", flash2); | |||||
REGION_ALIAS("RODATA_FLASH_LMA", flash2); | |||||
/* Flash region to be used for various.*/ | |||||
REGION_ALIAS("VARIOUS_FLASH", flash2); | |||||
REGION_ALIAS("VARIOUS_FLASH_LMA", flash2); | |||||
/* Flash region to be used for RAM(n) initialization data.*/ | |||||
REGION_ALIAS("RAM_INIT_FLASH_LMA", flash2); | |||||
/* RAM region to be used for Main stack. This stack accommodates the processing | |||||
of all exceptions and interrupts.*/ | |||||
REGION_ALIAS("MAIN_STACK_RAM", ram0); | |||||
/* RAM region to be used for the process stack. This is the stack used by | |||||
the main() function.*/ | |||||
REGION_ALIAS("PROCESS_STACK_RAM", ram0); | |||||
/* RAM region to be used for data segment.*/ | |||||
REGION_ALIAS("DATA_RAM", ram0); | |||||
REGION_ALIAS("DATA_RAM_LMA", flash2); | |||||
/* RAM region to be used for BSS segment.*/ | |||||
REGION_ALIAS("BSS_RAM", ram0); | |||||
/* RAM region to be used for the default heap.*/ | |||||
REGION_ALIAS("HEAP_RAM", ram0); | |||||
__eeprom_workarea_start__ = ORIGIN(flash3); | |||||
__eeprom_workarea_size__ = LENGTH(flash3); | |||||
__eeprom_workarea_end__ = __eeprom_workarea_start__ + __eeprom_workarea_size__; | |||||
/* Generic rules inclusion.*/ | |||||
INCLUDE rules.ld |
@ -1,5 +1,6 @@ | |||||
# MCU name | # MCU name | ||||
MCU = MKL26Z64 | MCU = MKL26Z64 | ||||
USE_CHIBIOS_CONTRIB = yes | |||||
# Enter lower-power sleep mode when on the ChibiOS idle thread | # Enter lower-power sleep mode when on the ChibiOS idle thread | ||||
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE | OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE |