Commit Graph

5776 Commits (5681da084567e6736c5425a54586abd16d430e57)

Author SHA1 Message Date
0xc0170 5681da0845 Target - backward compatibility KSDK 1.0 labels
The extra_labels should not be removed, as it could break old sources or
mbed-lib or applications.
2016-05-09 13:44:37 -05:00
Sam Grove c5b4c543c9 Merge pull request #1720 from 0xc0170/fix_rtos_macro
RTOS - fix Cortex-M version - add macros required for new kernel
2016-05-06 13:01:33 -05:00
0xc0170 9aee702b11 RTX - pull cmsis_os into rt_Timer
This causing a warning in the rt_cmsis.c, as they use preprocessor
to redefine a type. A fix is to move the macro above, as it should not
change anything else. This should be removed, and use a cast, however I am
not fully familiar why they do this macro trick.
2016-05-06 12:27:25 -05:00
0xc0170 def841979a RTOS - fix Cortex-M version - add macros required for new kernel
2 new macros were introduced to capture changes in the kernel. We used toolchains/__init__
script to capture those, which is not in the sync with actual sources. This fix introduces
those macros in the source, rather than a script.

We will further eliminate those macros to be used outside of RTX kernel (c++ API).
2016-05-06 11:50:21 -05:00
Martin Kojtal 84fc61c940 Merge pull request #1716 from neilt6/master
[RTOS] Improved Error Functions
2016-05-05 15:50:50 -05:00
neilt6 a484830587 [RTOS] Improved Error Functions
Added error message to sysThreadError(), and improved os_error().
2016-05-05 14:43:56 -06:00
Martin Kojtal 53b54323ba Merge pull request #1706 from LMESTM/fix_pwmout
Fix pwmout for STM32F3
2016-05-05 14:46:07 -05:00
Martin Kojtal 860fdd282b Merge pull request #1702 from 0xc0170/dev_rtos_update
rtx update to v4.79
2016-05-05 14:35:40 -05:00
0xc0170 cacf085e73 rtx - set task id prior rt_init_context
This is a bugfix, which caused LPC1549 to fail (os_error). There was a fix
introduced to rtx mbed sources. For more information:
461403989c
2016-05-05 13:49:47 -05:00
0xc0170 239c40eb62 RTX - os_error invokes mbed error() 2016-05-05 12:11:11 -05:00
0xc0170 bc270f1fe2 RTX - expose rt_tid2ptcb() function to get TCB
This enables the stack info methods to be supported for Cortex-M
targets. The rt_TypeDef required one small change - rename new structure
member as this is a reserved keyword in C++.

We need to ask for tid everytime we need to use tcb, do not expose internal
RTX details, we keep it within Thread.cpp file.
2016-05-05 12:11:09 -05:00
0xc0170 9d06547135 lwip - fix size of sys mutex for RTX 4.79
The size was increased to 4 bytes. Thanks @c1728p9 for spotting this.
2016-05-05 12:11:08 -05:00
Russ Butler ab3c1e3a16 RTX: Support stacks larger than 64k
Cherry pick commit d587474778 -
"RTX: Support stacks larger than 64k"

This allows the latest version of the RTOS to run mbed client over
ethernet without crashing.
2016-05-05 12:11:06 -05:00
Martin Kojtal 007223c954 RTX - fix missing header guards for Cortex-M4 (GCC ARM)
The HAL CM4 is valid only for FPU present. These guards were added
to mbed SDK, as there are targets Cortex-M4.
2016-05-05 12:11:04 -05:00
Martin Kojtal aa6f0b8df1 RTOS - update for RTX v4.79 for Cortex-M
Thread - stack methods are not available for now, as tcb pointer was removed from
internal structure. To obtain it, we could get it from the kernel, but this should be
reconsidered. Either RTOS should provide it, or these methods will become deprecated.
2016-05-05 12:11:02 -05:00
Martin Kojtal 9a68561b69 RTX - update to v4.79 for Cortex-M
Changes to the original kernel:

Cortex-M requires to define __CMSIS_OS_RTX, and __MBED_CMSIS_RTOS_CM. The macro __MBED_CMSIS_RTOS_CM
is mbed specific macro, to track changes to the kernel. This should keep us aware what has changed. For instance,
one breaking change was thread adding instances variable, which were not in mbed. This can be find as
it's protected via __MBED_CMSIS_RTOS_CM ifdef.

```
// added for mbed compatibility
// original RTX code
```

Startup for toolchains - mbed defines own stack pointer (set_main_stack()), therefore it should be called in the startup.
IAR added low level init calls and dynamic intialization to the IAR startup. All defined in RTX_CM_lib.h.

The timer thread has task id 0x01, main task 0x02. There are exception for main task not to check for
overflows. This is mbed specific, was reapplied from mbed code base.

IAR fixed SVC calls, this fix had to be reapplied (repo mbed PR 736 for more information).
2016-05-05 12:11:00 -05:00
0xc0170 8bbe0bb3ca Cortex symbols - add cmsis rtos for all cortex cores 2016-05-05 12:10:56 -05:00
Martin Kojtal fcf297438c Merge pull request #1711 from 0xc0170/fix_uvision_inc
uvision - fix INC dir
2016-05-05 11:25:52 -05:00
0xc0170 89b6c41a1b uvision5 - add flags from uvision toolchain class
Flags should be unique, thus use list(set()) to remove duplicates
2016-05-04 16:56:43 -05:00
0xc0170 5ce3ec9619 uvision - fix INC dir
The path for INC might be with spaces, uvision does not handle it well,
thus wrapping around ""
2016-05-04 16:41:01 -05:00
Martin Kojtal 816233cf5d Merge pull request #1710 from NXPmicro/dev_ksdk_2.0
Fix build warnings
2016-05-04 16:17:07 -05:00
Mahadevan Mahesh df4c79cd74 Fix build warnings
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-05-04 15:01:24 -05:00
Martin Kojtal 8dfa3ea649 Merge pull request #1709 from 0xc0170/fix_uvision_flags_asm
uvision - fix c/asm flags
2016-05-04 12:04:51 -05:00
0xc0170 ded7d39c76 uvision - microlib fix - commands to use -D__MICROLIB
Exporters use --library_type=microlib. This will be unified soon, as currently
the templates does not support ASM macros.
2016-05-04 11:42:45 -05:00
0xc0170 5018270bb5 uvision - asm flags fix
Use deepcopy to get flags as they are shared between ARM and uARM. asm flags
for command line require c flags as it used to be.
2016-05-04 10:58:44 -05:00
0xc0170 ee00dbd9a7 uvision - fix c/asm flags
Some flags are only C specific, causes problems when there's .S file in the workspace.
For instance, -Ox is only C flag, causes a project to fail with "unrecognized option"
2016-05-04 09:45:16 -05:00
Laurent Meunier c5c95d11f3 Use runtime error detection
Rather than MBED_ASSERT, let's use error() function to detect out of range
parameters during runtime execution
2016-05-04 09:25:40 +02:00
Laurent Meunier 731148eb72 Back to 10ms period
As suggested in review comments, let's keep default 10ms period
2016-05-04 08:59:57 +02:00
Laurent Meunier c9350f8e5a Update ARDUINO test to allow period change 2016-05-03 18:05:43 +02:00
Laurent Meunier 7c657ad5c9 [STM32F3] Increase the supported period range (#1682)
Introducing the prescaler management allows a wider period range support,
from about 65ms before now up to about 32s. We're also introducing
asserts in case the period or prescaler is truncated as the HW registers
are 16 bits large.
2016-05-03 18:05:43 +02:00
Martin Kojtal 9cef243de2 Merge pull request #1700 from NXPmicro/dev_ksdk_2.0
Switch to KSDK 2.0
2016-05-02 18:13:47 -05:00
Mahadevan Mahesh fef9bc3961 USB support for KL27
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-05-02 14:52:31 -05:00
Mahadevan Mahesh da0924f95c Networking update for FRDM K64 platform
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-04-29 15:54:01 -05:00
Mahadevan Mahesh 840cd1ccb5 Move PWM API to the target specific folder
Some use the FTM module and some use the TPM module.

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-04-29 15:53:57 -05:00
Mahadevan Mahesh fffadba309 Moved SDK 2.0 platforms back to TARGET_Freescale from TARGET_NXP.
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-04-29 15:53:53 -05:00
Mahadevan Mahesh f512738f91 Add support for KL27Z FRDM board
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-04-29 15:45:05 -05:00
Mahadevan Mahesh 06698f4ffa Add support for the K64F Hexiwear board
Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-04-29 15:45:02 -05:00
Mahadevan Mahesh-R9AADQ 6ff2badf1f Added support for Kinetis K22
Use Kinetis SDK 2.0
Moved to TARGET_NXP

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-04-29 15:44:58 -05:00
Mahadevan Mahesh-R9AADQ 2c9c632aad Added Kinetis K64 support
Use Kinetis SDK 2.0. Moved this to TARGET_NXP

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-04-29 15:44:54 -05:00
Mahadevan Mahesh-R9AADQ acb896b3cb Removed Freescale Kinetis SDK 1.0 based implementations
This will be replaced by Kinetis SDK 2.0 based implemenation under the TARGET_NXP folder

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2016-04-29 15:27:42 -05:00
Martin Kojtal 6f14439b79 Merge pull request #1691 from 0xc0170/dev_flags_uvision
Flags unification for uvision
2016-04-29 11:45:02 -05:00
0xc0170 690b8f0e8b uvision exporter - use toolchain flags
progen uses flags set by the toolchain, this should produce
the same result within the build and an exporter project.
2016-04-29 11:40:39 -05:00
0xc0170 4168779361 uvision - flags dict creation
All flags for uvision are in one dictionary, therefore an exporter or
external scripts can get those and use.
2016-04-29 11:40:38 -05:00
Mahesh Mahadevan cb2033526a Merge pull request #1 from mbedmicro/master
Update to latest mbed code
2016-04-29 11:21:30 -05:00
Martin Kojtal d1dc989912 Merge pull request #1697 from soutade/master
Typo fix in HAL_CM0.S of ARM7 rtx
2016-04-29 10:13:29 -05:00
Martin Kojtal a2576a453b Merge pull request #1698 from svastm/change_default_pwm_l031k6
[NUCLEO_L031K6] Change the default pwm pin
2016-04-29 10:13:04 -05:00
svastm 7966ee4067 [NUCLEO_L031K6] Change the default pwm pin 2016-04-29 15:58:43 +02:00
Grégory Soutadé d5489b3723 Typo fix in HAL_CM0.S of ARM7 rtx 2016-04-29 07:58:34 +02:00
Martin Kojtal fe9720f24b Merge pull request #1626 from mtkrtk/rz_a1h_async_patch
[Renesas RZ/A1H] Enable asynchronous communications
2016-04-28 19:07:37 -05:00
Martin Kojtal 670e7bcb47 Merge pull request #1639 from mbedNoobNinja/master
New mbed platform VK_RZ_A1H
2016-04-28 19:07:17 -05:00