Commit Graph

4730 Commits (d4c83fc05645c95f7ec2ad0a0d308964b54fcf5c)

Author SHA1 Message Date
Cruz Monrreal 8ec8674e4e
Merge pull request #9833 from donatieng/remove_beetle
Remove Arm Beetle target for Mbed OS 5.12
2019-02-25 17:27:22 -06:00
Cruz Monrreal 1d2212dd60
Merge pull request #9224 from ThunderSoft123/master
Add platform TT_M4G9
2019-02-25 10:33:21 -06:00
deepikabhavnani 1a2f673e92 Disable the cypress targets explicitly instead of base targets 2019-02-25 09:45:06 -06:00
Donatien Garnier 176e5779ce Remove Arm Beetle target
Deprecation in preparation for Mbed OS 5.12 and move to IAR8 and ARMC6
2019-02-25 12:09:03 +00:00
panyz0725@thundersoft.com 1a1904644a Add api about I2C and SPI .... 2019-02-25 14:23:37 +08:00
panyz0725@thundersoft.com 3c1d938abf Add ARM_LIB_STACK to resolve CI Error 2019-02-25 11:03:32 +08:00
panyz0725@thundersoft.com 12e4adab99 Add USER_BUTTON and SPI in file PinNames.h 2019-02-25 11:03:32 +08:00
panyz0725@thundersoft.com 1dadab7e5a Add license in file cmsis_nvic.h 2019-02-25 11:03:32 +08:00
panyz0725@thundersoft.com db5d6963ef Modify license about file GPIO, SPI and system 2019-02-25 11:03:32 +08:00
panyz0725@thundersoft.com 217d2ce1fe Modify license 2019-02-25 11:03:31 +08:00
panyz0725@thundersoft.com ec9fd55c8f Update code 2019-02-25 11:03:31 +08:00
panyz0725@thundersoft.com 003a75bd26 Add "SPDX-License-Identifier: Apache-2.0" 2019-02-25 11:03:31 +08:00
panyz0725@thundersoft.com 7e265c81bd Add platform TT_M4G9 2019-02-25 11:03:31 +08:00
Deepika 49266c161c Remove TOOLCHAIN_GCC_CW_NEWLIB files 2019-02-22 11:31:18 -06:00
bcostm bd6e9aa4d2 STM32L4 USB: enable USBDEVICE 2019-02-22 10:53:23 -06:00
bcostm b6b7d00fed STM32F7 USB: enable USBDEVICE in targets.json 2019-02-22 10:53:23 -06:00
bcostm 28462d476a STM32F7 USB: add patch in CubeF7 hal driver 2019-02-22 10:53:22 -06:00
bcostm aa2b76a995 STM32L4 USB: move HAL_PCD_EP_Abort function
This function is for USB_OTG_FS devices only. Move it in the correct place (in "#ifdef USB_OTG_FS" area).
2019-02-22 10:53:22 -06:00
bcostm 4ca33aa266 STM32L4 USB: add patch in CubeL4 hal driver 2019-02-22 10:53:22 -06:00
TomoYamanaka b3dec25ceb Renesas : Implement USB Device feature
I implemented USB Device feature for Renesas mbed boards.
The code referenced the following code as a starting point and is implemented it by inheritting USBPhy same as other boards.
(mbed-os\features\unsupported\USBDevice\targets\TARGET_RENESAS)
2019-02-22 10:53:22 -06:00
bcostm 7354eb2779 STM32F4 USB: enable USB Device in targets.json
tests-usb_device-basic are OK on the following platforms:

NUCLEO_F412ZG
NUCLEO_F413ZH
NUCLEO_F429ZI
NUCLEO_F446ZE
DISCO_F413ZH
DISCO_F469NI
2019-02-22 10:53:22 -06:00
bcostm 1e807a305e STM32F4 USB: add patch in CubeF4 hal driver 2019-02-22 10:53:22 -06:00
Russ Butler d08034c9ef Remove OR from ST endpoint activation
When activating an endpoint assign new data rather than ORing
data to it. This ensures that values set from the previous use
do not effect the current configuration.
2019-02-22 10:53:19 -06:00
Russ Butler 86e1d436e7 Alternate implementation of HAL_PCD_EP_Abort
Update the patch "Create HAL_PCD_EP_Abort" to fix bugs.
This patch adds the low level functions USB_EPStopXfer, USB_EPSetNak,
USB_EPClearNak and the high level function HAL_PCD_EP_Abort so that
transfers can be stopped.

The functions USB_EPSetNak and USB_EPClearNak allow nak to be enabled
or disabled for an endpoint, preventing or allowing further transfers.

The function USB_EPStopXfer stops pending reads and writes started by
USB_EPStartXfer along with clearing and masking any interrupts enabled
by USB_EPStartXfer.

The function HAL_PCD_EP_Abort aborts any transfers on the given
endpoint. When this function completes the transfer interrupt
is guarenteed not to fire for this endpoint. Furthermore, the size
of data transferred during an aborted read can be found by calling
the function HAL_PCD_EP_GetRxCount.

Other notes on this Change:

1.
Prior to this patch the interrupt USB_OTG_DOEPINT_EPDISD was not
handled. When an OUT endpoint was disabled this interrupt occurred
causing the CPU to get stuck repeatedly handling this interrupt. This
is because this interrupt was unmasked but nothing cleared this
interrupt. This patch also adds code to handle and clear this
interrupt to prevent a lockup.

2.
Stopping a transfer on an OUT endpoint requires global nak OUT to
be in effect. Even with this being done, having entries in the rx fifo
prevented an OUT endpoint from being disabled. This behavior is not
mentioned in the Reference Manual.
2019-02-22 10:53:18 -06:00
Russ Butler c4cf19ee3b Revert "Create HAL_PCD_EP_Abort"
Revert the patch "Create HAL_PCD_EP_Abort" in preparation for an
alternate fix.
2019-02-22 10:53:18 -06:00
Michel Jaouen ced1cbd0ed Create HAL_PCD_EP_Abort 2019-02-22 10:53:16 -06:00
Russ Butler a47c383233 Update the STM32 USB driver to the new API
Take the code from
mbed-os\features\unsupported\USBDevice\targets\TARGET_STM
as a starting point and use it to fill in the USBPhy template for STM32
devices.
2019-02-22 10:53:16 -06:00
jeromecoutant 21606569da STM32F4: replace CLOCK_SOURCE_USB by DEVICE_USBDEVICE 2019-02-22 10:53:15 -06:00
jeromecoutant 9b16d4fb5b NUCLEO_F103RB: replace CLOCK_SOURCE_USB by DEVICE_USBDEVICE 2019-02-22 10:53:15 -06:00
Maciej Bocianski b79705813c target: arch_pro enable USBDEVICE support 2019-02-22 10:53:13 -06:00
Russ Butler 76aa7e0b6d Move USBPhy and related files to USB directory
Move the USBPhy header files into usb/device/USBPhy. Also move hal
and target USB files since mbed 2 does not compile when these files
are present without the USBPhy headers.

Directory restructure summary:
platform/USBPhy*
    to usb/device/USBPhy/USBPhy*
hal/*
    to usb/device/hal/*
targets/TARGET_Freescale/usb/*
    to usb/device/targets/TARGET_Freescale/*
targets/TARGET_NXP/TARGET_LPC176X/usb/*
    to usb/device/targets/TARGET_NXP/*
2019-02-22 10:52:35 -06:00
Russ Butler 7673ccd1c9 Improve LPC1768 USB stability
Make the following changes to improve stability:
-When disconnecting set address to disabled to prevent nacks
-Clear EP_SLOW one and only once for every interrupt where it is set_address
-Disable and clear control endpoint interrupts when disconnecting
2019-02-22 10:52:35 -06:00
Russ Butler aa76c776c9 Disable endpoints when disconnecting on Kinetis
Even thought the USB phy is disabled during disconnect, endpoints
still nack packets sent. This patch disables all endpoints so after
disconnect no USB traffic will be sent. This allows brief disconnects
of ~200us (or more) to be reliably detected by the host PC.
2019-02-22 10:52:35 -06:00
Russ Butler 2a84e3a4f6 Correct Kinetis 256 byte ctrl transfers
Correctly handle control transfers which are a multiple of 256 bytes
by checking for a non-zero value in the upper byte of size.
2019-02-22 10:52:35 -06:00
Russ Butler 08428f8300 Fix Kinetis endpoint initialization
Fully setup endpoint before enabling it in endpoint_add. This prevents
undefined behavior due to previous configuration.
2019-02-22 10:52:34 -06:00
Russ Butler 2708200a19 Update the Kinetis USB driver to the new API
Update this driver to match the new zero-copy API.
2019-02-22 10:52:34 -06:00
Russ Butler 4ab3a485d1 Update the LPC17XX driver to the new API
Update this driver to match the new zero-copy API.
2019-02-22 10:52:34 -06:00
Russ Butler 23615a7769 Update Kinetis USB to match the USBPhy API
Copy the Kinetis USB driver files from
mbed-os\features\unsupported\USBDevice\targets\TARGET_Freescale
and update them to match the new USBPhy API.
2019-02-22 10:52:33 -06:00
Russ Butler 25fb3183cf Add Kinetis USB files 2019-02-22 10:52:32 -06:00
Russ Butler 4be11ff158 Add USBPhy for the LPC17xx
Move the LPC17xx USB driver files from
mbed-os\features\unsupported\USBDevice\targets\TARGET_NXP
and update them to match the new USBPhy API.
2019-02-22 10:52:32 -06:00
Sarah Marsh 22abea324d Modify linker scripts for IAR and ARM compilers to support bootloader on NUCLEO_L073RZ 2019-02-22 11:06:29 +00:00
deepikabhavnani 270827b0d5 Enable ODIN boards 2019-02-22 09:25:09 +00:00
deepikabhavnani d67536dd08 Target_PSOC6 - Remove IAR supported from targets failing IAR 8.32 build 2019-02-22 09:25:09 +00:00
Deepika 3fd5f53b51 Dynamic heap support will be breaking change for all targets in IAR 7.x
Reverting this feature till IAR 8.x is stable and supported in Mbed OS
for few releases

1. Revert "Add Dynamic heap support to IAR"

This reverts commit 8ee29bbfa2.

2. Revert "Splited RAM section not compatible with dynamic HEAP."

This reverts commit a645bb2a6b.

3. Revert "Add Dynamic heap support to IAR"

This reverts commit 891e1f261b.
2019-02-22 09:25:09 +00:00
Deepika e54be4aeff Add Dynamic heap support to IAR
Two new block properties available in linker configuration files:
"expanding size" and "minimum size" for IAR 8.11.2 and above

Sample:
define block HEAP with expanding size, minimum size = 16K, alignment = 8 {};

This block will expand to consume all remaining available space in
the range where it is placed. If several such blocks end up in the same
range, they will share the remaining space.
Cannot place a block with expanding size inside another block with
expanding size, inside a block with maximum size, or inside an overlay.
2019-02-22 09:25:08 +00:00
deepikabhavnani 0ff6f9971b Remove IAR supported from targets failing IAR 8.32 build
Few targets have libraries compatible to IAR 7.x, which fail with
IAR 8.x, IAR support for them is removed till updated library is
added.

CI failure seen if IAR is not added as supported target, trying with
release_version as empty string

List of targets affected:

1. UBLOX_EVK_ODIN_W2
2. MTB_UBLOX_ODIN_W2
3. MBED_CONNECT_ODIN
4. MTB_MXCHIP_EMW3166
5. MTB_ADV_WISE_1530
6. MTB_USI_WM_BN_BM_22
7. REALTEK_RTL8195AM
2019-02-22 09:25:08 +00:00
deepikabhavnani ea3fa02210 Splited RAM section not compatible with dynamic HEAP.
RAM define/section if splited, IAR exanpding size considers just one
section while heap creation which results in smaller chunk for heap.
This commit is to unify the RAM section.
2019-02-22 09:25:07 +00:00
deepikabhavnani 334b2d64b0 Update params in calls to LDREXW/STREXW to uint32_t 2019-02-22 09:25:07 +00:00
deepikabhavnani b91dbab4bd Add Dynamic heap support to IAR
Two new block properties available in linker configuration files:
"expanding size" and "minimum size" for IAR 8.11.2 and above

Sample:
define block HEAP with expanding size, minimum size = 16K, alignment = 8 {};

This block will expand to consume all remaining available space in
the range where it is placed. If several such blocks end up in the same
range, they will share the remaining space.
Cannot place a block with expanding size inside another block with
expanding size, inside a block with maximum size, or inside an overlay.
2019-02-22 09:25:07 +00:00
aqin 84f52a871b adding updated binary for IAR v8.32 2019-02-22 09:25:06 +00:00
Oren Cohen 49aae7b43e
Update secure binaries 2019-02-22 02:04:00 +02:00
Oren Cohen 84f0e7be5b
Define delivery directory for FUTURE_SEQUANA_PSA 2019-02-22 01:53:20 +02:00
Cruz Monrreal 870bd05904
Merge pull request #9708 from davidsaada/david_protected_storage
Implement PSA protected storage & restructure PSA storage implementation
2019-02-21 17:30:56 -06:00
Cruz Monrreal 2ecb0a5031
Merge pull request #9798 from jeromecoutant/PR_LPTICKER_BOOTLOADER
STM32 LPTICKER (LPTIM): correct init execution after bootloader
2019-02-21 13:55:20 -06:00
Oren Cohen 3c5c205a23 Add flash IAP to sequana_psa m4 2019-02-21 20:59:19 +02:00
Cruz Monrreal 235a75f5b8
Merge pull request #9796 from SeppoTakalo/wiced_binaries
New Wiced binaries
2019-02-21 12:10:16 -06:00
Cruz Monrreal 01aeb48d0f
Merge pull request #9767 from TacoGrandeTX/fix_nrf_swo_led2_clash
Remove ITM from NRF52_DK and DELTA_DFBM_NQ620 targets
2019-02-21 11:01:46 -06:00
Russ Butler b32b996419 Use us ticker for tickless on devs with wrapper
The low power ticker wrapper layer adds a large amount of interrupt
latency. This can cause dropped bytes at a baud of 115200 on some
devices. To prevent this by default use the microsecond ticker for
tickless on devices which make use of the low power ticker wrapper.
2019-02-21 10:51:10 -06:00
Cruz Monrreal bba538c714
Merge pull request #9777 from ashok-rao/MTB_STM_L475
Adding STM32_L475 as a new MTB target
2019-02-21 10:37:59 -06:00
Cruz Monrreal 5a2e135283
Merge pull request #9782 from Rhomb-io/master
Adding RHOMBIO_L476DMW1K as a new Board target
2019-02-21 10:31:03 -06:00
Sarah Marsh 44bc123483 Add bootlader support for NUCLEO_L073RZ on GCC 2019-02-21 16:14:16 +00:00
jeromecoutant 0d620fe720 STM32 LPTICKER (LPTIM): correct init execution after bootloader 2019-02-21 16:25:20 +01:00
Seppo Takalo 98846b64ec New Wiced binaries 2019-02-21 16:59:11 +02:00
Martin Kojtal dbd92c746b
Merge pull request #9387 from tymoteuszblochmobica/Sockets
Multihoming initial release
2019-02-21 13:50:03 +01:00
Guillermo Alonso 16628d7b8d Change in license identifier, removed commented dead code
Change in license identifier
Removed commented dead code
Removed some tab space
2019-02-21 11:55:41 +01:00
Ashok Rao 9102b59824 Changing SPDX license identifier to BSD-3-Clause 2019-02-21 10:35:25 +00:00
deepikabhavnani dab2a30c29 Target_Freescale: Add heap section in linker files 2019-02-20 16:01:40 -06:00
Cruz Monrreal fded3631e3
Merge pull request #9775 from vmedcy/psoc6-port-api
PSOC6: fix port_write API
2019-02-20 12:02:26 -06:00
Cruz Monrreal 59549b8eb4
Merge pull request #9616 from kjbracey-arm/nrf52_atomics
nRF52 serial: Tighten/simplify atomics
2019-02-20 11:58:34 -06:00
Guillermo Alonso faf03e02dc added licence identifier texts 2019-02-20 17:48:07 +01:00
Ashok Rao 6c3b732b17 Removing redundant code comments 2019-02-20 15:22:11 +00:00
Ashok Rao a7c878bb47 Adding SPDX license identifer for all new files 2019-02-20 15:07:03 +00:00
Ashok Rao 56508cfc4e Adding SPDX license identifier 2019-02-20 15:02:59 +00:00
Ashok Rao 1849921466 Adding STM32_L475 as a new MTB target 2019-02-20 14:40:39 +00:00
Martin Kojtal 39c8374760
Merge pull request #9554 from SeeedJP/hal-wio_3g-9450
Wio 3G: Modified sequence of module startup.
2019-02-20 13:57:33 +01:00
Seppo Takalo e45da3f78f Rebuild new Wiced binaries 2019-02-20 14:37:34 +02:00
Guillermo Alonso 7b2abc75c2 Added new target RHOMBIO_L476DMW1K 2019-02-20 12:10:53 +01:00
Volodymyr Medvid d49e2ab232 PSOC6: fix port_write API
Fix port_write API to correctly shift the passed value.
This allows the reference application provided in PortOut docs
to work corectly with arbitrary LED_MASK.
https://os.mbed.com/docs/mbed-os/v5.11/apis/portout.html

The fix applies to both PSOC6 and PSOC6_FUTURE HAL implementations.
2019-02-20 12:32:10 +02:00
Martin Kojtal 2d30d0ff99
Merge pull request #9762 from vmedcy/psoc6-target-updates
PSOC6: update the psoc6pdl and HAL to the latest version
2019-02-20 11:23:54 +01:00
Yoshihiro TSUBOI c41f1c75d7 [Wio 3G] Fix onboard modem initialization
Fix for issue #9450 by adding turning off the modem power at startup, so that modem is sure to be in the initial state.
Fix for wrong filename and classname.

// WIP
2019-02-20 19:00:12 +09:00
Martin Kojtal 3f46c82136
Merge pull request #9555 from SeeedJP/hal-wio_bg96-9450
Wio BG96: Modified sequence of module startup
2019-02-20 09:36:00 +01:00
deepikabhavnani c5ad5f6c94 Target_Freescale:Add heap section 2019-02-19 15:49:49 -06:00
deepikabhavnani f518a696de Remove unused heap_size define 2019-02-19 15:49:49 -06:00
deepikabhavnani 60e7a7da98 Add heap section to linker file 2019-02-19 15:49:49 -06:00
deepikabhavnani 38e9314ddd Add missing space in linker script 2019-02-19 15:49:49 -06:00
deepikabhavnani 2a1211a82a Add heaplimit to NRF52 devices 2019-02-19 15:49:49 -06:00
Deepika 9231e26f3f Corrected main thread stack size, was accidently updated by removing condition
Main thread stack size is reduced for TARGET_STM32F070RB and TARGET_STM32F072RB,
in recent update to mbed_rtx.h the conditional check for main thread size update
was removed.
2019-02-19 15:49:49 -06:00
Deepika e7e9e0734c Update K64F linker files for general solution of 2-ram regions 2019-02-19 15:49:49 -06:00
deepikabhavnani b36147fbe9 ISR_Stack_start/size defines are not needed, use linker file defines 2019-02-19 15:49:49 -06:00
deepikabhavnani 9ed7e4dc83 Remove unnecessary endif 2019-02-19 15:49:49 -06:00
deepikabhavnani d0cc7aceb5 Target_Cypress: Update linker files to add heap limit 2019-02-19 15:49:49 -06:00
Deepika 537b3646d3 Resolve build/type cast errors 2019-02-19 15:49:49 -06:00
Deepika 462f339d47 TARGET_Wiznet: Setup heap limit and size 2019-02-19 15:49:49 -06:00
Deepika c6a72f2cd7 TARGET_TT: Setup heap limit and size 2019-02-19 15:49:49 -06:00
Deepika 72ae546228 TARGET_TOSHIBA :Setup heap limit and size 2019-02-19 15:49:49 -06:00
Deepika e522c4691e Target_STM:_sbrk updated to use limits from linker files no need to set defines
_sbrk uses the exports from linker file __end and __HeapLimit to allocate memory
in heap. Linker scripts were updated accordingly to set the limits.
2019-02-19 15:49:49 -06:00
Deepika 1f57568015 TARGET_Silicon_Labs Setup heap limit and size 2019-02-19 15:49:49 -06:00
Deepika c85ca4db0c TARGET_RENESAS: _sbrk updated to use limits from linker files no need to set defines 2019-02-19 15:49:49 -06:00
Deepika a814078f0c Target_UNO_91H: Remove custom _sbrk, update heap limits 2019-02-19 15:49:49 -06:00
Deepika 73f4a52361 Target_ONSEMI: Setup heap limit and size 2019-02-19 15:49:49 -06:00
Deepika 57b9ccc517 Target_NXP: Setup heap limit and size 2019-02-19 15:49:49 -06:00
Deepika b2e189f453 Target_Nuvoton: Remove target specific implementation of _sbrk 2019-02-19 15:49:49 -06:00
Deepika 8c63dbeb31 Target_Maxim: Setup heap limit and size 2019-02-19 15:49:49 -06:00
Deepika 25a127e97b target_Gigadevice: Set the heap size and limit 2019-02-19 15:49:49 -06:00
Deepika e03455a920 Target_Freescale: Set the heap size and limit 2019-02-19 15:49:49 -06:00
Deepika 5e4dcaba71 Target_Cypress: Set the heap limit 2019-02-19 15:49:49 -06:00
Deepika 25bcedac38 TARGET_Atmel: Set the heap size and limit 2019-02-19 15:49:49 -06:00
Deepika 8b02a60b94 TARGET_ARM_FM: Set the heap size and limit 2019-02-19 15:49:49 -06:00
Deepika 41eaefeeb4 Update memory model for stack and heap memory
Memory model for RTOS and No RTOS was initially single stack and heap,
only few targets implemented 2-region RAM model.

2-region RAM model is applied for all toolchains and targets.

GCC: __wrap__sbrk was implemented for 2-region ram model, with switch to 2-region
for all targets, we do not need target specific implementation of this API
Also _sbrk is WEAK function, hence can be over written in target folder for
special cases
2019-02-19 15:49:45 -06:00
Przemyslaw Stekiel e60a0f46e4 Remove duplicated _mbed_user_setup_stackheap, __rt_lib_init definitions.
Few targets already used 2-region memory model.
2019-02-19 15:46:32 -06:00
RFulchiero 5fb5a4a414 Remove ITM from NRF52_DK and DELTA_DFBM_NQ620 targets
The NRF52_DK and DELTA_DFBM_NQ620 have the SWO pin (p0_18) mapped to
LED2. This means that on startup LED2 turns on after the ITM is
initialized which is confusing. Since most users want LED2 usage
instead of SWO we remove the ITM for these targets.

The nRF52 readme is updated to instruct users how to get SWO support
if they need it.
2019-02-19 15:20:36 -06:00
Volodymyr Medvid 06354bf48e PSOC6: update BSP generated sources with latest configurator
Use ModusToolbox Device Configurator 1.1.0.284 to generate the
BSP low-level initialization code. Compatible version of Device
Configurator to be released with ModusToolbox 1.1.

Notable changes:
* rename cycfg_connectivity -> cycfg_routing
* switch LF_CLK clock source from ILO to WCO on
  CY8CPROTO-062-4343W and CYW943012P6EVB-01
2019-02-19 17:59:05 +02:00
Volodymyr Medvid c97f742bd7 PSOC6: minor updates to Cypress HAL 2019-02-19 17:59:01 +02:00
Volodymyr Medvid edb944abf0 PSOC6: update PDL to the latest version 2019-02-19 17:04:10 +02:00
Martin Kojtal 723236f855
Merge pull request #9307 from mtomczykmobica/ONME-3949
Configuration options for STM_EMAC buffer counts
2019-02-19 14:09:24 +01:00
Marcin Tomczyk a5f93e0b07 ONME-3949 Configuration options for STM_EMAC buffer counts 2019-02-19 08:18:18 +01:00
Yoshihiro TSUBOI 89bb25efc1 [Wio BG96] Fix onboard modem initialization
Fix for issue #9450 by adding turning off the modem power at startup, so that modem is sure to be in the initial state.
2019-02-19 00:44:38 +09:00
Cruz Monrreal 31be2a320c
Merge pull request #9710 from Patater/remove-crypto-when-no-entropy
crypto: Remove PSA Crypto API from targets without entropy
2019-02-15 12:27:21 -06:00
Cruz Monrreal 31519eff4a
Merge pull request #9667 from deepikabhavnani/NXP_linker
Linker files for LPC11U68 and LPC1549 updated
2019-02-15 11:39:55 -06:00
Cruz Monrreal 67abaf5fa7
Merge pull request #9706 from jarvte/fix_powering_onboard_modems
Cellular: fix onboard modems powering failure.
2019-02-14 20:26:51 -06:00
Cruz Monrreal 5701c94384
Merge pull request #9714 from deepikabhavnani/cleanup_linker_files
Only GCC_ARM toolchain is supported, removing legacy code
2019-02-14 20:26:05 -06:00
Teppo Järvelin e4018bd9bb Cellular: fix onboard modems powering failure
Don't call soft power on if device was already powered.
Some modems need to wait before sending anything to modem after soft powering.
2019-02-14 12:39:37 +02:00
deepikabhavnani 818d38b6ae Only GCC_ARM toolchain is supported, removing legacy code 2019-02-13 16:26:22 -06:00
Jaeden Amero 326b119fa1 crypto: Remove PSA Crypto API from targets without entropy
An entropy source is required in order to use the PSA Crypto API. The
only devices Mbed OS knows are guaranteed by default to have an entropy
source are those devices with a TRNG. Don't enable the PSA Crypto API by
default for devices that Mbed OS can't know have an entropy source. This
avoids run-time errors when an entropy source is not present on these
targets.

Applications can add their own entropy source by place entropy into
their systems, implementing their own NV Seed read and write callbacks,
and then enabling the MBEDTLS_ENTROPY_NV_SEED configuration option to
notify the PSA Crypto implementation that an entropy source is present
and how to use it.

See https://os.mbed.com/docs/mbed-os/v5.11/porting/entropy-sources.html
for the background on why entropy is fundamental to system security and
how to inject entropy into systems that lack an on-board source of
entropy.
2019-02-13 15:04:43 +00:00
Martin Kojtal ba7aa88715
Merge pull request #9678 from lrusinowicz/sequana_psa_deepsleep
FUTURE_SEQUANA_PSA: fixed deep sleep mode
2019-02-13 11:33:09 +01:00
Cruz Monrreal 270ff3b6de
Merge pull request #9679 from u-blox/R412M_Fix_After_Cellular_Driver_update
Default behavior of C030-R412M should be to use modem IP stack
2019-02-12 20:27:42 -06:00
Cruz Monrreal 3e6cd4e89d
Merge pull request #9501 from caixue1102/mbed-os-rda
Add WIFI support for RDA target UNO_91H
2019-02-12 20:05:27 -06:00
Cruz Monrreal 0ccb4dd44c
Merge pull request #9680 from lrusinowicz/sequana_arduino_mappings
FUTURE_SEQUANA: Fixed Arduino signal mappings
2019-02-12 20:05:12 -06:00
Cai d92e33dcee Add WIFI support for RDA target UNO_91H 2019-02-12 22:59:53 +08:00
Leszek Rusinowicz 03d7b15e47 FUTURE_SEQUANA: Fixed Arduino signal mappings
Fixed Arduino signal mappings for production version of Sequana board.
2019-02-12 12:20:01 +01:00
Leszek Rusinowicz 92b019f110 FUTURE_SEQUANA_PSA: fixed deep sleep mode
Enabled tickless mode for Sequana PSA M0 core code to allow it to enter
deep sleep mode. This fixes issue #9094 where tests were failing due to
M0 core not entering deep sleep mode, blocking the whole chip.
Fixed incorrect resource management on M0 core, which crashed tickless
mode.
2019-02-12 10:32:49 +01:00
Oren Cohen 8a5ccf25aa Add MBEDTLS_ENTROPY_NV_SEED to NUCLEO_F411RE to fix the build 2019-02-12 11:22:15 +02:00
Martin Kojtal db1d8fd56d
Merge pull request #9602 from jeromecoutant/PR_VERYHIGH
STM32 GPIO: use maximum speed
2019-02-12 09:53:17 +01:00
Cruz Monrreal 1712a2b76c
Merge pull request #9656 from OpenNuvoton/nuvoton_m2351_fix-crypto-ac-mgmt
M2351: Fix crypto AC management
2019-02-11 18:46:48 -06:00
Cruz Monrreal 87a9d7c45a
Merge pull request #9605 from kfnta/alzix/pelion-psa
Restore MBEDTLS_PSA_CRYPTO_C for PSA targets
2019-02-11 18:46:12 -06:00
Deepika 80eb887f5b Update linker files and resolve build issue
Linker files for LPC11U68 and LPC1549 updated as Mbed OS memory model
1.	LPC1549
Has multiple memory banks, 4K bank used for stack exclusively and 16K for Heap
Its is mbed 2 only target hence 4K for stack.

2.	LPC11U68
Added Heap and Stack sections in linker files. Resolved build issues.
2019-02-11 14:44:41 -06:00
Martin Kojtal 8f932a476f
Merge pull request #9449 from c1728p9/pinmap-extension
Pinmap extensions
2019-02-11 18:24:19 +01:00
Martin Kojtal fd5a6af137
Merge pull request #9613 from mprse/stack_heap_fix_k64f_only
K64/ARM: Update to 2-region model for HEAP and Stack Memory
2019-02-11 17:55:30 +01:00
Martin Kojtal 160a771e2b
Merge pull request #9647 from lrusinowicz/sequana_spi_fixes
FUTURE_SEQUANA: SPI HAL fixes
2019-02-11 17:53:04 +01:00
Fahim Alavi 3549083f9c Default behavior of C030-R412M should be to use modem IP stack 2019-02-11 16:12:29 +05:00
ccli8 99dd189177 [Nuvoton] Remove unnecessary header files in crypto-misc.cpp 2019-02-11 18:10:51 +08:00
ccli8 8988b6e9db [M2351] Hook crypto interrupt handler without NVIC_SetVector 2019-02-11 14:21:41 +08:00
ccli8 267f62e928 [M2351] Fix crypto AC mgmt
Port of NUC472/M487 crypto AC mgmt work to M2351:
1. Choose mutex to synchronize access to crypto non-SHA AC
2. Choose atomic flag to synchronize access to crypto SHA AC
2019-02-11 13:36:15 +08:00
Alexander Zilberkant d629bdfe5f FUTURE_SEQUANA_M0_PSA - fix CM4 starting address
Use PSA_NON_SECURE_ROM_START configuration value instead of hardcoded CY_CORTEX_M4_APPL_ADDR.
2019-02-10 11:13:38 +02:00
Leszek Rusinowicz 2f6684ba19 FUTURE_SEQUANA: SPI HAL fixes
1. Removed random i/o glitches occurring during device reconfiguration
2. Fixed hazardous reads occurring at the end of transfer resulting
   in incorrect values being received
3. Added spi_free() function
4. Replaced default M0 image with a one ignoring i/o reservation. This is
   a workaround for missing proper destructors in Mbed drivers and BlockDevice
   tests failing on repeated initialization
Fixes issue #9620.
2019-02-08 16:59:13 +01:00
Russ Butler 800708569d Add testing pinmaps to LPC15XX and LPC8XX devices
Add pinmap tables to the LPC15XX and LPC8XX families to allow testing.
2019-02-08 09:10:49 -06:00
Russ Butler c7a19461b4 Add pinmaps to Ameba
Add testing pinmaps to the Ameba along with fixing build errors.
2019-02-08 09:10:47 -06:00
Russ Butler 8d205ab430 Add testing pinmaps to NRF5X devices
Add pinmap tables to the NRF5X families to allow testing.
2019-02-08 09:10:46 -06:00
Russ Butler 7071513d7f Add form factor pinmap support
Add support for listing all the pins of one or more form factors.
This is in preparation for automated testing of the default form
factor.

This patch includes the following:
-A function to get a list of restricted pins which should not be
    used for testing due to some caveat.
-The target config "default-form-factor" which can specify which form
    factor should be tested
-Form factor information for the arduino form factor
2019-02-08 09:10:45 -06:00
Russ Butler 8669417e7b Add HAL API for spi pinmap
Add the functions to get spi pinmaps to all targets.
2019-02-08 09:10:37 -06:00
Russ Butler 34c176654d Add HAL API for serial pinmap
Add the functions serial_tx_pinmap, serial_rx_pinmap, serial_cts_pinmap
and serial_rts_pinmap to all targets.
2019-02-08 09:10:28 -06:00
Russ Butler 2ed1dc2bfa Add HAL API for qspi pinmap
Add the functions qspi_master_sclk_pinmap, qspi_master_ssel_pinmap and
qspi_master_data0_pinmap-qspi_master_data3_pinmap to all targets with
qspi support.
2019-02-08 09:10:25 -06:00
Russ Butler be492fe07a Add HAL API for pwmout pinmap
Add the function pwm_pinmap to all targets.
2019-02-08 09:10:19 -06:00
Russ Butler 22a89773fa Add HAL API for i2c pinmap
Add the functions i2c_master_sda_pinmap, i2c_master_scl_pinmap,
i2c_slave_sda_pinmap and i2c_slave_scl_pinmap to all targets.
2019-02-08 09:10:12 -06:00
Russ Butler 7e8695a2c5 Add HAL API for can pinmap
Add the functions can_rd_pinmap and can_td_pinmap to all targets.
2019-02-08 09:10:10 -06:00
Russ Butler 3bd3aca6db Add HAL API for analog out pinmap
Add the function analogout_pinmap to all targets.
2019-02-08 09:10:05 -06:00
Russ Butler 4818f88d73 Add HAL API for analog in pinmap
Add the function analogin_pinmap to all targets.
2019-02-08 09:09:51 -06:00
Anna Bridge 3252530e3a
Merge pull request #9481 from vmedcy/add_cypress_kits
Add Cypress PSoC 6 targets
2019-02-08 10:43:28 +00:00
Volodymyr Medvid aebf242e43 PSOC6: add network-default-interface-type to Cypress boards
Set the default network interface type as WIFI for Cypress
targets with on-board WICED Wi-Fi module.
2019-02-07 18:24:57 +02:00
Volodymyr Medvid 022bd8eeef Add WICED binary drivers for Cypress PSoC 6 targets
Add prebuilt WICED libraries for the PSoC 6 boards with WICED radios:
* TARGET_CY8CKIT_062_4343W
* TARGET_CY8CKIT_062_WIFI_BT
* TARGET_CY8CPROTO_062_4343W
* TARGET_CYW943012P6EVB_01

Add required extra labels to the PSoC 6 targets in targets.json:
(PSOC6_01/02 labels are used during the library compilation).
2019-02-07 18:24:56 +02:00
Volodymyr Medvid a16811532b PSoC6: add implementation of BLE HCI driver for CYW4343W/CYW43012
Add Cypress HCI driver implementation in TARGET_Cypress directory.

Update targets.json to enable CORDIO stack for Cypress PSoC 6 boards
with CYW43XXX radios with compatible HCI driver implementation:
CYW4343W and CYW43012.
2019-02-07 18:24:56 +02:00
Nir Sonnenschein e6c2a1de40
Merge pull request #9566 from kfnta/alzix/crypto-warn
Fix warning in Crypto when using boot seed injection
2019-02-07 18:18:41 +02:00
Nir Sonnenschein 8c2ad14ace
Merge pull request #9568 from ARMmbed/feature-cellular-refactor
Merge feature cellular refactor
2019-02-07 18:17:32 +02:00
Volodymyr Medvid 5c47eb4b20 PSOC6: add BSP generated sources for Cypress kits
Code generated for pioneer kits:
* CY8CKIT-062-4343W
* CY8CKIT-062-BLE
* CY8CKIT-WIFI-BT
Prototyping boards:
* CY8CPROTO-062-4343W

The source is generated with ModusToolbox Device Configurator.
The origin design.modus files used to produce the GeneratedSource
will be submitted in the consequent pull requests.
2019-02-06 19:39:42 +02:00
Volodymyr Medvid 7aeb2ff361 Add prebuilt CM0+ images for Cypress kits 2019-02-06 19:39:42 +02:00
Volodymyr Medvid 769b725601 PSOC6: add BSPs for Cypress kits 2019-02-06 19:39:42 +02:00
Volodymyr Medvid 432c29d806 PSOC6: add CRC and TRNG APIs
Exclude the labels from inherited FUTURE_SEQUANA targets.
2019-02-06 19:39:42 +02:00
Volodymyr Medvid 6d932c69e6 PSOC6: update the HAL implementation to latest PDL
Integrate the latest fixes to the PSoC 6 HAL.
2019-02-06 19:39:41 +02:00
Volodymyr Medvid 4713de29db PSOC6: add the latest Cypress PDL sources 2019-02-06 19:39:38 +02:00
Volodymyr Medvid cd98eb619a PSOC6: reuse FUTURE_SEQUANA porting layer
Copy the porting layer from TARGET_PSOC6_FUTURE to TARGET_PSOC6.
This commit is intended to make the history and changes applied easier
to follow.
ipcpipe_transport.c, ipcpipe_transport.h, rpc_api.h, rpc_defs.h
are excluded (not used by Cypress port).
PeripheralNames.h is moved to BSP layer introduced in subsequent
commits (the peripheral names and count are board-specific).
2019-02-06 18:56:19 +02:00
Volodymyr Medvid 6b0658dd30 Move FUTURE_SEQUANA port to TARGET_PSOC6_FUTURE
The targets/TARGET_Cypress/TARGET_PSOC6 is dedicated to the mbed-os HAL
and PSoC 6 MCU targets developed by Cypress Semiconductor. Move the
existing port developed by Future Electronics to TARGET_PSOC_FUTURE
and update the labels in targets.json appropriately.
2019-02-06 18:56:19 +02:00
Ganesh Ramachandran a9a79dfecf Added MBED_APP_START to linker script 2019-02-06 17:38:19 +05:30
Martin Kojtal 57d8915a89
Merge pull request #9615 from lrusinowicz/updated_hex_images
FUTURE_SEQUANA: Remove special "tags" from M0 hex images
2019-02-05 17:13:42 +01:00
Martin Kojtal ad97936f30
Merge pull request #9526 from bridadan/remove_os3_NCS36510
Remove yotta and minar references in NCS36510
2019-02-05 16:58:52 +01:00
Alexander Zilberkant 911d138534 Restore MBEDTLS_PSA_CRYPTO_C for PSA targets
Removed by mistake in 763cb4c157
2019-02-05 15:53:34 +02:00
Alexander Zilberkant 4a204015ac Simplify entropy seed injection configuration
Move NVSEED callbacks configuration to a header file
2019-02-05 15:48:41 +02:00
Kevin Bracey 5ed7e372db nRF52 serial: Tighten/simplify atomics
Use new atomics (exchange, load, store and bool types) to simplify
and improve the atomics in the nRF52 serial HAL.

* Ensure mutexes are released last and atomically when done
  done inside a critical section.
* Compare-and-swap is not required for the spinlock - exchange is
  sufficient. (Not clear a spinlock is needed anyway, but left in).
* Remove unneeded volatile, and make mutexes bool.
2019-02-05 15:44:04 +02:00
Przemyslaw Stekiel 292f1a155d K64/ARM: Update to 2-region model for HEAP and Stack Memory 2019-02-05 14:13:58 +01:00
Leszek Rusinowicz caaaaff3e6 FUTURE_SEQUANA: Removed special "tags" from M0 hex images for better tools compatibility
This fixes issue #9611
2019-02-05 13:43:30 +01:00
Martin Kojtal 7106d0d201
Merge pull request #9557 from SeeedJP/hal-wio_bg96-9026
[Wio BG96] Modified pin map
2019-02-05 10:51:59 +01:00
Martin Kojtal d7a442b717
Merge pull request #9593 from c1728p9/standard_form_factor
Standardize Arduino form factor
2019-02-05 10:51:32 +01:00
Martin Kojtal dcba5ffa3c
Merge pull request #9529 from kfnta/its_crypto
RollUp PR Crypto with ITS
2019-02-04 17:14:05 +01:00
Martin Kojtal 46101f68fe
Merge pull request #9595 from c1728p9/define_usbtx_and_usbrx
Define USBTX and USBRX for targets without them
2019-02-04 17:13:00 +01:00
jeromecoutant ae47617c77 STM32 GPIO: use maximum speed 2019-02-04 15:32:15 +01:00
Yoshihiro TSUBOI e19ddef069 [Wio BG96] Modified pin map
* Remove unused Peripheral Pins definitions and add UART_1 TXD/RXD pins (fix #9026)  for the Wio BG96 board
* Remove/Fix unused PinName definitions for the Wio BG96 board from the PinNames enum
2019-02-04 23:04:37 +09:00
Martin Kojtal 7e9181cf57
Merge pull request #9553 from jeromecoutant/PR_FC
STM32: Enable SERIAL_FC for all
2019-02-04 14:42:55 +01:00
Martin Kojtal 346ebe6344
Merge pull request #9556 from SeeedJP/hal-wio_3g-9026
[Wio 3G] Modified pin map
2019-02-04 14:41:58 +01:00
Martin Kojtal e9648dd461
Merge pull request #9583 from jeromecoutant/PR_F2TRNG
STM32F2: Enable TRNG
2019-02-04 14:41:19 +01:00
Martin Kojtal b4e09cfc93
Merge pull request #9594 from c1728p9/remove_serial_flow_control
Remove SERIAL_FC on devices which don't support it
2019-02-04 14:39:12 +01:00
Martin Kojtal ed53fe1ed4
Merge pull request #9534 from jeromecoutant/PR_FLOW
STM32 Serial Flow Control
2019-02-04 14:35:47 +01:00
Martin Kojtal 0ae6a048e4
Merge pull request #9431 from deepikabhavnani/iar_armv8m_changes
Update IAR Armv8M changes
2019-02-04 14:34:28 +01:00
Martin Kojtal 2526ac8420
Merge pull request #9585 from lrusinowicz/ble_controller_core
PSOC6: M0 core binary image for BLE controller updated to version 1.05
2019-02-04 10:48:10 +01:00
Yoshihiro TSUBOI a2f1e9c01e [Wio 3G] Modified pin map
* Remove unused Peripheral Pins definitions and add UART_1 TXD/RXD pins (fix #9026)  for the Wio 3G board
* Remove/Fix unused PinName definitions for the Wio 3G board from the PinNames enum
2019-02-04 18:12:29 +09:00
Russ Butler ba30a4aa24 Define Arduino pins for the LPC812
Define the unconnected Arduino pins to NC so they are all defined.
2019-02-02 10:56:27 -06:00
Russ Butler 3e10418015 Define USBTX and USBRX for targets missing it
Define USBTX and USBRX for the LPC11U37H and the MTS_MDOT_F405RG.
2019-02-02 09:46:29 -06:00
Russ Butler b78bb90089 Remove SERIAL_FC from the MPS2 family
The MPS2 family does not support flow control in its serial driver so it
should not have SERIAL_FC in device_has.
2019-02-02 09:45:34 -06:00
Russ Butler c722eb87d0 Remove SERIAL_FC from the ARM_IOTSS_BEID
The ARM_IOTSS_BEID does not support flow control in its serial driver so it
should not have SERIAL_FC in device_has.
2019-02-02 09:45:33 -06:00
Russ Butler 29f14bd364 Remove SERIAL_FC from the NCS36510
The NCS36510 does not support flow control in its serial driver so it
should not have SERIAL_FC in device_has.
2019-02-02 09:45:32 -06:00
Russ Butler 66b8ca2599 Define A0 to NC for the TARGET_KW41Z
Set A0 to NC so it is defined on the KW41Z platform.
2019-02-02 09:44:20 -06:00
Russ Butler 1e0f3b7f9e Remove ARDUINO form factor for nano devices
Remove ARDUINO from supported form factors on devices which have the
physical form factor of the arduino nano.
2019-02-02 09:44:19 -06:00