Commit Graph

4590 Commits (e2ea743646adac3a7734bfaac0863f02cd4701b1)

Author SHA1 Message Date
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
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