Commit Graph

4689 Commits (d5295dbde2727c9b51f9a10c8d388750e3aa20a6)

Author SHA1 Message Date
Senthil Ramakrishnan 45c727ee6f Workaround(recommended by compiler team) for FVP_MPS2 targets to use ARM Compiler 6 2019-03-01 13:40:42 -06:00
Martin Kojtal 7c9a71846e
Merge pull request #9469 from kjbracey-arm/spi_muxing
SPI upgrade - per-peripheral mutex and GPIO-based SSEL
2019-03-01 18:38:27 +01:00
Martin Kojtal f559d03ae2
Merge pull request #9766 from deepikabhavnani/uarm_fixes
Update Toolchain Arm Micro scatter files
2019-03-01 16:54:27 +01:00
Kevin Bracey b12be6bb80 Rename SPI_COUNT to DEVICE_SPI_COUNT
Avoid collision with some HALs that already define SPI_COUNT.
2019-03-01 14:37:04 +02:00
Martin Kojtal 857cd9fba1
Merge pull request #9845 from jarlamsa/stm_spi_peripheral_name
Add spi_get_peripheral_name() to stm_spi
2019-03-01 12:15:04 +01:00
Martin Kojtal b5d713d6d7
Merge pull request #9866 from j3hill/QSPI_Align
QSPI write alignment fix for nRF52x
2019-03-01 10:54:58 +01:00
Deepika 122549910e Add Crash report section to all uARM files 2019-02-28 19:54:38 -06:00
Deepika 6ab48b1863 Update linker scripts for LPC824 and Wiznet 2019-02-28 19:54:38 -06:00
deepikabhavnani 944483b0f7 Add missing SHEBANG = #! armcc -E 2019-02-28 19:54:38 -06:00
deepikabhavnani 75040535ed Addressed review comments to correct size values 2019-02-28 19:54:38 -06:00
deepikabhavnani 0ff2d42143 Heap and stack size picked from linker files,export symbols not needed 2019-02-28 19:54:38 -06:00
deepikabhavnani 0dc5561991 Guard RAM start and size defines 2019-02-28 19:54:38 -06:00
deepikabhavnani adae2e9f32 Target_Atmel: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:38 -06:00
deepikabhavnani 4b95b51e1b Target_Freescale: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:38 -06:00
deepikabhavnani e731a1589f Target_GigaDevice: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:38 -06:00
deepikabhavnani 2a192509c3 Target_NUVOTON: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:38 -06:00
deepikabhavnani c91d35ccc8 Target_NXP: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:38 -06:00
deepikabhavnani 6b98bc2771 Target_SiLabs: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:38 -06:00
deepikabhavnani b598dc1f46 Target_STM: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:54:28 -06:00
deepikabhavnani a9ce4b3d9a Target_WIZWIKI: Add ARM_LIB_STACK and ARM_LIB_HEAP section
Instead of user defined symbols in assembly files or C files,
use linker scripts to add heap and stack - this is inconsistent
with ARM std linker scripts
2019-02-28 19:52:06 -06:00
deepikabhavnani 7f6b4e51a3 Microlib only supports the two region memory model
Update arm_std.c and linker scripts to use ARM_LIB_STACK
and ARM_LIB_HEAP section from scatter files, instead of user
defined symbols
2019-02-28 19:52:06 -06:00
Cruz Monrreal befed111f5
Merge pull request #9668 from moranpeker/psa-init-attestation
PSA Initial Attestation service
2019-02-28 18:25:16 -06:00
Cruz Monrreal e393c2dc0b
Merge pull request #9785 from c1728p9/default_to_us_ticker
Use us ticker for tickless on devs with wrapper
2019-02-28 18:25:01 -06:00
Cruz Monrreal e6caa122cb
Merge pull request #9812 from kjbracey-arm/wait_ns
Add wait_ns API
2019-02-28 18:21:46 -06:00
Cruz Monrreal 4b9d07a1da
Merge pull request #9792 from sarahmarshy/nucleo-gcc-bootloader
NUCLEO_L073RZ Bootloader support
2019-02-28 18:21:14 -06:00
Senthil Ramakrishnan 99674833c7 Use ARMC5 for Cypress targets and fixes targets.json line duplication 2019-02-28 12:48:37 -06:00
Senthil Ramakrishnan 4d175544aa Use ARMC5 for FVP targets 2019-02-28 12:03:15 -06:00
Senthil Ramakrishnan 8231ebaf43 Make ARMC6 as the default ARM toolchain for MTB targets 2019-02-28 12:03:13 -06:00
Senthil Ramakrishnan 41e3329363 targets.json changes to select ARMC5 for specific targets 2019-02-28 11:58:25 -06:00
Senthil Ramakrishnan 8624fdf0a7 Build metadata check added 2019-02-28 11:56:30 -06:00
Seppo Takalo 76f90c2544 Add ARMC6 binaries for MTB Cypress targets 2019-02-28 11:55:20 -06:00
d-kato 7aebee07b1 GR_LYCHEE,RZ_A1H,VK_RZ_A1H: Update to fix ARMC6 build failures 2019-02-28 11:55:19 -06:00
Senthil Ramakrishnan 5632b94923 Temporarily disabling KW24D for AC6 2019-02-28 11:53:02 -06:00
Senthil Ramakrishnan 0b54ea2fec Enable RDA targets 2019-02-28 11:53:01 -06:00
Senthil Ramakrishnan 7b3f30c425 Temporarily disable RDA targets to pass CI 2019-02-28 11:53:01 -06:00
Senthil Ramakrishnan 84785ae086 Check for __ARMCC_VERSION only 2019-02-28 11:53:00 -06:00
Senthil Ramakrishnan 988aba4fc4 ARMc6 build fixed for Nordic targets 2019-02-28 11:53:00 -06:00
Russ Butler 4bead9220d Use the RTC for the low power ticker on L073RZ
Due to a bug the LPTIM peripheral can cause interrupts to fire at the
wrong time on the NUCLEO_L073RZ. This patch switches the backend
of the low power ticker to the RTC until this bug is addressed.
2019-02-28 10:09:50 -06:00
Moran Peker 8447463379 remove unsupported psa target 2019-02-28 11:17:31 +02:00
itayzafrir 02f5918013 Update pre-built hex file for secure side tests 2019-02-28 10:29:53 +02:00
j3hill 5d79ba82e7 QSPI write alignment fix for nRF52x
If the data buffer for a write is not 4-byte aligned, use an aligned 16 byte buffer on the stack
2019-02-27 09:58:32 -06:00
itayzafrir 4764b5505c Add pre-built hex file for secure side tests 2019-02-27 16:28:36 +02:00
Moran Peker 5211a92af7 Revert file permissions changes 100644 to 100755 2019-02-27 14:14:19 +02:00
Moran Peker 1d2351d870 Attestation: update targets.json for K64F
Make K64F run with MBED_SPM
Attestation code using SPM structures over single and dual core.
2019-02-27 14:14:10 +02:00
Jarno Lamsa a9f0924f7b Add spi_get_peripheral_name() to stm_spi
This is to have support for per-peripheral mutex introduced in https://github.com/ARMmbed/mbed-os/pull/9469
Together fixes an issue seen in https://github.com/ARMmbed/mbed-os/issues/9149
2019-02-27 13:32:22 +02:00
Martin Kojtal a59d45f9eb
Merge pull request #9867 from cydriftcloud/rebuild-wiced-for-iar8
PSOC6: Rebuild WICED libraries with IAR8 support
2019-02-27 10:59:27 +01:00
Cruz Monrreal e1736cd06f
Merge pull request #9571 from mprse/fix_9523_rtos_less_issue
Update to 2-region model for HEAP and Stack Memory
2019-02-26 22:50:19 -06:00
Cruz Monrreal 4b13c8a212
Merge pull request #9768 from c1728p9/feature-hal-spec-usb-device
Bring USB Feature branch into master
2019-02-26 22:48:02 -06:00
Cruz Monrreal 03bcf28ff0
Merge pull request #9861 from jeromecoutant/PR_INTERRUPTIN
STM32 InterruptIn protection
2019-02-26 22:47:05 -06:00
Lei Zhang 320b17fae1 PSOC6: Rebuilt WICED libraries with IAR8 support
Enable IAR toolchain for PSOC6 platforms and rebuild WICED libraries (libwiced_drivers.a) with IAR toolchain version 8.32.
2019-02-26 18:41:14 -08:00
Cruz Monrreal d29312e7ac
Merge pull request #9808 from ARMmbed/feature-iar8
IAR 8 feature branch merge
2019-02-26 15:30:27 -06:00
Cruz Monrreal e64286be90
Merge pull request #9863 from deepikabhavnani/old_commit_revert
Revert "Update params in calls to LDREXW/STREXW to uint32_t"
2019-02-26 13:33:53 -06:00
Deepika e0b4b51d92 Revert "Update params in calls to LDREXW/STREXW to uint32_t"
This reverts commit 334b2d64b0.

This commit is not required any more as changes for this are already part
of master branch
2019-02-26 11:09:25 -06:00
Deepika 915424acca Enable Cypress for Mbed 5 release 2019-02-26 10:26:41 -06:00
jeromecoutant 675a7f915d STM32 InterruptIn protection 2019-02-26 16:58:47 +01:00
Kevin Bracey 66dea08c0f M2351: include core_cm23.h
Nuvoton M2351 was including generic core_armv8mbl.h from CMSIS - we
need it to be more specific to identify the specific core for
wait_ns. Change to core_cm23.h.
2019-02-26 17:30:51 +02:00
Seppo Takalo 6d04fa78f2 Add IAR8 binaries for USI_WM_BN_BM_22 and EMW3166 based chips 2019-02-26 09:24:57 -06:00
Amir Cohen c07ba7cc4b Enhance targets.json with components
Adding storage components to boards
2019-02-26 09:24:02 -06:00
d-kato 78923d8135 Add missing license description to RZ/A1 driver 2019-02-26 11:52:29 +09:00
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