mbed-os/workspace_tools/targets.py

692 lines
16 KiB
Python
Raw Normal View History

2013-08-06 13:38:00 +00:00
"""
mbed SDK
Copyright (c) 2011-2013 ARM Limited
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
2013-08-06 13:38:00 +00:00
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""
CORE_LABELS = {
"ARM7TDMI-S": "ARM7",
"Cortex-M0" : "M0",
"Cortex-M0+": "M0P",
"Cortex-M3" : "M3",
"Cortex-M4" : "M4",
2013-12-06 14:19:56 +00:00
"Cortex-M4F" : "M4"
}
import os
import shutil
2013-11-25 16:32:46 +00:00
class Target:
def __init__(self):
# ARM Core
self.core = None
2013-08-09 16:18:50 +00:00
# Is the disk provided by the interface chip of this board virtual?
self.is_disk_virtual = False
2013-08-09 16:18:50 +00:00
# list of toolchains that are supported by the mbed SDK for this target
self.supported_toolchains = None
2013-08-09 16:18:50 +00:00
# list of extra specific labels
self.extra_labels = []
Target K64F addition. Squashed commit of the following: commit db3c9f7682083abeb291e01df31e67e4c50845b3 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Apr 2 09:52:00 2014 +0200 K64F - KSDK - Warnings fixes commit a639a5cdff889c13509c954b0a34ebac861c1361 Merge: 67a2c2a f3de345 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Apr 1 12:48:35 2014 +0200 Merge branch latest 'master' into dev_target_k64f Conflicts: libraries/rtos/rtx/RTX_Conf_CM.c workspace_tools/build_api.py commit 67a2c2aeb976f264db52ea10d18fea9de0d7685f Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 30 13:19:51 2014 +0200 K64F - PinName for buttons (SW2, SW3) commit 957573e2cd42d5c73ed99477abb98c8b883695b2 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 25 11:46:57 2014 +0100 K64F - pins addition to mbed HAL, uart - 4 instances, fix i2c instance which was not stored commit 2347a6d03984e297190910a250f2771032ae6327 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 15:20:51 2014 -0500 Added wait to i2c stop commit b7b4a9c72e8724087a44078c41a2cb33e4c8d5e3 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 24 19:28:16 2014 +0100 K64F - I2c - ack flag retreive correction (logic inverted in ksdk hal) commit 46c875251263029e32463c3b48473b10496088d9 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 13:16:18 2014 -0500 Added I2C Pinnames commit b71c7a0dfba7025662f9a9d176494ce4dc86273e Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 17:02:34 2014 +0100 K64F Arduino pinNames update commit d41b0ee493263d1d80fcb72b3f0d4d788359c7c9 Merge: 9c0a982 e2574eb Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 14:57:57 2014 +0100 Merge remote-tracking branch 'upstream/master' into dev_target_k64f. K64F gpio changed according to the latest mbed master. Conflicts: libraries/rtos/rtx/RTX_CM_lib.h workspace_tools/export/uvision4.py commit 9c0a9822ab14263fff5e3b6459b7c2b4a77ce30c Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 17 21:08:17 2014 +0100 K64F - sleep support commit 5edcf3603d2e7b00eedbb377203a054b7a01e51d Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 16 18:19:55 2014 +0100 K64F - pullup/down corrections, LED1 - R, LED2 - G, LED3 - B commit a2b3b53a1474d32779654765cd1ce2ba2c6b2186 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 13 20:55:39 2014 +0100 K64F - SPI - delays are set, pin definition for tests commit 1f3b3abe16f4afaaf1b75cb4bf3e3a9d5b6e50a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 21:26:00 2014 +0100 K64F - DAC update - tested with test a8 - internal reference set to VDDA - PinName DAC0_OUT commit 26d8cf47f8c0786b290ae659beb022901029b313 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 08:31:44 2014 +0100 KSDK - drivers layer removal, mbed HAL using only KSDK HAL - ADC corrections with channels, and clock configuration commit 67ebe14f5c88725033ea0fb135d94b6bf9a00fdb Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:46:08 2014 +0100 K20 copy files removed, targets.py - vertical alignment for K64F definition commit be5c562d513c808e5bd425195a4fb1c71f47a57e Merge: 696a713 fe0aca9 Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:14:55 2014 +0000 Merge branch 'rtos_support' into dev_target_k64f commit 696a713751194b4762f1cdf6c17c0786decd7808 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:05:30 2014 +0100 [FIX] K64F - adc, sgtl driver updates commit fe0aca9940bbdd5ee70a1a7341a0a2ad2abf912b Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:04:16 2014 +0000 Add RTOS support for K64F commit 5c3edcbca6dbcce628c7cde51ac94a6fc6278ba5 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 9 20:43:38 2014 +0100 K64F - uvision templates update - uvision 5.10 supports K64F commit 33f18d11d0eadb9243f1be0ae96c5f82e2913d48 Merge: 26f7587 74e9b2e Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Mar 8 10:34:25 2014 +0100 Update branch from mbed master - merge branch 'master' into dev_target_k64f Conflicts: libraries/USBDevice/USBDevice/USBEndpoints.h libraries/USBDevice/USBDevice/USBHAL_KL25Z.cpp workspace_tools/export/uvision4.py workspace_tools/targets.py commit 26f75872b19a1db2a3abb34c6e773bac56acb32f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 6 22:15:53 2014 +0100 K64F - USBDevice - MPU disable in init commit e54d6bbaa68827bd63058fbf2428e289d15ac1f7 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 21:06:58 2014 +0100 K64F - clock setup 4 (usb clock enable) commit c4165732b9520cb31ae3d649d50c353d09dc9932 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 20:01:47 2014 +0100 K64F - USBDevice addition commit 9fcdbb8562b1415561b04e902fcdbb4724add5af Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 24 19:11:48 2014 +0100 K64F SPI HAL - initial version commit 8093df58fa7d17fcb5ad04872c958d5254ee1d8a Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Feb 22 13:14:44 2014 +0100 K64F - RTC and I2C implementation (using KPSDK HAL) - instance correction in objects and peripherals names headers commit 7ef3fbda605c2bd53a86f37d0676c0393b2e2949 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Feb 14 09:45:27 2014 +0100 mbed RTC HAL for K64F commit e40332fd2db8bf36b3e6cabac5729e013da40c28 Merge: e059f65 6bfcd87 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Feb 13 14:20:20 2014 +0100 Merge branch 'master' into dev_target_k64f Conflicts: workspace_tools/build_api.py workspace_tools/export/uvision4.py workspace_tools/targets.py workspace_tools/toolchains/__init__.py commit e059f65fd09694418f9fa4f38da90954ab9decfe Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 5 21:35:49 2014 +0100 pwm mbed HAL - using jusst ftm hal from KPSDK, not yet functional commit b784278872b1d66ce2940f4988e0479971de8bc0 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 3 18:28:24 2014 +0100 uvision exporters for K64F, uticker - lptmr - lptmr - no hal neiter driver, quick implementation using registers and internal clock - exporters for K64F - using K60 1MB target, because K64F is not available in 4.7 yet commit 7a030693e025c2bd456563f3e6f4456033d3f644 Author: Bogdan Marinescu <bogdan.marinescu@arm.com> Date: Tue Jan 28 16:29:54 2014 +0200 Attempt to keep target's include directory structure commit a2445b383224125abf4ee23bd17f1e685010a4a5 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 27 07:25:16 2014 +0100 Original KPSDK include directory structure for device commit 9c07c58bb9cf5e9d8be4c3bec117ee87a5ea81c0 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 16:51:17 2014 +0000 K64F ADC - initial commit - ADC using KPSDK driver commit 88e03ef8c5855a57887bb36cddfa5ab1491d400c Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 12:18:14 2014 +0000 GPI IRQ - nvic vectors number correction - gpio irq HAL implementation commit e83f1108ae9f779ce240d6cdfe23532bfa00a55e Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 10:06:44 2014 +0000 PORT HAL implementation - using gpio hal port commit 75c21943200c8240d1edaf0a67f84b9f3b43db7f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 16:02:36 2014 +0000 Serial (only 8bit at the moment), using KPSDK HAL commit 296e79def617f005918cd8e2aa574f2908a362ca Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 08:35:50 2014 +0000 Folder structure correction for K64F - KPSDK - scripts reverted, only new macro is available - K64F specific headers are in HAL in device folder commit f236b1ffcb9c8b443ad8483bca8b0e564a63f004 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Jan 22 16:07:30 2014 +0100 update KPSDK to RC1 - the update causes few more dependences which were reported. Will be removed later (usb, boards) - pit timer - hal use , pit driver uses us period commit f02c5353d4920e885f803ad235e5e82001e97b94 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:45:55 2014 +0100 KPSDK In/out declaration removal commit 8c88e098b4dc4901753309f1e6db4adb8aca4384 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:12:41 2014 +0100 gpio_t struct only needs pinName - gpio_init creates init objects on stack commit 6b96d4ea2c5a6a2cb13571d740ffb679a62f8f3d Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 19:59:03 2014 +0100 us ticker - pit implementation (not functional yet) - pit driver in KPSDK - added sdk prefix to needed functions commit 098e60a3846abcd4c9c00bd199b01d4b1899807f Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 13:01:58 2014 +0100 GPIO HAL - gpio_set implementation commit 2bfebbfc75dcd08c20297ba42dc0cc82e5381a40 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Jan 19 20:46:55 2014 +0100 GPIO KPSDK changes - gpio driver - sdk prefix, no lookuptable, input/output declaration, refactoring, set MUX to GPIO - gpio api in mbed implementation, tested on blue led commit d083733c485fbdd79ed9ce87100df9fee82294a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Jan 18 17:14:09 2014 +0100 Update folder structure for KPSDK - drivers addition - usb (needed by drivers - needs to be fixed) - utilities - hal folder - drivers/flash removed (needs to be fixed) - usb host removed (needs to be fixed) commit 9abcf3d94a2cc849cd6e586c1bad650b6a340a0c Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 16 11:06:16 2014 +0100 Initial commit for K64F - KPSDK addition - CMSIS + HAL for K64F - HAL is not yet implemented - scripts - target contain macros, ignore folders, cmsis copy folders
2014-04-02 12:39:01 +00:00
# list of macros (-D)
self.macros = []
self.name = self.__class__.__name__
2013-08-09 16:18:50 +00:00
def program_cycle_s(self):
return 4 if self.is_disk_virtual else 1.5
2013-08-09 16:18:50 +00:00
def get_labels(self):
return [self.name, CORE_LABELS[self.core]] + self.extra_labels
def init_hooks(self, hook, toolchain_name):
pass
2013-11-25 16:32:46 +00:00
class LPC2368(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "ARM7TDMI-S"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['NXP', 'LPC23XX']
2013-08-09 16:18:50 +00:00
self.supported_toolchains = ["ARM","GCC_ARM","GCC_CR"]
class LPC1768(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "Cortex-M3"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['NXP', 'LPC176X', 'MBED_LPC1768']
2013-08-09 16:18:50 +00:00
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CS", "GCC_CR", "IAR"]
class LPC11U24(Target):
ONLINE_TOOLCHAIN = "uARM"
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "Cortex-M0"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['NXP', 'LPC11UXX', 'LPC11U24_401']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
2013-08-09 16:21:03 +00:00
class LPC11U24_301(Target):
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0"
self.extra_labels = ['NXP', 'LPC11UXX']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
class KL05Z(Target):
ONLINE_TOOLCHAIN = "uARM"
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "Cortex-M0+"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['Freescale', 'KLXX']
2013-08-09 16:18:50 +00:00
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
2013-08-09 16:18:50 +00:00
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
class KL25Z(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "Cortex-M0+"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['Freescale', 'KLXX']
2013-08-09 16:18:50 +00:00
2013-08-02 05:14:36 +00:00
self.supported_toolchains = ["ARM", "GCC_CW_EWL", "GCC_CW_NEWLIB", "GCC_ARM"]
2013-08-09 16:18:50 +00:00
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
2013-09-24 14:01:06 +00:00
class KL46Z(Target):
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0+"
self.extra_labels = ['Freescale', 'KLXX']
2013-09-29 18:40:06 +00:00
self.supported_toolchains = ["GCC_ARM", "ARM"]
self.supported_form_factors = ["ARDUINO"]
2013-09-24 14:01:06 +00:00
self.is_disk_virtual = True
2013-09-24 14:36:04 +00:00
class K20D5M(Target):
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M4"
self.extra_labels = ['Freescale']
self.supported_toolchains = ["GCC_ARM", "ARM"]
2013-09-24 14:36:04 +00:00
self.is_disk_virtual = True
Target K64F addition. Squashed commit of the following: commit db3c9f7682083abeb291e01df31e67e4c50845b3 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Apr 2 09:52:00 2014 +0200 K64F - KSDK - Warnings fixes commit a639a5cdff889c13509c954b0a34ebac861c1361 Merge: 67a2c2a f3de345 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Apr 1 12:48:35 2014 +0200 Merge branch latest 'master' into dev_target_k64f Conflicts: libraries/rtos/rtx/RTX_Conf_CM.c workspace_tools/build_api.py commit 67a2c2aeb976f264db52ea10d18fea9de0d7685f Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 30 13:19:51 2014 +0200 K64F - PinName for buttons (SW2, SW3) commit 957573e2cd42d5c73ed99477abb98c8b883695b2 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 25 11:46:57 2014 +0100 K64F - pins addition to mbed HAL, uart - 4 instances, fix i2c instance which was not stored commit 2347a6d03984e297190910a250f2771032ae6327 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 15:20:51 2014 -0500 Added wait to i2c stop commit b7b4a9c72e8724087a44078c41a2cb33e4c8d5e3 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 24 19:28:16 2014 +0100 K64F - I2c - ack flag retreive correction (logic inverted in ksdk hal) commit 46c875251263029e32463c3b48473b10496088d9 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 13:16:18 2014 -0500 Added I2C Pinnames commit b71c7a0dfba7025662f9a9d176494ce4dc86273e Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 17:02:34 2014 +0100 K64F Arduino pinNames update commit d41b0ee493263d1d80fcb72b3f0d4d788359c7c9 Merge: 9c0a982 e2574eb Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 14:57:57 2014 +0100 Merge remote-tracking branch 'upstream/master' into dev_target_k64f. K64F gpio changed according to the latest mbed master. Conflicts: libraries/rtos/rtx/RTX_CM_lib.h workspace_tools/export/uvision4.py commit 9c0a9822ab14263fff5e3b6459b7c2b4a77ce30c Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 17 21:08:17 2014 +0100 K64F - sleep support commit 5edcf3603d2e7b00eedbb377203a054b7a01e51d Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 16 18:19:55 2014 +0100 K64F - pullup/down corrections, LED1 - R, LED2 - G, LED3 - B commit a2b3b53a1474d32779654765cd1ce2ba2c6b2186 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 13 20:55:39 2014 +0100 K64F - SPI - delays are set, pin definition for tests commit 1f3b3abe16f4afaaf1b75cb4bf3e3a9d5b6e50a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 21:26:00 2014 +0100 K64F - DAC update - tested with test a8 - internal reference set to VDDA - PinName DAC0_OUT commit 26d8cf47f8c0786b290ae659beb022901029b313 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 08:31:44 2014 +0100 KSDK - drivers layer removal, mbed HAL using only KSDK HAL - ADC corrections with channels, and clock configuration commit 67ebe14f5c88725033ea0fb135d94b6bf9a00fdb Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:46:08 2014 +0100 K20 copy files removed, targets.py - vertical alignment for K64F definition commit be5c562d513c808e5bd425195a4fb1c71f47a57e Merge: 696a713 fe0aca9 Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:14:55 2014 +0000 Merge branch 'rtos_support' into dev_target_k64f commit 696a713751194b4762f1cdf6c17c0786decd7808 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:05:30 2014 +0100 [FIX] K64F - adc, sgtl driver updates commit fe0aca9940bbdd5ee70a1a7341a0a2ad2abf912b Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:04:16 2014 +0000 Add RTOS support for K64F commit 5c3edcbca6dbcce628c7cde51ac94a6fc6278ba5 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 9 20:43:38 2014 +0100 K64F - uvision templates update - uvision 5.10 supports K64F commit 33f18d11d0eadb9243f1be0ae96c5f82e2913d48 Merge: 26f7587 74e9b2e Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Mar 8 10:34:25 2014 +0100 Update branch from mbed master - merge branch 'master' into dev_target_k64f Conflicts: libraries/USBDevice/USBDevice/USBEndpoints.h libraries/USBDevice/USBDevice/USBHAL_KL25Z.cpp workspace_tools/export/uvision4.py workspace_tools/targets.py commit 26f75872b19a1db2a3abb34c6e773bac56acb32f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 6 22:15:53 2014 +0100 K64F - USBDevice - MPU disable in init commit e54d6bbaa68827bd63058fbf2428e289d15ac1f7 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 21:06:58 2014 +0100 K64F - clock setup 4 (usb clock enable) commit c4165732b9520cb31ae3d649d50c353d09dc9932 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 20:01:47 2014 +0100 K64F - USBDevice addition commit 9fcdbb8562b1415561b04e902fcdbb4724add5af Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 24 19:11:48 2014 +0100 K64F SPI HAL - initial version commit 8093df58fa7d17fcb5ad04872c958d5254ee1d8a Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Feb 22 13:14:44 2014 +0100 K64F - RTC and I2C implementation (using KPSDK HAL) - instance correction in objects and peripherals names headers commit 7ef3fbda605c2bd53a86f37d0676c0393b2e2949 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Feb 14 09:45:27 2014 +0100 mbed RTC HAL for K64F commit e40332fd2db8bf36b3e6cabac5729e013da40c28 Merge: e059f65 6bfcd87 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Feb 13 14:20:20 2014 +0100 Merge branch 'master' into dev_target_k64f Conflicts: workspace_tools/build_api.py workspace_tools/export/uvision4.py workspace_tools/targets.py workspace_tools/toolchains/__init__.py commit e059f65fd09694418f9fa4f38da90954ab9decfe Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 5 21:35:49 2014 +0100 pwm mbed HAL - using jusst ftm hal from KPSDK, not yet functional commit b784278872b1d66ce2940f4988e0479971de8bc0 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 3 18:28:24 2014 +0100 uvision exporters for K64F, uticker - lptmr - lptmr - no hal neiter driver, quick implementation using registers and internal clock - exporters for K64F - using K60 1MB target, because K64F is not available in 4.7 yet commit 7a030693e025c2bd456563f3e6f4456033d3f644 Author: Bogdan Marinescu <bogdan.marinescu@arm.com> Date: Tue Jan 28 16:29:54 2014 +0200 Attempt to keep target's include directory structure commit a2445b383224125abf4ee23bd17f1e685010a4a5 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 27 07:25:16 2014 +0100 Original KPSDK include directory structure for device commit 9c07c58bb9cf5e9d8be4c3bec117ee87a5ea81c0 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 16:51:17 2014 +0000 K64F ADC - initial commit - ADC using KPSDK driver commit 88e03ef8c5855a57887bb36cddfa5ab1491d400c Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 12:18:14 2014 +0000 GPI IRQ - nvic vectors number correction - gpio irq HAL implementation commit e83f1108ae9f779ce240d6cdfe23532bfa00a55e Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 10:06:44 2014 +0000 PORT HAL implementation - using gpio hal port commit 75c21943200c8240d1edaf0a67f84b9f3b43db7f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 16:02:36 2014 +0000 Serial (only 8bit at the moment), using KPSDK HAL commit 296e79def617f005918cd8e2aa574f2908a362ca Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 08:35:50 2014 +0000 Folder structure correction for K64F - KPSDK - scripts reverted, only new macro is available - K64F specific headers are in HAL in device folder commit f236b1ffcb9c8b443ad8483bca8b0e564a63f004 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Jan 22 16:07:30 2014 +0100 update KPSDK to RC1 - the update causes few more dependences which were reported. Will be removed later (usb, boards) - pit timer - hal use , pit driver uses us period commit f02c5353d4920e885f803ad235e5e82001e97b94 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:45:55 2014 +0100 KPSDK In/out declaration removal commit 8c88e098b4dc4901753309f1e6db4adb8aca4384 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:12:41 2014 +0100 gpio_t struct only needs pinName - gpio_init creates init objects on stack commit 6b96d4ea2c5a6a2cb13571d740ffb679a62f8f3d Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 19:59:03 2014 +0100 us ticker - pit implementation (not functional yet) - pit driver in KPSDK - added sdk prefix to needed functions commit 098e60a3846abcd4c9c00bd199b01d4b1899807f Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 13:01:58 2014 +0100 GPIO HAL - gpio_set implementation commit 2bfebbfc75dcd08c20297ba42dc0cc82e5381a40 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Jan 19 20:46:55 2014 +0100 GPIO KPSDK changes - gpio driver - sdk prefix, no lookuptable, input/output declaration, refactoring, set MUX to GPIO - gpio api in mbed implementation, tested on blue led commit d083733c485fbdd79ed9ce87100df9fee82294a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Jan 18 17:14:09 2014 +0100 Update folder structure for KPSDK - drivers addition - usb (needed by drivers - needs to be fixed) - utilities - hal folder - drivers/flash removed (needs to be fixed) - usb host removed (needs to be fixed) commit 9abcf3d94a2cc849cd6e586c1bad650b6a340a0c Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 16 11:06:16 2014 +0100 Initial commit for K64F - KPSDK addition - CMSIS + HAL for K64F - HAL is not yet implemented - scripts - target contain macros, ignore folders, cmsis copy folders
2014-04-02 12:39:01 +00:00
class K64F(Target):
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M4F"
self.extra_labels = ['Freescale', 'KPSDK_MCUS', 'KPSDK_CODE']
Target K64F addition. Squashed commit of the following: commit db3c9f7682083abeb291e01df31e67e4c50845b3 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Apr 2 09:52:00 2014 +0200 K64F - KSDK - Warnings fixes commit a639a5cdff889c13509c954b0a34ebac861c1361 Merge: 67a2c2a f3de345 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Apr 1 12:48:35 2014 +0200 Merge branch latest 'master' into dev_target_k64f Conflicts: libraries/rtos/rtx/RTX_Conf_CM.c workspace_tools/build_api.py commit 67a2c2aeb976f264db52ea10d18fea9de0d7685f Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 30 13:19:51 2014 +0200 K64F - PinName for buttons (SW2, SW3) commit 957573e2cd42d5c73ed99477abb98c8b883695b2 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 25 11:46:57 2014 +0100 K64F - pins addition to mbed HAL, uart - 4 instances, fix i2c instance which was not stored commit 2347a6d03984e297190910a250f2771032ae6327 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 15:20:51 2014 -0500 Added wait to i2c stop commit b7b4a9c72e8724087a44078c41a2cb33e4c8d5e3 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 24 19:28:16 2014 +0100 K64F - I2c - ack flag retreive correction (logic inverted in ksdk hal) commit 46c875251263029e32463c3b48473b10496088d9 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 13:16:18 2014 -0500 Added I2C Pinnames commit b71c7a0dfba7025662f9a9d176494ce4dc86273e Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 17:02:34 2014 +0100 K64F Arduino pinNames update commit d41b0ee493263d1d80fcb72b3f0d4d788359c7c9 Merge: 9c0a982 e2574eb Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 14:57:57 2014 +0100 Merge remote-tracking branch 'upstream/master' into dev_target_k64f. K64F gpio changed according to the latest mbed master. Conflicts: libraries/rtos/rtx/RTX_CM_lib.h workspace_tools/export/uvision4.py commit 9c0a9822ab14263fff5e3b6459b7c2b4a77ce30c Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 17 21:08:17 2014 +0100 K64F - sleep support commit 5edcf3603d2e7b00eedbb377203a054b7a01e51d Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 16 18:19:55 2014 +0100 K64F - pullup/down corrections, LED1 - R, LED2 - G, LED3 - B commit a2b3b53a1474d32779654765cd1ce2ba2c6b2186 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 13 20:55:39 2014 +0100 K64F - SPI - delays are set, pin definition for tests commit 1f3b3abe16f4afaaf1b75cb4bf3e3a9d5b6e50a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 21:26:00 2014 +0100 K64F - DAC update - tested with test a8 - internal reference set to VDDA - PinName DAC0_OUT commit 26d8cf47f8c0786b290ae659beb022901029b313 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 08:31:44 2014 +0100 KSDK - drivers layer removal, mbed HAL using only KSDK HAL - ADC corrections with channels, and clock configuration commit 67ebe14f5c88725033ea0fb135d94b6bf9a00fdb Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:46:08 2014 +0100 K20 copy files removed, targets.py - vertical alignment for K64F definition commit be5c562d513c808e5bd425195a4fb1c71f47a57e Merge: 696a713 fe0aca9 Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:14:55 2014 +0000 Merge branch 'rtos_support' into dev_target_k64f commit 696a713751194b4762f1cdf6c17c0786decd7808 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:05:30 2014 +0100 [FIX] K64F - adc, sgtl driver updates commit fe0aca9940bbdd5ee70a1a7341a0a2ad2abf912b Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:04:16 2014 +0000 Add RTOS support for K64F commit 5c3edcbca6dbcce628c7cde51ac94a6fc6278ba5 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 9 20:43:38 2014 +0100 K64F - uvision templates update - uvision 5.10 supports K64F commit 33f18d11d0eadb9243f1be0ae96c5f82e2913d48 Merge: 26f7587 74e9b2e Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Mar 8 10:34:25 2014 +0100 Update branch from mbed master - merge branch 'master' into dev_target_k64f Conflicts: libraries/USBDevice/USBDevice/USBEndpoints.h libraries/USBDevice/USBDevice/USBHAL_KL25Z.cpp workspace_tools/export/uvision4.py workspace_tools/targets.py commit 26f75872b19a1db2a3abb34c6e773bac56acb32f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 6 22:15:53 2014 +0100 K64F - USBDevice - MPU disable in init commit e54d6bbaa68827bd63058fbf2428e289d15ac1f7 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 21:06:58 2014 +0100 K64F - clock setup 4 (usb clock enable) commit c4165732b9520cb31ae3d649d50c353d09dc9932 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 20:01:47 2014 +0100 K64F - USBDevice addition commit 9fcdbb8562b1415561b04e902fcdbb4724add5af Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 24 19:11:48 2014 +0100 K64F SPI HAL - initial version commit 8093df58fa7d17fcb5ad04872c958d5254ee1d8a Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Feb 22 13:14:44 2014 +0100 K64F - RTC and I2C implementation (using KPSDK HAL) - instance correction in objects and peripherals names headers commit 7ef3fbda605c2bd53a86f37d0676c0393b2e2949 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Feb 14 09:45:27 2014 +0100 mbed RTC HAL for K64F commit e40332fd2db8bf36b3e6cabac5729e013da40c28 Merge: e059f65 6bfcd87 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Feb 13 14:20:20 2014 +0100 Merge branch 'master' into dev_target_k64f Conflicts: workspace_tools/build_api.py workspace_tools/export/uvision4.py workspace_tools/targets.py workspace_tools/toolchains/__init__.py commit e059f65fd09694418f9fa4f38da90954ab9decfe Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 5 21:35:49 2014 +0100 pwm mbed HAL - using jusst ftm hal from KPSDK, not yet functional commit b784278872b1d66ce2940f4988e0479971de8bc0 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 3 18:28:24 2014 +0100 uvision exporters for K64F, uticker - lptmr - lptmr - no hal neiter driver, quick implementation using registers and internal clock - exporters for K64F - using K60 1MB target, because K64F is not available in 4.7 yet commit 7a030693e025c2bd456563f3e6f4456033d3f644 Author: Bogdan Marinescu <bogdan.marinescu@arm.com> Date: Tue Jan 28 16:29:54 2014 +0200 Attempt to keep target's include directory structure commit a2445b383224125abf4ee23bd17f1e685010a4a5 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 27 07:25:16 2014 +0100 Original KPSDK include directory structure for device commit 9c07c58bb9cf5e9d8be4c3bec117ee87a5ea81c0 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 16:51:17 2014 +0000 K64F ADC - initial commit - ADC using KPSDK driver commit 88e03ef8c5855a57887bb36cddfa5ab1491d400c Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 12:18:14 2014 +0000 GPI IRQ - nvic vectors number correction - gpio irq HAL implementation commit e83f1108ae9f779ce240d6cdfe23532bfa00a55e Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 10:06:44 2014 +0000 PORT HAL implementation - using gpio hal port commit 75c21943200c8240d1edaf0a67f84b9f3b43db7f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 16:02:36 2014 +0000 Serial (only 8bit at the moment), using KPSDK HAL commit 296e79def617f005918cd8e2aa574f2908a362ca Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 08:35:50 2014 +0000 Folder structure correction for K64F - KPSDK - scripts reverted, only new macro is available - K64F specific headers are in HAL in device folder commit f236b1ffcb9c8b443ad8483bca8b0e564a63f004 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Jan 22 16:07:30 2014 +0100 update KPSDK to RC1 - the update causes few more dependences which were reported. Will be removed later (usb, boards) - pit timer - hal use , pit driver uses us period commit f02c5353d4920e885f803ad235e5e82001e97b94 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:45:55 2014 +0100 KPSDK In/out declaration removal commit 8c88e098b4dc4901753309f1e6db4adb8aca4384 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:12:41 2014 +0100 gpio_t struct only needs pinName - gpio_init creates init objects on stack commit 6b96d4ea2c5a6a2cb13571d740ffb679a62f8f3d Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 19:59:03 2014 +0100 us ticker - pit implementation (not functional yet) - pit driver in KPSDK - added sdk prefix to needed functions commit 098e60a3846abcd4c9c00bd199b01d4b1899807f Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 13:01:58 2014 +0100 GPIO HAL - gpio_set implementation commit 2bfebbfc75dcd08c20297ba42dc0cc82e5381a40 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Jan 19 20:46:55 2014 +0100 GPIO KPSDK changes - gpio driver - sdk prefix, no lookuptable, input/output declaration, refactoring, set MUX to GPIO - gpio api in mbed implementation, tested on blue led commit d083733c485fbdd79ed9ce87100df9fee82294a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Jan 18 17:14:09 2014 +0100 Update folder structure for KPSDK - drivers addition - usb (needed by drivers - needs to be fixed) - utilities - hal folder - drivers/flash removed (needs to be fixed) - usb host removed (needs to be fixed) commit 9abcf3d94a2cc849cd6e586c1bad650b6a340a0c Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 16 11:06:16 2014 +0100 Initial commit for K64F - KPSDK addition - CMSIS + HAL for K64F - HAL is not yet implemented - scripts - target contain macros, ignore folders, cmsis copy folders
2014-04-02 12:39:01 +00:00
self.macros = ["CPU_MK64FN1M0VMD12", "FSL_RTOS_MBED"]
Target K64F addition. Squashed commit of the following: commit db3c9f7682083abeb291e01df31e67e4c50845b3 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Apr 2 09:52:00 2014 +0200 K64F - KSDK - Warnings fixes commit a639a5cdff889c13509c954b0a34ebac861c1361 Merge: 67a2c2a f3de345 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Apr 1 12:48:35 2014 +0200 Merge branch latest 'master' into dev_target_k64f Conflicts: libraries/rtos/rtx/RTX_Conf_CM.c workspace_tools/build_api.py commit 67a2c2aeb976f264db52ea10d18fea9de0d7685f Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 30 13:19:51 2014 +0200 K64F - PinName for buttons (SW2, SW3) commit 957573e2cd42d5c73ed99477abb98c8b883695b2 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 25 11:46:57 2014 +0100 K64F - pins addition to mbed HAL, uart - 4 instances, fix i2c instance which was not stored commit 2347a6d03984e297190910a250f2771032ae6327 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 15:20:51 2014 -0500 Added wait to i2c stop commit b7b4a9c72e8724087a44078c41a2cb33e4c8d5e3 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 24 19:28:16 2014 +0100 K64F - I2c - ack flag retreive correction (logic inverted in ksdk hal) commit 46c875251263029e32463c3b48473b10496088d9 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 13:16:18 2014 -0500 Added I2C Pinnames commit b71c7a0dfba7025662f9a9d176494ce4dc86273e Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 17:02:34 2014 +0100 K64F Arduino pinNames update commit d41b0ee493263d1d80fcb72b3f0d4d788359c7c9 Merge: 9c0a982 e2574eb Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 14:57:57 2014 +0100 Merge remote-tracking branch 'upstream/master' into dev_target_k64f. K64F gpio changed according to the latest mbed master. Conflicts: libraries/rtos/rtx/RTX_CM_lib.h workspace_tools/export/uvision4.py commit 9c0a9822ab14263fff5e3b6459b7c2b4a77ce30c Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 17 21:08:17 2014 +0100 K64F - sleep support commit 5edcf3603d2e7b00eedbb377203a054b7a01e51d Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 16 18:19:55 2014 +0100 K64F - pullup/down corrections, LED1 - R, LED2 - G, LED3 - B commit a2b3b53a1474d32779654765cd1ce2ba2c6b2186 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 13 20:55:39 2014 +0100 K64F - SPI - delays are set, pin definition for tests commit 1f3b3abe16f4afaaf1b75cb4bf3e3a9d5b6e50a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 21:26:00 2014 +0100 K64F - DAC update - tested with test a8 - internal reference set to VDDA - PinName DAC0_OUT commit 26d8cf47f8c0786b290ae659beb022901029b313 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 08:31:44 2014 +0100 KSDK - drivers layer removal, mbed HAL using only KSDK HAL - ADC corrections with channels, and clock configuration commit 67ebe14f5c88725033ea0fb135d94b6bf9a00fdb Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:46:08 2014 +0100 K20 copy files removed, targets.py - vertical alignment for K64F definition commit be5c562d513c808e5bd425195a4fb1c71f47a57e Merge: 696a713 fe0aca9 Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:14:55 2014 +0000 Merge branch 'rtos_support' into dev_target_k64f commit 696a713751194b4762f1cdf6c17c0786decd7808 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:05:30 2014 +0100 [FIX] K64F - adc, sgtl driver updates commit fe0aca9940bbdd5ee70a1a7341a0a2ad2abf912b Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:04:16 2014 +0000 Add RTOS support for K64F commit 5c3edcbca6dbcce628c7cde51ac94a6fc6278ba5 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 9 20:43:38 2014 +0100 K64F - uvision templates update - uvision 5.10 supports K64F commit 33f18d11d0eadb9243f1be0ae96c5f82e2913d48 Merge: 26f7587 74e9b2e Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Mar 8 10:34:25 2014 +0100 Update branch from mbed master - merge branch 'master' into dev_target_k64f Conflicts: libraries/USBDevice/USBDevice/USBEndpoints.h libraries/USBDevice/USBDevice/USBHAL_KL25Z.cpp workspace_tools/export/uvision4.py workspace_tools/targets.py commit 26f75872b19a1db2a3abb34c6e773bac56acb32f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 6 22:15:53 2014 +0100 K64F - USBDevice - MPU disable in init commit e54d6bbaa68827bd63058fbf2428e289d15ac1f7 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 21:06:58 2014 +0100 K64F - clock setup 4 (usb clock enable) commit c4165732b9520cb31ae3d649d50c353d09dc9932 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 20:01:47 2014 +0100 K64F - USBDevice addition commit 9fcdbb8562b1415561b04e902fcdbb4724add5af Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 24 19:11:48 2014 +0100 K64F SPI HAL - initial version commit 8093df58fa7d17fcb5ad04872c958d5254ee1d8a Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Feb 22 13:14:44 2014 +0100 K64F - RTC and I2C implementation (using KPSDK HAL) - instance correction in objects and peripherals names headers commit 7ef3fbda605c2bd53a86f37d0676c0393b2e2949 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Feb 14 09:45:27 2014 +0100 mbed RTC HAL for K64F commit e40332fd2db8bf36b3e6cabac5729e013da40c28 Merge: e059f65 6bfcd87 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Feb 13 14:20:20 2014 +0100 Merge branch 'master' into dev_target_k64f Conflicts: workspace_tools/build_api.py workspace_tools/export/uvision4.py workspace_tools/targets.py workspace_tools/toolchains/__init__.py commit e059f65fd09694418f9fa4f38da90954ab9decfe Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 5 21:35:49 2014 +0100 pwm mbed HAL - using jusst ftm hal from KPSDK, not yet functional commit b784278872b1d66ce2940f4988e0479971de8bc0 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 3 18:28:24 2014 +0100 uvision exporters for K64F, uticker - lptmr - lptmr - no hal neiter driver, quick implementation using registers and internal clock - exporters for K64F - using K60 1MB target, because K64F is not available in 4.7 yet commit 7a030693e025c2bd456563f3e6f4456033d3f644 Author: Bogdan Marinescu <bogdan.marinescu@arm.com> Date: Tue Jan 28 16:29:54 2014 +0200 Attempt to keep target's include directory structure commit a2445b383224125abf4ee23bd17f1e685010a4a5 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 27 07:25:16 2014 +0100 Original KPSDK include directory structure for device commit 9c07c58bb9cf5e9d8be4c3bec117ee87a5ea81c0 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 16:51:17 2014 +0000 K64F ADC - initial commit - ADC using KPSDK driver commit 88e03ef8c5855a57887bb36cddfa5ab1491d400c Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 12:18:14 2014 +0000 GPI IRQ - nvic vectors number correction - gpio irq HAL implementation commit e83f1108ae9f779ce240d6cdfe23532bfa00a55e Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 10:06:44 2014 +0000 PORT HAL implementation - using gpio hal port commit 75c21943200c8240d1edaf0a67f84b9f3b43db7f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 16:02:36 2014 +0000 Serial (only 8bit at the moment), using KPSDK HAL commit 296e79def617f005918cd8e2aa574f2908a362ca Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 08:35:50 2014 +0000 Folder structure correction for K64F - KPSDK - scripts reverted, only new macro is available - K64F specific headers are in HAL in device folder commit f236b1ffcb9c8b443ad8483bca8b0e564a63f004 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Jan 22 16:07:30 2014 +0100 update KPSDK to RC1 - the update causes few more dependences which were reported. Will be removed later (usb, boards) - pit timer - hal use , pit driver uses us period commit f02c5353d4920e885f803ad235e5e82001e97b94 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:45:55 2014 +0100 KPSDK In/out declaration removal commit 8c88e098b4dc4901753309f1e6db4adb8aca4384 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:12:41 2014 +0100 gpio_t struct only needs pinName - gpio_init creates init objects on stack commit 6b96d4ea2c5a6a2cb13571d740ffb679a62f8f3d Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 19:59:03 2014 +0100 us ticker - pit implementation (not functional yet) - pit driver in KPSDK - added sdk prefix to needed functions commit 098e60a3846abcd4c9c00bd199b01d4b1899807f Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 13:01:58 2014 +0100 GPIO HAL - gpio_set implementation commit 2bfebbfc75dcd08c20297ba42dc0cc82e5381a40 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Jan 19 20:46:55 2014 +0100 GPIO KPSDK changes - gpio driver - sdk prefix, no lookuptable, input/output declaration, refactoring, set MUX to GPIO - gpio api in mbed implementation, tested on blue led commit d083733c485fbdd79ed9ce87100df9fee82294a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Jan 18 17:14:09 2014 +0100 Update folder structure for KPSDK - drivers addition - usb (needed by drivers - needs to be fixed) - utilities - hal folder - drivers/flash removed (needs to be fixed) - usb host removed (needs to be fixed) commit 9abcf3d94a2cc849cd6e586c1bad650b6a340a0c Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 16 11:06:16 2014 +0100 Initial commit for K64F - KPSDK addition - CMSIS + HAL for K64F - HAL is not yet implemented - scripts - target contain macros, ignore folders, cmsis copy folders
2014-04-02 12:39:01 +00:00
self.supported_toolchains = ["ARM"]
self.supported_form_factors = ["ARDUINO"]
Target K64F addition. Squashed commit of the following: commit db3c9f7682083abeb291e01df31e67e4c50845b3 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Apr 2 09:52:00 2014 +0200 K64F - KSDK - Warnings fixes commit a639a5cdff889c13509c954b0a34ebac861c1361 Merge: 67a2c2a f3de345 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Apr 1 12:48:35 2014 +0200 Merge branch latest 'master' into dev_target_k64f Conflicts: libraries/rtos/rtx/RTX_Conf_CM.c workspace_tools/build_api.py commit 67a2c2aeb976f264db52ea10d18fea9de0d7685f Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 30 13:19:51 2014 +0200 K64F - PinName for buttons (SW2, SW3) commit 957573e2cd42d5c73ed99477abb98c8b883695b2 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 25 11:46:57 2014 +0100 K64F - pins addition to mbed HAL, uart - 4 instances, fix i2c instance which was not stored commit 2347a6d03984e297190910a250f2771032ae6327 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 15:20:51 2014 -0500 Added wait to i2c stop commit b7b4a9c72e8724087a44078c41a2cb33e4c8d5e3 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 24 19:28:16 2014 +0100 K64F - I2c - ack flag retreive correction (logic inverted in ksdk hal) commit 46c875251263029e32463c3b48473b10496088d9 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 13:16:18 2014 -0500 Added I2C Pinnames commit b71c7a0dfba7025662f9a9d176494ce4dc86273e Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 17:02:34 2014 +0100 K64F Arduino pinNames update commit d41b0ee493263d1d80fcb72b3f0d4d788359c7c9 Merge: 9c0a982 e2574eb Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 14:57:57 2014 +0100 Merge remote-tracking branch 'upstream/master' into dev_target_k64f. K64F gpio changed according to the latest mbed master. Conflicts: libraries/rtos/rtx/RTX_CM_lib.h workspace_tools/export/uvision4.py commit 9c0a9822ab14263fff5e3b6459b7c2b4a77ce30c Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 17 21:08:17 2014 +0100 K64F - sleep support commit 5edcf3603d2e7b00eedbb377203a054b7a01e51d Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 16 18:19:55 2014 +0100 K64F - pullup/down corrections, LED1 - R, LED2 - G, LED3 - B commit a2b3b53a1474d32779654765cd1ce2ba2c6b2186 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 13 20:55:39 2014 +0100 K64F - SPI - delays are set, pin definition for tests commit 1f3b3abe16f4afaaf1b75cb4bf3e3a9d5b6e50a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 21:26:00 2014 +0100 K64F - DAC update - tested with test a8 - internal reference set to VDDA - PinName DAC0_OUT commit 26d8cf47f8c0786b290ae659beb022901029b313 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 08:31:44 2014 +0100 KSDK - drivers layer removal, mbed HAL using only KSDK HAL - ADC corrections with channels, and clock configuration commit 67ebe14f5c88725033ea0fb135d94b6bf9a00fdb Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:46:08 2014 +0100 K20 copy files removed, targets.py - vertical alignment for K64F definition commit be5c562d513c808e5bd425195a4fb1c71f47a57e Merge: 696a713 fe0aca9 Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:14:55 2014 +0000 Merge branch 'rtos_support' into dev_target_k64f commit 696a713751194b4762f1cdf6c17c0786decd7808 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:05:30 2014 +0100 [FIX] K64F - adc, sgtl driver updates commit fe0aca9940bbdd5ee70a1a7341a0a2ad2abf912b Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:04:16 2014 +0000 Add RTOS support for K64F commit 5c3edcbca6dbcce628c7cde51ac94a6fc6278ba5 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 9 20:43:38 2014 +0100 K64F - uvision templates update - uvision 5.10 supports K64F commit 33f18d11d0eadb9243f1be0ae96c5f82e2913d48 Merge: 26f7587 74e9b2e Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Mar 8 10:34:25 2014 +0100 Update branch from mbed master - merge branch 'master' into dev_target_k64f Conflicts: libraries/USBDevice/USBDevice/USBEndpoints.h libraries/USBDevice/USBDevice/USBHAL_KL25Z.cpp workspace_tools/export/uvision4.py workspace_tools/targets.py commit 26f75872b19a1db2a3abb34c6e773bac56acb32f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 6 22:15:53 2014 +0100 K64F - USBDevice - MPU disable in init commit e54d6bbaa68827bd63058fbf2428e289d15ac1f7 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 21:06:58 2014 +0100 K64F - clock setup 4 (usb clock enable) commit c4165732b9520cb31ae3d649d50c353d09dc9932 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 20:01:47 2014 +0100 K64F - USBDevice addition commit 9fcdbb8562b1415561b04e902fcdbb4724add5af Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 24 19:11:48 2014 +0100 K64F SPI HAL - initial version commit 8093df58fa7d17fcb5ad04872c958d5254ee1d8a Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Feb 22 13:14:44 2014 +0100 K64F - RTC and I2C implementation (using KPSDK HAL) - instance correction in objects and peripherals names headers commit 7ef3fbda605c2bd53a86f37d0676c0393b2e2949 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Feb 14 09:45:27 2014 +0100 mbed RTC HAL for K64F commit e40332fd2db8bf36b3e6cabac5729e013da40c28 Merge: e059f65 6bfcd87 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Feb 13 14:20:20 2014 +0100 Merge branch 'master' into dev_target_k64f Conflicts: workspace_tools/build_api.py workspace_tools/export/uvision4.py workspace_tools/targets.py workspace_tools/toolchains/__init__.py commit e059f65fd09694418f9fa4f38da90954ab9decfe Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 5 21:35:49 2014 +0100 pwm mbed HAL - using jusst ftm hal from KPSDK, not yet functional commit b784278872b1d66ce2940f4988e0479971de8bc0 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 3 18:28:24 2014 +0100 uvision exporters for K64F, uticker - lptmr - lptmr - no hal neiter driver, quick implementation using registers and internal clock - exporters for K64F - using K60 1MB target, because K64F is not available in 4.7 yet commit 7a030693e025c2bd456563f3e6f4456033d3f644 Author: Bogdan Marinescu <bogdan.marinescu@arm.com> Date: Tue Jan 28 16:29:54 2014 +0200 Attempt to keep target's include directory structure commit a2445b383224125abf4ee23bd17f1e685010a4a5 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 27 07:25:16 2014 +0100 Original KPSDK include directory structure for device commit 9c07c58bb9cf5e9d8be4c3bec117ee87a5ea81c0 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 16:51:17 2014 +0000 K64F ADC - initial commit - ADC using KPSDK driver commit 88e03ef8c5855a57887bb36cddfa5ab1491d400c Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 12:18:14 2014 +0000 GPI IRQ - nvic vectors number correction - gpio irq HAL implementation commit e83f1108ae9f779ce240d6cdfe23532bfa00a55e Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 10:06:44 2014 +0000 PORT HAL implementation - using gpio hal port commit 75c21943200c8240d1edaf0a67f84b9f3b43db7f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 16:02:36 2014 +0000 Serial (only 8bit at the moment), using KPSDK HAL commit 296e79def617f005918cd8e2aa574f2908a362ca Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 08:35:50 2014 +0000 Folder structure correction for K64F - KPSDK - scripts reverted, only new macro is available - K64F specific headers are in HAL in device folder commit f236b1ffcb9c8b443ad8483bca8b0e564a63f004 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Jan 22 16:07:30 2014 +0100 update KPSDK to RC1 - the update causes few more dependences which were reported. Will be removed later (usb, boards) - pit timer - hal use , pit driver uses us period commit f02c5353d4920e885f803ad235e5e82001e97b94 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:45:55 2014 +0100 KPSDK In/out declaration removal commit 8c88e098b4dc4901753309f1e6db4adb8aca4384 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:12:41 2014 +0100 gpio_t struct only needs pinName - gpio_init creates init objects on stack commit 6b96d4ea2c5a6a2cb13571d740ffb679a62f8f3d Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 19:59:03 2014 +0100 us ticker - pit implementation (not functional yet) - pit driver in KPSDK - added sdk prefix to needed functions commit 098e60a3846abcd4c9c00bd199b01d4b1899807f Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 13:01:58 2014 +0100 GPIO HAL - gpio_set implementation commit 2bfebbfc75dcd08c20297ba42dc0cc82e5381a40 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Jan 19 20:46:55 2014 +0100 GPIO KPSDK changes - gpio driver - sdk prefix, no lookuptable, input/output declaration, refactoring, set MUX to GPIO - gpio api in mbed implementation, tested on blue led commit d083733c485fbdd79ed9ce87100df9fee82294a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Jan 18 17:14:09 2014 +0100 Update folder structure for KPSDK - drivers addition - usb (needed by drivers - needs to be fixed) - utilities - hal folder - drivers/flash removed (needs to be fixed) - usb host removed (needs to be fixed) commit 9abcf3d94a2cc849cd6e586c1bad650b6a340a0c Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 16 11:06:16 2014 +0100 Initial commit for K64F - KPSDK addition - CMSIS + HAL for K64F - HAL is not yet implemented - scripts - target contain macros, ignore folders, cmsis copy folders
2014-04-02 12:39:01 +00:00
self.is_disk_virtual = True
class LPC812(Target):
ONLINE_TOOLCHAIN = "uARM"
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "Cortex-M0+"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['NXP', 'LPC81X']
2013-08-09 16:18:50 +00:00
self.supported_toolchains = ["uARM"]
2013-08-09 16:18:50 +00:00
self.supported_form_factors = ["ARDUINO"]
self.is_disk_virtual = True
2013-08-24 06:49:16 +00:00
class LPC810(Target):
ONLINE_TOOLCHAIN = "uARM"
2013-08-24 06:49:16 +00:00
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0+"
self.extra_labels = ['NXP', 'LPC81X']
2013-08-24 06:49:16 +00:00
self.supported_toolchains = ["uARM"]
self.is_disk_virtual = True
2013-05-16 06:53:02 +00:00
class LPC4088(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "Cortex-M4F"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['NXP', 'LPC408X']
2013-08-09 16:18:50 +00:00
2013-10-31 12:25:58 +00:00
self.supported_toolchains = ["ARM", "GCC_CR", "GCC_ARM"]
self.is_disk_virtual = True
2013-11-25 16:32:46 +00:00
def init_hooks(self, hook, toolchain_name):
if toolchain_name in ['ARM_STD', 'ARM_MICRO']:
hook.hook_add_binary("post", self.binary_hook)
@staticmethod
def binary_hook(t_self, resources, elf, binf):
if not os.path.isdir(binf):
# Regular binary file, nothing to do
return
outbin = open(binf + ".temp", "wb")
partf = open(os.path.join(binf, "ER_IROM1"), "rb")
# Pad the fist part (internal flash) with 0xFF to 512k
data = partf.read()
outbin.write(data)
outbin.write('\xFF' * (512*1024 - len(data)))
partf.close()
# Read and append the second part (external flash) in chunks of fixed size
chunksize = 128 * 1024
partf = open(os.path.join(binf, "ER_IROM2"), "rb")
while True:
data = partf.read(chunksize)
outbin.write(data)
if len(data) < chunksize:
break
partf.close()
outbin.close()
# Remove the directory with the binary parts and rename the temporary
# file to 'binf'
shutil.rmtree(binf, True)
os.rename(binf + '.temp', binf)
t_self.debug("Generated custom binary file (internal flash + SPIFI)")
2013-11-25 16:32:46 +00:00
2013-07-08 03:27:11 +00:00
class LPC4330_M4(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "Cortex-M4F"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['NXP', 'LPC43XX']
2013-08-09 16:18:50 +00:00
self.supported_toolchains = ["ARM", "GCC_CR", "IAR", "GCC_ARM"]
2013-07-08 03:27:11 +00:00
class LPC4330_M0(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
2013-07-08 03:27:11 +00:00
self.core = "Cortex-M0"
2013-08-09 16:18:50 +00:00
2013-07-08 03:27:11 +00:00
self.extra_labels = ['NXP', 'LPC43XX']
2013-08-09 16:18:50 +00:00
2013-07-08 03:27:11 +00:00
self.supported_toolchains = ["ARM", "GCC_CR", "IAR"]
2013-08-09 16:18:50 +00:00
2013-07-08 03:27:11 +00:00
class LPC1800(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
2013-07-08 03:27:11 +00:00
self.core = "Cortex-M3"
2013-08-09 16:18:50 +00:00
2013-07-08 03:27:11 +00:00
self.extra_labels = ['NXP', 'LPC43XX']
2013-08-09 16:18:50 +00:00
2013-07-08 03:27:11 +00:00
self.supported_toolchains = ["ARM", "GCC_CR", "IAR"]
2013-08-09 16:18:50 +00:00
class STM32F407(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
self.core = "Cortex-M4F"
2013-08-09 16:18:50 +00:00
self.extra_labels = ['STM', 'STM32F4XX']
2013-08-09 16:18:50 +00:00
2013-07-29 16:03:19 +00:00
self.supported_toolchains = ["ARM", "GCC_ARM"]
2013-05-16 06:53:02 +00:00
class NUCLEO_F030R8(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0"
self.extra_labels = ['STM', 'STM32F0', 'STM32F030R8']
self.supported_toolchains = ["ARM", "uARM"]
self.supported_form_factors = ["ARDUINO", "MORPHO"]
class NUCLEO_F072RB(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0"
self.extra_labels = ['STM', 'STM32F0', 'STM32F072RB']
self.supported_toolchains = ["ARM", "uARM"]
self.supported_form_factors = ["ARDUINO", "MORPHO"]
2013-11-14 10:07:01 +00:00
class NUCLEO_F103RB(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
2013-11-14 10:07:01 +00:00
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M3"
self.extra_labels = ['STM', 'STM32F1', 'STM32F103RB']
2013-11-14 10:07:01 +00:00
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
self.supported_form_factors = ["ARDUINO", "MORPHO"]
class NUCLEO_F302R8(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M4F"
self.extra_labels = ['STM', 'STM32F3', 'STM32F302R8']
self.supported_toolchains = ["ARM", "uARM"]
self.supported_form_factors = ["ARDUINO", "MORPHO"]
class NUCLEO_F401RE(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M4F"
self.extra_labels = ['STM', 'STM32F4', 'STM32F401RE']
2014-03-24 21:57:51 +00:00
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
self.supported_form_factors = ["ARDUINO", "MORPHO"]
class NUCLEO_L053R8(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0+"
self.extra_labels = ['STM', 'STM32L0', 'STM32L053R8']
self.supported_toolchains = ["ARM", "uARM"]
self.supported_form_factors = ["ARDUINO", "MORPHO"]
class NUCLEO_L152RE(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M3"
self.extra_labels = ['STM', 'STM32L1', 'STM32L152RE']
self.supported_toolchains = ["ARM", "uARM"]
self.supported_form_factors = ["ARDUINO", "MORPHO"]
class STM32F3XX(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M4"
self.extra_labels = ['STM', 'STM32F3XX']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
2013-07-17 13:11:54 +00:00
class LPC1347(Target):
def __init__(self):
Target.__init__(self)
2013-08-09 16:18:50 +00:00
2013-07-17 13:11:54 +00:00
self.core = "Cortex-M3"
2013-08-09 16:18:50 +00:00
2013-07-17 13:11:54 +00:00
self.extra_labels = ['NXP', 'LPC13XX']
2013-08-09 16:18:50 +00:00
2013-07-17 13:11:54 +00:00
self.supported_toolchains = ["ARM", "GCC_ARM"]
2013-08-09 16:18:50 +00:00
class LPC1114(Target):
ONLINE_TOOLCHAIN = "uARM"
2013-08-09 16:18:50 +00:00
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0"
self.extra_labels = ['NXP', 'LPC11XX_11CXX', 'LPC11XX']
2013-08-09 16:18:50 +00:00
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM","GCC_CR"]
2013-08-09 16:18:50 +00:00
class LPC11C24(Target):
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0"
self.extra_labels = ['NXP', 'LPC11XX_11CXX', 'LPC11CXX']
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM"]
2013-08-09 16:18:50 +00:00
2013-11-25 16:32:46 +00:00
class LPC11U35_401(Target):
ONLINE_TOOLCHAIN = "uARM"
def __init__(self):
Target.__init__(self)
2013-11-25 16:32:46 +00:00
self.core = "Cortex-M0"
2013-11-25 16:32:46 +00:00
self.extra_labels = ['NXP', 'LPC11UXX']
2013-11-25 16:32:46 +00:00
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM","GCC_CR"]
2013-08-09 16:18:50 +00:00
2013-11-25 16:32:46 +00:00
class LPC11U35_501(Target):
ONLINE_TOOLCHAIN = "uARM"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0"
self.extra_labels = ['NXP', 'LPC11UXX']
self.supported_toolchains = ["ARM", "uARM","GCC_ARM","GCC_CR"]
2014-02-07 11:43:25 +00:00
class UBLOX_C027(Target):
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M3"
self.extra_labels = ['NXP', 'LPC176X']
2014-02-07 11:43:25 +00:00
self.supported_toolchains = ["ARM", "uARM", "GCC_ARM", "GCC_CS", "GCC_CR", "IAR"]
2014-05-08 09:59:15 +00:00
self.macros = ['TARGET_LPC1768']
self.supported_form_factors = ["ARDUINO"]
2014-02-07 11:43:25 +00:00
2014-02-03 16:02:28 +00:00
class NRF51822(Target):
EXPECTED_SOFTDEVICE = 's110_nrf51822_6.0.0_softdevice.hex'
2014-03-18 10:16:16 +00:00
OUTPUT_EXT = '.hex'
APPCODE_OFFSET = 0x14000
def __init__(self):
Target.__init__(self)
2013-11-25 16:32:46 +00:00
self.core = "Cortex-M0"
2013-11-25 16:32:46 +00:00
self.extra_labels = ["NORDIC"]
2013-11-25 16:32:46 +00:00
self.supported_toolchains = ["ARM"]
self.is_disk_virtual = True
def init_hooks(self, hook, toolchain_name):
if toolchain_name in ['ARM_STD', 'ARM_MICRO']:
hook.hook_add_binary("post", self.binary_hook)
@staticmethod
def binary_hook(t_self, resources, elf, binf):
for hexf in resources.hex_files:
2014-02-03 16:02:28 +00:00
if hexf.find(NRF51822.EXPECTED_SOFTDEVICE) != -1:
break
else:
t_self.debug("Hex file not found. Aborting.")
return
2014-02-21 15:05:21 +00:00
# Merge user code with softdevice
from intelhex import IntelHex
binh = IntelHex()
2014-02-03 16:02:28 +00:00
binh.loadbin(binf, offset = NRF51822.APPCODE_OFFSET)
sdh = IntelHex(hexf)
sdh.merge(binh)
2014-03-18 10:16:16 +00:00
with open(binf.replace(".bin", ".hex"), "w") as f:
sdh.tofile(f, format = 'hex')
2014-02-11 06:54:38 +00:00
class LPC1549(Target):
2014-02-21 12:28:22 +00:00
ONLINE_TOOLCHAIN = "uARM"
2014-02-11 06:54:38 +00:00
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M3"
self.extra_labels = ['NXP', 'LPC15XX']
self.supported_toolchains = ["uARM"]
self.supported_form_factors = ["ARDUINO"]
class LPC11U68(Target):
ONLINE_TOOLCHAIN = "uARM"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0+"
self.extra_labels = ['NXP', 'LPC11U6X']
self.supported_toolchains = ["uARM"]
self.supported_form_factors = ["ARDUINO"]
class DISCO_F100RB(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M3"
self.extra_labels = ['STM', 'STM32F1', 'STM32F100RB']
self.supported_toolchains = ["GCC_ARM"]
class DISCO_F051R8(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M0"
self.extra_labels = ['STM', 'STM32F0', 'STM32F051','STM32F051R8']
self.supported_toolchains = ["GCC_ARM"]
class DISCO_F407VG(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M4F"
self.extra_labels = ['STM', 'STM32F4', 'STM32F407','STM32F407VG']
self.supported_toolchains = ["GCC_ARM"]
class DISCO_F303VC(Target):
ONLINE_TOOLCHAIN = "uARM"
OUTPUT_NAMING = "8.3"
def __init__(self):
Target.__init__(self)
self.core = "Cortex-M4F"
self.extra_labels = ['STM', 'STM32F3', 'STM32F303','STM32F303VC']
self.supported_toolchains = ["GCC_ARM"]
2014-05-28 14:03:07 +00:00
class XADOW_M0(LPC11U35_501):
def __init__(self):
LPC11U35_501.__init__(self)
class ARCH_BLE(NRF51822):
def __init__(self):
NRF51822.__init__(self)
2013-11-25 16:32:46 +00:00
# Get a single instance for each target
TARGETS = [
LPC2368(),
LPC1768(),
LPC11U24(),
2013-08-09 16:18:50 +00:00
LPC11U24_301(),
KL05Z(),
KL25Z(),
2013-09-24 14:01:06 +00:00
KL46Z(),
2013-09-24 14:36:04 +00:00
K20D5M(),
Target K64F addition. Squashed commit of the following: commit db3c9f7682083abeb291e01df31e67e4c50845b3 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Apr 2 09:52:00 2014 +0200 K64F - KSDK - Warnings fixes commit a639a5cdff889c13509c954b0a34ebac861c1361 Merge: 67a2c2a f3de345 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Apr 1 12:48:35 2014 +0200 Merge branch latest 'master' into dev_target_k64f Conflicts: libraries/rtos/rtx/RTX_Conf_CM.c workspace_tools/build_api.py commit 67a2c2aeb976f264db52ea10d18fea9de0d7685f Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 30 13:19:51 2014 +0200 K64F - PinName for buttons (SW2, SW3) commit 957573e2cd42d5c73ed99477abb98c8b883695b2 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 25 11:46:57 2014 +0100 K64F - pins addition to mbed HAL, uart - 4 instances, fix i2c instance which was not stored commit 2347a6d03984e297190910a250f2771032ae6327 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 15:20:51 2014 -0500 Added wait to i2c stop commit b7b4a9c72e8724087a44078c41a2cb33e4c8d5e3 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 24 19:28:16 2014 +0100 K64F - I2c - ack flag retreive correction (logic inverted in ksdk hal) commit 46c875251263029e32463c3b48473b10496088d9 Author: sg- <sam.w.grove@gmail.com> Date: Mon Mar 24 13:16:18 2014 -0500 Added I2C Pinnames commit b71c7a0dfba7025662f9a9d176494ce4dc86273e Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 17:02:34 2014 +0100 K64F Arduino pinNames update commit d41b0ee493263d1d80fcb72b3f0d4d788359c7c9 Merge: 9c0a982 e2574eb Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 18 14:57:57 2014 +0100 Merge remote-tracking branch 'upstream/master' into dev_target_k64f. K64F gpio changed according to the latest mbed master. Conflicts: libraries/rtos/rtx/RTX_CM_lib.h workspace_tools/export/uvision4.py commit 9c0a9822ab14263fff5e3b6459b7c2b4a77ce30c Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 17 21:08:17 2014 +0100 K64F - sleep support commit 5edcf3603d2e7b00eedbb377203a054b7a01e51d Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 16 18:19:55 2014 +0100 K64F - pullup/down corrections, LED1 - R, LED2 - G, LED3 - B commit a2b3b53a1474d32779654765cd1ce2ba2c6b2186 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 13 20:55:39 2014 +0100 K64F - SPI - delays are set, pin definition for tests commit 1f3b3abe16f4afaaf1b75cb4bf3e3a9d5b6e50a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 21:26:00 2014 +0100 K64F - DAC update - tested with test a8 - internal reference set to VDDA - PinName DAC0_OUT commit 26d8cf47f8c0786b290ae659beb022901029b313 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Mar 11 08:31:44 2014 +0100 KSDK - drivers layer removal, mbed HAL using only KSDK HAL - ADC corrections with channels, and clock configuration commit 67ebe14f5c88725033ea0fb135d94b6bf9a00fdb Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:46:08 2014 +0100 K20 copy files removed, targets.py - vertical alignment for K64F definition commit be5c562d513c808e5bd425195a4fb1c71f47a57e Merge: 696a713 fe0aca9 Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:14:55 2014 +0000 Merge branch 'rtos_support' into dev_target_k64f commit 696a713751194b4762f1cdf6c17c0786decd7808 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Mar 10 12:05:30 2014 +0100 [FIX] K64F - adc, sgtl driver updates commit fe0aca9940bbdd5ee70a1a7341a0a2ad2abf912b Author: Emilio Monti <emilmont@gmail.com> Date: Mon Mar 10 11:04:16 2014 +0000 Add RTOS support for K64F commit 5c3edcbca6dbcce628c7cde51ac94a6fc6278ba5 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Mar 9 20:43:38 2014 +0100 K64F - uvision templates update - uvision 5.10 supports K64F commit 33f18d11d0eadb9243f1be0ae96c5f82e2913d48 Merge: 26f7587 74e9b2e Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Mar 8 10:34:25 2014 +0100 Update branch from mbed master - merge branch 'master' into dev_target_k64f Conflicts: libraries/USBDevice/USBDevice/USBEndpoints.h libraries/USBDevice/USBDevice/USBHAL_KL25Z.cpp workspace_tools/export/uvision4.py workspace_tools/targets.py commit 26f75872b19a1db2a3abb34c6e773bac56acb32f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Mar 6 22:15:53 2014 +0100 K64F - USBDevice - MPU disable in init commit e54d6bbaa68827bd63058fbf2428e289d15ac1f7 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 21:06:58 2014 +0100 K64F - clock setup 4 (usb clock enable) commit c4165732b9520cb31ae3d649d50c353d09dc9932 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 26 20:01:47 2014 +0100 K64F - USBDevice addition commit 9fcdbb8562b1415561b04e902fcdbb4724add5af Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 24 19:11:48 2014 +0100 K64F SPI HAL - initial version commit 8093df58fa7d17fcb5ad04872c958d5254ee1d8a Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Feb 22 13:14:44 2014 +0100 K64F - RTC and I2C implementation (using KPSDK HAL) - instance correction in objects and peripherals names headers commit 7ef3fbda605c2bd53a86f37d0676c0393b2e2949 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Feb 14 09:45:27 2014 +0100 mbed RTC HAL for K64F commit e40332fd2db8bf36b3e6cabac5729e013da40c28 Merge: e059f65 6bfcd87 Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Feb 13 14:20:20 2014 +0100 Merge branch 'master' into dev_target_k64f Conflicts: workspace_tools/build_api.py workspace_tools/export/uvision4.py workspace_tools/targets.py workspace_tools/toolchains/__init__.py commit e059f65fd09694418f9fa4f38da90954ab9decfe Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Feb 5 21:35:49 2014 +0100 pwm mbed HAL - using jusst ftm hal from KPSDK, not yet functional commit b784278872b1d66ce2940f4988e0479971de8bc0 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Feb 3 18:28:24 2014 +0100 uvision exporters for K64F, uticker - lptmr - lptmr - no hal neiter driver, quick implementation using registers and internal clock - exporters for K64F - using K60 1MB target, because K64F is not available in 4.7 yet commit 7a030693e025c2bd456563f3e6f4456033d3f644 Author: Bogdan Marinescu <bogdan.marinescu@arm.com> Date: Tue Jan 28 16:29:54 2014 +0200 Attempt to keep target's include directory structure commit a2445b383224125abf4ee23bd17f1e685010a4a5 Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 27 07:25:16 2014 +0100 Original KPSDK include directory structure for device commit 9c07c58bb9cf5e9d8be4c3bec117ee87a5ea81c0 Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 16:51:17 2014 +0000 K64F ADC - initial commit - ADC using KPSDK driver commit 88e03ef8c5855a57887bb36cddfa5ab1491d400c Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 12:18:14 2014 +0000 GPI IRQ - nvic vectors number correction - gpio irq HAL implementation commit e83f1108ae9f779ce240d6cdfe23532bfa00a55e Author: 0xc0170 <c0170@rocketmail.com> Date: Fri Jan 24 10:06:44 2014 +0000 PORT HAL implementation - using gpio hal port commit 75c21943200c8240d1edaf0a67f84b9f3b43db7f Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 16:02:36 2014 +0000 Serial (only 8bit at the moment), using KPSDK HAL commit 296e79def617f005918cd8e2aa574f2908a362ca Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 23 08:35:50 2014 +0000 Folder structure correction for K64F - KPSDK - scripts reverted, only new macro is available - K64F specific headers are in HAL in device folder commit f236b1ffcb9c8b443ad8483bca8b0e564a63f004 Author: 0xc0170 <c0170@rocketmail.com> Date: Wed Jan 22 16:07:30 2014 +0100 update KPSDK to RC1 - the update causes few more dependences which were reported. Will be removed later (usb, boards) - pit timer - hal use , pit driver uses us period commit f02c5353d4920e885f803ad235e5e82001e97b94 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:45:55 2014 +0100 KPSDK In/out declaration removal commit 8c88e098b4dc4901753309f1e6db4adb8aca4384 Author: 0xc0170 <c0170@rocketmail.com> Date: Tue Jan 21 09:12:41 2014 +0100 gpio_t struct only needs pinName - gpio_init creates init objects on stack commit 6b96d4ea2c5a6a2cb13571d740ffb679a62f8f3d Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 19:59:03 2014 +0100 us ticker - pit implementation (not functional yet) - pit driver in KPSDK - added sdk prefix to needed functions commit 098e60a3846abcd4c9c00bd199b01d4b1899807f Author: 0xc0170 <c0170@rocketmail.com> Date: Mon Jan 20 13:01:58 2014 +0100 GPIO HAL - gpio_set implementation commit 2bfebbfc75dcd08c20297ba42dc0cc82e5381a40 Author: 0xc0170 <c0170@rocketmail.com> Date: Sun Jan 19 20:46:55 2014 +0100 GPIO KPSDK changes - gpio driver - sdk prefix, no lookuptable, input/output declaration, refactoring, set MUX to GPIO - gpio api in mbed implementation, tested on blue led commit d083733c485fbdd79ed9ce87100df9fee82294a7 Author: 0xc0170 <c0170@rocketmail.com> Date: Sat Jan 18 17:14:09 2014 +0100 Update folder structure for KPSDK - drivers addition - usb (needed by drivers - needs to be fixed) - utilities - hal folder - drivers/flash removed (needs to be fixed) - usb host removed (needs to be fixed) commit 9abcf3d94a2cc849cd6e586c1bad650b6a340a0c Author: 0xc0170 <c0170@rocketmail.com> Date: Thu Jan 16 11:06:16 2014 +0100 Initial commit for K64F - KPSDK addition - CMSIS + HAL for K64F - HAL is not yet implemented - scripts - target contain macros, ignore folders, cmsis copy folders
2014-04-02 12:39:01 +00:00
K64F(),
LPC812(),
2013-08-24 06:49:16 +00:00
LPC810(),
2013-05-16 06:53:02 +00:00
LPC4088(),
2013-07-08 14:58:15 +00:00
LPC4330_M4(),
STM32F3XX(),
STM32F407(),
NUCLEO_F030R8(),
NUCLEO_F072RB(),
NUCLEO_F103RB(),
NUCLEO_F302R8(),
NUCLEO_F401RE(),
NUCLEO_L053R8(),
NUCLEO_L152RE(),
LPC1347(),
2013-08-09 16:18:50 +00:00
LPC1114(),
LPC11C24(),
LPC11U35_401(),
LPC11U35_501(),
NRF51822(),
2014-02-11 06:54:38 +00:00
UBLOX_C027(),
LPC1549(),
LPC11U68(),
DISCO_F051R8(),
DISCO_F100RB(),
DISCO_F303VC(),
2014-05-28 14:03:07 +00:00
DISCO_F407VG(),
XADOW_M0(),
ARCH_BLE()
]
# Map each target name to its unique instance
TARGET_MAP = {}
for t in TARGETS:
TARGET_MAP[t.name] = t
TARGET_NAMES = TARGET_MAP.keys()
# Some targets with different name have the same exporters
2013-11-25 16:32:46 +00:00
EXPORT_MAP = {}