Commit Graph

5620 Commits (mbed-os-5.14.0-rc1)

Author SHA1 Message Date
Martin Kojtal edc59ced82
Merge pull request #11215 from chrissnow/LPC1768_Scatter
LPC1768: Make use of the other 32K of RAM
2019-08-23 10:18:21 +02:00
Martin Kojtal 48b5939b33
Merge pull request #11152 from OpenNuvoton/nuvoton_fpga-ci
Nuvoton: Fix FPGA CI test failing
2019-08-23 10:02:19 +02:00
Martin Kojtal b1aec797e2
Merge pull request #11282 from NXPmicro/K22_Add_Storage
K22F: Add FlashIAP for storage
2019-08-23 10:01:16 +02:00
Mahesh Mahadevan 6d736d8ce0 KL43Z: Enable FALSHIAP storage
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 12:16:09 -05:00
Mahesh Mahadevan c249d5fd54 K82F: Add USBDEVICE support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 11:17:35 -05:00
Anna Bridge 7455b89603
Merge pull request #11280 from Tharazi97/stm_spi_api_memset_fill_truncated
Tweak stm_spi_api Coverity warning.
2019-08-22 17:11:19 +01:00
Mahesh Mahadevan a85f0824be MCUXpresso: Update EDMA drivers to fix warnings
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 10:47:43 -05:00
Mahesh Mahadevan a184a86e90 MCUXpresso: Update the SDK LPUART drivers
Use the latest driver from K66F

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 08:26:11 -05:00
Mahesh Mahadevan bff287580c MCUXpresso: Update I2C SDK driver
Use the K66F driver that has the latest

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 07:48:29 -05:00
Mahesh Mahadevan 23bf7b74b0 MCUXpresso: Update SDK EDMA driver
Update to the latest version from K66F

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 07:48:29 -05:00
Mahesh Mahadevan 382696fc50 MCUXpresso: Use SDK API for spi_master_block_write
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 07:48:28 -05:00
Mahesh Mahadevan 33b66ffa60 MCUXpresso: Update Kinetis SPI SDK drivers
Added dummy data setup API to allow users to configure
the dummy data to be transferred.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 07:48:28 -05:00
Mahesh Mahadevan 4102114a72 MCUXpresso: Update Kinetis DSPI SDK drivers
- Added dummy data setup API to allow users to configure
  the dummy data to be transferred.
- Added new APIs for half-duplex transfer function. Users
  can send and receive data by one API in the polling/interrupt/EDMA way,
  and they can choose either to transmit first or to receive first.
  Additionally, the PCS pin can be configured as assert status in
  transmission (between transmit and receive) by setting the
  isPcsAssertInTransfer to true.
- Fix for MISRA issues

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-22 07:48:28 -05:00
Martin Kojtal 1182d1e9bb
Merge pull request #11284 from NXPmicro/K22_Add_USB_Support
K22: Add USBDEVICE support
2019-08-22 14:34:44 +02:00
jeromecoutant 680e0fc5fb DISCO_L4R9I: increase system clock from 80MHz to 120MHz 2019-08-22 13:32:20 +02:00
jeromecoutant bdd0689228 NUCLEO_L4R5ZI: increase system clock from 80MHz to 120MHz 2019-08-22 13:21:28 +02:00
Martin Kojtal 32e97e3371
Merge pull request #11267 from NXPmicro/LPC_Optimize_usticker
NXP MCUXpresso: optimize us_ticker for LPC platforms
2019-08-22 11:18:09 +02:00
Martin Kojtal 9d6bfcfc78
Merge pull request #11261 from NXPmicro/Enable_Tickless_LPC
MCUXpresso: Add TICKLESS support for LPC platforms
2019-08-22 11:06:00 +02:00
Alexandre Bourdiol 7647b39adc TARGET_STM: I2C sequential communication revert PR #3324 to original cube HAL 2019-08-22 10:44:20 +02:00
Martin Kojtal edcde1ce8c
Merge pull request #10796 from NXPmicro/tickless
NXP: Enable MBED_TICKLESS on various NXP platforms
2019-08-22 10:30:14 +02:00
Martin Kojtal d0c917cb32
Merge pull request #11274 from VVESTM/vve_eth_h7
Add ethernet support on NUCLEO_H743ZI board
2019-08-22 09:42:45 +02:00
Mahesh Mahadevan 20aa1ecfd9 K22F: Add FlashIAP for storage
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-21 12:10:00 -05:00
int_szyk 5c9daa3941 Tweak stm_spi_api Coverity issue.
Coverity warining: "memset fill truncated (NO_EFFECT)".
Changed SPI_FILL_WORD to SPI_FILL_CHAR.
2019-08-21 16:47:35 +02:00
Vincent Veron 8ab6aecbe9 Move stm32xx_emac_config.h to family specific folder
This allows to specify which hal version to use for each family.
It can also be used to modify the thread stack size.

Signed-off-by: Vincent Veron <vincent.veron@st.com>
2019-08-21 15:02:45 +02:00
Vincent Veron 76fb4d22cc STM32H7 : update linker script files to use right location for lwip_ram_heap
Signed-off-by: Vincent Veron <vincent.veron@st.com>
2019-08-21 11:41:30 +02:00
Vincent Veron 9f2e9aa576 Add EMAC support for NUCLEO_H743ZI
This port is based on :
    * CurryGuy ethernet branch :
        https://github.com/CurryGuy/mbed-os/tree/feature-stm32h7-emac
    * STM32 Cube example :
        Applications/LwIP/LwIP_HTTP_Server_Netconn_RTOS example

Signed-off-by: Vincent Veron <vincent.veron@st.com>
2019-08-21 11:40:48 +02:00
Mahesh Mahadevan 7e6da8bffe K22: Add USBDEVICE support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-20 15:15:46 -05:00
Mahesh Mahadevan c8ad24c8f5 NXP MCUXpresso: optimize us_ticker for LPC platforms
Provide new optimizations for us_ticker and wait_us.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-20 10:39:28 -05:00
aqib-ublox 80e30f4258 ADc internal temperature suuport and EMAC header fix 2019-08-20 18:44:22 +05:00
Martin Kojtal ce74bb53c4
Merge pull request #11178 from Tharazi97/watchdog_max_timeout
ST: Watchdog: Fix timeout registers value calculation
2019-08-20 13:47:31 +02:00
Martin Kojtal c37b5628ec
Merge pull request #11255 from cy-vaira/nvram-cy8cmod-062s2-43012
Update NVRAM image for target CY8CMOD-062S2-43012
2019-08-20 10:27:30 +02:00
Martin Kojtal 169ada9209
Merge pull request #11237 from Tharazi97/TT_M3HQ-build-problem
Fix TT_M3HQ build problem
2019-08-20 10:23:28 +02:00
Martin Kojtal 191f029f73
Merge pull request #11226 from chrissnow/LPC1768_WDT
LPC1768 Watchdog & Reset Reason
2019-08-20 10:22:42 +02:00
Martin Kojtal e2fef54898
Merge pull request #11188 from NXPmicro/MXRT_TRNG
MIMXRT1050_EVK: Add TRNG support
2019-08-20 09:50:43 +02:00
Martin Kojtal e3bfcbc2ff
Merge pull request #11142 from hugueskamba/hk-usb-targets-relocation
Relocate USB target specific code to root `targets` directory
2019-08-20 09:39:30 +02:00
Martin Kojtal e56f3199eb
Merge pull request #11127 from NXPmicro/Fix_LPC55S69_AnalogIn
Fix ANALOGIN support for LPC55S69
2019-08-20 09:33:40 +02:00
Martin Kojtal b16aaca568
Merge pull request #11118 from ganesh-ramachandran/m46b_newfeatures
Add new features to Toshiba's TMPM46B
2019-08-20 09:27:28 +02:00
Chun-Chieh Li 96dac4faa7 [M487] Exclude A2/A3 from testing for NuMaker-IoT-M487 V1.3
Since NuMaker-IoT-M487 V1.3, A2/A3 are dedicated to on-board ESP8266 WiFi
module RTS/CTS pins and so must exclude from FPGA CI testing.
2019-08-20 13:12:44 +08:00
Chun-Chieh Li c99c43cacd [M2351] Fix pinmap table error with SPI clock pin 2019-08-20 13:12:44 +08:00
Chun-Chieh Li 07f39f1337 [M2351] Fix CLK_SetModuleClock_S(...) error with SPI
Fix SPI module index error in modidx_ns_tab table in CLK_SetModuleClock_S().
Need to update secure image for this bugfix.

This is also to fix FPGA CI test mbed_hal_fpga_ci_test_shield-spi/
SPI - init/free test all pins.
2019-08-20 13:12:44 +08:00
Chun-Chieh Li bab5d27e26 [M453] Classify by M45xD/M45xC and M45xG/M45xE
M451 series can classify by M45xD/M45xC and M45xG/M45xE. To support this
classification:
1.  Create TARGET_M45xD_M45xC and TARGET_M45xG_M45xE targets.
2.  Mark NUMAKER_PFM_M453 belongs to TARGET_M45xG_M45xE by 'extra_labels_add'
    in targets.json.
3.  Fix pin name table according to the classification.
4.  Fix pinmap table according to the classification.
2019-08-20 13:12:43 +08:00
Chun-Chieh Li 6f1bd325cd [NANO130] Remove SPI MOSI1/MISO1 pins from pinmap
MOSI1/MISO1 are used in second bit of 2-bit transfer mode and cannot be used
for normal MOSI/MISO. Remove them from pinmap.

This is also to fix FPGA CI test mbed_hal_fpga_ci_test_shield-spi/
SPI - basic test.
2019-08-20 13:12:43 +08:00
Chun-Chieh Li c3d7ef8341 [Nuvoton] Free up peripheral pins in peripheral free-up HAL API
Without free-up of peripheral pins, peripheral pins of the same peripheral may
share by multiple ports after port iteration, and this peripheral may fail with
pin interference.
2019-08-20 13:12:43 +08:00
Chun-Chieh Li ca0846b1e9 [Nuvoton] Support GPIO input pull-high/pull-low
In Nuvoton, only new-design chips support GPIO input pull-high/pull-low modes.
Targets not supporting this feature are listed below:

- NUMAKER_PFM_NANO130
- NUMAKER_PFM_NUC472
- NUMAKER_PFM_M453
2019-08-20 13:12:42 +08:00
Chun-Chieh Li 09bf844d76 [Nuvoton] Fix redundant call to UART IRQ handler
Honor RxIrq/TxIrq to avoid redundant call to UART IRQ handler.

This is also to fix FPGA CI test mbed_hal_fpga_ci_test_shield-uart.
2019-08-20 13:12:42 +08:00
Chun-Chieh Li d46c6fea47 [Nuvoton] Fix redundant SPI clock generation
Fix SPI clocks are generated redundantly at the end of transfer.

This is also to fix FPGA CI test mbed_hal_fpga_ci_test_shield-spi/
SPI - async mode.
2019-08-20 13:12:42 +08:00
Chun-Chieh Li 80c21aeff5 [Nuvoton] Fix I2C NACK error
Fix logic error on replying NACK at the end of transfer.

This is also to fix FPGA CI test mbed_hal_fpga_ci_test_shield-i2c/
i2c - test single byte read i2c API.
2019-08-20 13:12:42 +08:00
Chun-Chieh Li fef138a3cd [Nuvoton] Fix IP initialization sequence
Better IP initialization sequence:
1. Configure IP pins
2. Select IP clock source and then enable it
3. Reset the IP (SYS_ResetModule)

NOTE1: IP reset takes effect regardless of IP clock. So it doesn't matter if
       IP clock enable is before IP reset.
NOTE2: Non-configured pins may disturb IP's state, so IP pinout first and then
       IP reset.
NOTE3: IP reset at the end of IP initialization sequence can cover unexpected
       situation.
2019-08-20 13:12:41 +08:00
Chun-Chieh Li 560fe33ed8 [Nuvoton] Exclude USB UART from testing
USB UART is dedicated to USB COM and so must exclude from FPGA CI testing.
2019-08-20 13:12:41 +08:00
Chun-Chieh Li f88bd72c19 [Nuvoton] Force enum PinName to 32-bit
NU_PINNAME_BIND(...) requires enum PinName to be 32-bit to encode module
binding information in it.
2019-08-20 13:12:41 +08:00
Mahesh Mahadevan 99b1114e63 MCUXpresso: Add TICKLESS support for LPC platforms
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-19 13:15:39 -05:00
Chris Snow 82f4be0b4d SPDX identifier and license amended 2019-08-19 11:58:02 +01:00
Martin Kojtal 101ae73b87
Merge pull request #11063 from linlingao/f_cc3220sf_launchxl
Add CC3220SF_Launchxl to Mbed OS
2019-08-19 12:08:11 +02:00
Vairamuthu Ramasamy e7f190f2d7 Updated nvram image for target CY8CMOD-062S2-43012 2019-08-19 14:07:33 +05:30
Hugues Kamba 3d6fb15b48 Use consistant naming for Cypress USB target files. 2019-08-16 15:42:43 +01:00
Hugues Kamba de231b8664 Move USB Templates to `mbed-os/hal/usb` 2019-08-16 15:42:43 +01:00
Hugues Kamba f3df1c1d1e Relocate TARGET_MCU_NRF52840 to TARGET_NRF5x/TARGET_NRF52 2019-08-16 15:42:43 +01:00
Hugues Kamba 41346bad13 Rename template dir so future templates can be added to the same dir. 2019-08-16 15:42:43 +01:00
Hugues Kamba 5cbc3e0497 Relocate USB target specific code to root `targets` directory
All target specific source and header files should be in the `targets`
directory located at the root of the Mbed OS repository.
2019-08-16 15:42:43 +01:00
int_szyk 3c2ed16fce Fix TT_M3HQ build problem with SPI 2019-08-16 14:55:49 +02:00
int_szyk ce58505fa4 fix TT_M3HQ build problem with i2c 2019-08-16 14:55:49 +02:00
int_szyk aa56f86cec Remove SERIAL_FC from target.json on TT_M3HQ
Development board TT_M3HQ doesn't have CTS/RTS on its pinout.
If that is not the case PinMap_UART_RTS should be created.
2019-08-16 14:44:31 +02:00
Ganesh Ramachandran edf36fb2ae Added new features to TMPM46B 2019-08-16 10:43:52 +05:30
Mahesh Mahadevan 43b4c0ab82 MIMXRT1050_EVK: Add TRNG support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-15 16:51:18 -05:00
Anna Bridge 08ecbfcd46
Merge pull request #11021 from OpenNuvoton/nuvoton_lpticker_delay_ticks
Nuvoton: Enlarge LPTICKER_DELAY_TICKS for safe
2019-08-15 12:47:55 +01:00
Chris Snow edc992b297 Enable WATCHDOG and RESET_REASON for other LPC1768 targets 2019-08-14 17:15:18 +01:00
Lin Gao cae7427717 Cosmetic changes to incorporate review feedback 2019-08-14 11:09:11 -05:00
Chris Snow 7e2c2a98dd LPC1768 Reset Reason implementation 2019-08-14 15:50:11 +01:00
Chris Snow 2fcafb9c93 LPC1768 WDT implementation 2019-08-14 13:42:04 +01:00
Martin Kojtal a6c316afee
Merge pull request #11020 from OpenNuvoton/nuvoton_wakeup_latency
Nuvoton: Enlarge required deep sleep latency
2019-08-14 13:38:00 +02:00
int_szyk df43350f28 Tweak STM watchdog implementation
Change the calculation method of rl so it is rounded up.
2019-08-14 13:02:47 +02:00
Chris Snow 9825b0d915 remove CAN section form .ANY 2019-08-13 20:18:52 +01:00
Chris Snow f801a61138 Make use of the other 32K of RAM if not used by libraries, least priority is IRAM1 to help maximise heap availability.
Most beneficial when LWIP is not in use.
2019-08-13 13:41:18 +01:00
Martin Kojtal de84004be1
Merge pull request #11189 from LMESTM/pwmout_cpp_guard
__cplusplus guard fixed pwmout_device.h for STM32 families
2019-08-13 11:19:24 +02:00
Martin Kojtal be23d3c871
Merge pull request #11137 from facchinm/nano33ble_public
Add Arduino Nano 33 BLE target
2019-08-13 10:51:12 +02:00
Martin Kojtal 9113c8d5d7
Merge pull request #11116 from nubix-io/issue-11115
Define I²C related pin names for the L-Tek FF_LPC546XX target
2019-08-13 10:42:49 +02:00
Mahesh Mahadevan d68d8009d9 K64F: Update UART aynchronous API for tickless implementation
Do not allow entry to deep sleep mode when UART transfer is active

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-12 10:57:17 -05:00
Mahesh Mahadevan 72e1f415a9 K64F: Update SPI aynchronous API for tickless implementation
Do not allow entry to deep sleep mode when SPI transfer is active

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-12 10:57:14 -05:00
Mahesh Mahadevan eaace297dc MCUXpresso: Provide an API to wait till TX complete
Wait till the data is flushed out of TX buffer

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-12 10:57:04 -05:00
Mahesh Mahadevan 75608f6db2 MCUXpresso: Updated SMC SDK driver
Update includes allocating RAM region for code to enter
stop modes and execute this code in RAM, thus the flash
is idle and no prefetch is performed while entering stop
mode.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-12 10:56:56 -05:00
Mahesh Mahadevan df64e32aa3 MCUXpresso: Update Kinetis Sleep implementation
1. Use the updated API's provided by the SMC driver
2. Wait till debug UART has finished transmitting data

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-12 10:56:52 -05:00
Mahesh Mahadevan 10bbbd1565 Fix ANALOGIN support for LPC55S69
1. Update to handle 12-bit resolution
2. Properly handle the pin configuration
3. Update the pin setup to handle the ADC B channel

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-09 09:18:04 -05:00
Mahesh Mahadevan bed28681d5 NXP: Enable MBED_TICKLESS on various NXP platforms
Enable for K22F, K64F, K66F, K82F, KL82Z, KW24D, KW41Z, MIMXRT1050, HEXIWEAR

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-08-09 09:17:16 -05:00
Martin Kojtal f8dc035ae4
Merge pull request #11139 from sethitow/stm32f413-crash-capture
STM32F413 Crash Capture
2019-08-09 12:49:21 +01:00
Martin Kojtal 174cac7e11
Merge pull request #11103 from desowin/stm32f7-usbhost
STM32F7: Do not generate redundant IN tokens
2019-08-09 11:36:37 +01:00
Martin Kojtal 9b4373639b
Merge pull request #11072 from jeromecoutant/PULL_REQUEST_CUBE_UPDATE_L4_V1.14.0
STM32L4: update drivers version to CUBE V1.14.0
2019-08-09 11:35:00 +01:00
Laurent Meunier 319223ac16 __cplusplus guard fixed pwmout_device.h for STM32 families
This bug prevented using this header in cpp code directly.
2019-08-09 09:51:39 +02:00
Martin Kojtal d27867ecd4
Merge pull request #11150 from byq77/patch-1
__cplusplus guard fixed pwmout_device.h for STM32F4
2019-08-09 08:41:12 +01:00
Martin Kojtal fd931a169d
Merge pull request #11168 from maciejbocianski/fix_qspi_write_k82f
Xpresso: qspi_write fix
2019-08-09 08:23:21 +01:00
Martino Facchin bd0988416e [TARGET] Add Arduino NANO33BLE 2019-08-08 17:24:56 +02:00
Seppo Takalo 5f6379a55d
Merge pull request #11119 from Reda-RM/master
Riot Micro cellular device
2019-08-07 14:07:27 +03:00
Maciej Bocianski f2599f43eb Xpresso: qspi_write fix
Due to the data buffer is loaded in two steps the whole block needs protection from being interrupted
2019-08-06 14:55:29 +02:00
Seppo Takalo 644f79592c
Merge pull request #11151 from kyle-cypress/pr/gpio-inout-fix
Fix PSoC 6 inout pins
2019-08-06 12:37:08 +03:00
Seppo Takalo 6436f11335
Merge pull request #11123 from desmond-blue/fix-nrf52-us-ticker-free
NRF52 need to call TIMER_TASK_SHUTDOWN for current consumption
2019-08-06 11:33:55 +03:00
Seppo Takalo 1c2b050cb0
Merge pull request #11138 from maclobdell/fix-cypress-mbed-rom-start
fix rom start & size for CY8CKIT_062_WIFI_BT & CY8CPROTO_062_4343W
2019-08-06 11:33:09 +03:00
Seppo Takalo 1e4a837add
Merge pull request #11141 from maciejbocianski/i2c_Xpresso_byte_read_fix
freescale: fix i2c_byte_read function
2019-08-06 11:32:24 +03:00
Seppo Takalo fae1504e30
Merge pull request #11160 from OpenNuvoton/nuvoton_remove_delay_cycle_x4
Nuvoton: Remove dead code nu_delay_cycle_x4
2019-08-06 11:29:14 +03:00
Reda Maher ef1d9778a9 [Riot Micro] Add Riot Micro cellular module targets 2019-08-05 18:57:43 +02:00
Seppo Takalo f2236d26f8
Merge pull request #11131 from lrusinowicz/serial_free_fix
FUTURE_SEQUANA: Add missing serial_free() implementation
2019-08-05 15:41:45 +03:00
Seppo Takalo e69a7c913d
Merge pull request #11099 from trowbridgec/update-ep-agora-pinout
Update EP_AGORA target pinout
2019-08-05 12:00:08 +03:00
Chun-Chieh Li 413d127586 Nuvoton: Remove dead code nu_delay_cycle_x4(...)
Originally, nu_delay_cycle_x4(...) is borrowed from mbed test code for delay
cycle. Currently, it is not used on Nuvoton targets. If delay cycle is needed,
use wait_ns(...) instead which has strict implementation and has passed tests.
2019-08-05 09:32:35 +08:00
Seth Itow 9a65310a85 stm32f413xh: add crash capture support for ARM_STD 2019-08-01 11:28:36 -07:00
Szymon Szantula dd2876c8ac
__cplusplus guard fixed
This error prevented using this header in cpp code directly.
2019-08-01 14:41:11 +02:00
Seth Itow 1c4ad895dd stm32f413xh: add crash capture support for IAR 2019-07-31 15:54:47 -07:00
Seth Itow 6278dacc1f stm32f413xh: add crash capture support for ARM_MICRO 2019-07-31 15:54:20 -07:00
Seth Itow 489bd3dec8 stm32f413xh: add crash capture support for GCC_ARM 2019-07-31 15:53:34 -07:00
Kyle Kearney 33b06d4109 Fix inout pins not functioning correctly
Update the drive mode when setting the GPIO direction.
2019-07-31 11:51:04 -07:00
maclobdell e201a5c6be fix rom start & size for psoc6 targets for 5.13 2019-07-31 12:48:25 -05:00
Maciej Bocianski b788541308 freescale: fix i2c_byte_read function 2019-07-31 19:44:23 +02:00
Lin Gao c36980c370 Fix a build break with ARM compiler 2019-07-31 11:51:20 -05:00
Leszek Rusinowicz 16372f3222 FUTURE_SEQUANA: Add missing serial_free() implementation 2019-07-31 13:28:31 +02:00
Lin Gao eebe00b9d1 Implement PWMOUT 2019-07-30 11:09:44 -05:00
desmond.chen 7b5366f7a3 NRF52 need to call TIMER_TASK_SHUTDOWN for current consumption 2019-07-30 17:20:08 +08:00
Seppo Takalo 417a9fe2fb
Merge pull request #11074 from fkjagodzinski/pinmap-gpio_irq
Add a gpio-irq pinmap
2019-07-29 17:44:55 +03:00
Seppo Takalo 9affeb868d
Merge pull request #11071 from cypress-neil/pr/psoc6-usb
PSOC6: USB device implementation
2019-07-29 17:41:42 +03:00
David Rauschenbach d19c881a56 Define I²C related pin names for the L-Tek FF-LPC546XX target 2019-07-27 07:18:15 -07:00
Chris Trowbridge 04ca01d16f Update PinNames.h with the pinout for EP_AGORA HW rev 1.1 2019-07-26 11:48:36 -04:00
Filip Jagodzinski 844864066a PSOC6_FUTURE: Fix circular dependency for GPIO-IRQ
The use of `gpio_irq_event` & `gpio_irq_handler` in `gpio_irq_s` creates
a circular dependency.

hal/gpio_irq_api.h needs
targets/TARGET_Cypress/TARGET_PSOC6_FUTURE/TARGET_CY8C63XX/device.h, that needs
targets/TARGET_Cypress/TARGET_PSOC6_FUTURE/objects.h, that again needs
hal/gpio_irq_api.h, before the types are defined.

Remove `#include "gpio_irq_api.h"` directive from objects.h and change
the types of `gpio_irq_s` members.
2019-07-25 11:04:16 +02:00
Ireneusz Gaicki b9c4076741 STM32F7: Do not generate redundant IN tokens
When STM32F746-DISCO board was being used in (unsupported) USBHost mode,
the communication was unreliable. Our investigation revealed that the
problem lied in redundant IN tokens that the host generated even though
it shouldn't. This could lead to endless high-frequency NAKs being
received from device, which caused watchdog reset as USBHost spent all
time in interrupt handlers.

In our application the clocks frequencies are:
  * HCLK = 48 MHz
  * APB1 = 6 MHz
  * APB2 = 12 MHz

We have captured the raw USB High-Speed traffic using OpenVizsla.
Without this change, when USB MSD device connected to the system
responded to IN with NAK, there were excessive IN tokens generated about
667 ns after the NAK. With this commit the IN tokens are generated no
sooner than 10 us after the NAK.

The high frequency of the IN/NAK pairs is not the biggest problem.
The biggest problem is that the USB Host did continue to send the IN token
after DATA and ACK packets were received from device - *without* any request
from upper layer (USB MSD).

The USB MSD devices won't have extra data available on Bulk IN endpoint
after the expected data was received by Host. In such case IN/NAK cycle
time is only houndreds of nanoseconds, the MCU has no time for anything else.

The problem manifested not only on Bulk endpoints, but also during
Control transfers. Example correct scenario (when this fix is applied):
  * SETUP stage
    * SETUP [host -> address 0 endpoint 0]
    * DATA0 [80 06 00 01 00 00 08 00] [CRC16: EB 94]
    * ACK
  * DATA stage
    * IN
    * NAK
    ... the IN/NAK repeated multiple time until device was ready
    * IN
    * DATA1 [12 01 10 02 00 00 00 40] [CRC16: 55 41]
    * ACK
  * STATUS stage
    * OUT
    * DATA1 ZLP
    * ACK

Without this commit, in DATA stage, after the ACK was received, the host
did send extra IN to which device responded with STALL. On bus it was:
  * DATA stage
    ...
    * IN
    * DATA1 [12 01 10 02 00 00 00 40] [CRC16: 55 41]
    * IN
    * STALL
    * IN
    * STALL
  * STATUS stage
    * OUT
    * DATA1 ZLP
    * STALL

In the fault case the next SETUP was sent only after 510 ms, which
indicates timeout in upper layer.

With this commit the next SETUP is sent 120 us after the STATUS stage ACK.
2019-07-24 11:40:49 +02:00
Kyle Kearney b65be5fa29 Bug fixes to I2C and SPI drivers
- Fix assert when spi_master_block_write called with 0 size
- Fix assert when spi_format called before spi_frequency
- Simplify implementation of spi_master_write
- Simplify pointer arithmetic expressions in cyhal_spi_transfer and
  cyhal_spi_transfer_async
- Fix I2C driver not honoring the frequency specified during init.
2019-07-23 15:40:45 -07:00
Neil Tuttle 2bf79c1588 PSOC6: Remove USBDEVICE from FUTURE_SEQUANA targets 2019-07-23 15:30:06 -07:00
Lin Gao 2a06ae20cc Added missing pinmap definitions. Fixed target JSON config to avoid treating cc3220sf a target 2019-07-23 14:52:50 -05:00
Seppo Takalo c505d25186
Merge pull request #11077 from bentcooke/52840_align
NRF52840: remove align instructions from gcc linker for ARM.extab exi…
2019-07-23 11:37:47 +03:00
Seppo Takalo 13873f388c
Merge pull request #11062 from AGlass0fMilk/fix-nrf52-saadc-res-again
Fix SAADC resolution for nRF52-based targets... again
2019-07-22 15:30:11 +03:00
Seppo Takalo 0e33dd7e62
Merge pull request #11080 from kyle-cypress/pr/cy8ckit-062s2-43012
Add target for CY8CKIT_062S2_43012
2019-07-22 14:09:33 +03:00
Seppo Takalo 0d6a3be91d
Merge pull request #11079 from bentcooke/52840_patch3
NRF52840: enable TRNG in Nordic SDK config
2019-07-22 14:07:41 +03:00
Seppo Takalo 5aff943a84
Merge pull request #11064 from NXPmicro/Update_LPC_GPIO_IRQ
MCUXpresso: Fix the LPC GPIO IRQ driver
2019-07-22 11:42:46 +03:00
Seppo Takalo 94f434227d
Merge pull request #11060 from NXPmicro/LPC_Update_SPI_Driver
MCUXpresso: Update LPC spi driver
2019-07-22 11:37:20 +03:00
Kyle Kearney 40557cefeb Add target for CY8CKIT_062S2_43012 2019-07-19 15:44:27 -07:00
Ben Cooke 36bd06c00a NRF52840: enable TRNG in Nordic SDK config 2019-07-19 13:24:12 -05:00
Ben Cooke 892adc6e91 nrf52840: remove align instructions from gcc linker for ARM.extab exidx sections 2019-07-19 10:22:05 -05:00
jeromecoutant 96a773a0e6 STM32L4: update drivers version to CUBE V1.14.0 2019-07-19 13:15:07 +02:00
Neil Tuttle a372992aee PSOC6: USB device implementation 2019-07-18 11:16:16 -07:00
Mahesh Mahadevan 34619e55a6 MCUXpresso: Fix the LPC GPIO IRQ driver
The IRQ disable was always disabling both rising
and falling edges of the interrupt thereby causing
failures in cases when one of the two should stay enabled.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-17 15:18:59 -05:00
Seppo Takalo 12d60f86ea
Merge pull request #11050 from jeromecoutant/PR_DISCO_L4R9I
DISCO_L4R9I new target
2019-07-17 23:15:45 +03:00
Seppo Takalo 4cdde1d07f
Merge pull request #11052 from NXPmicro/Update_LPC546XX_ADC
Update MCUXpresso AnalogIn driver for LPC devices
2019-07-17 23:14:35 +03:00
Seppo Takalo fa9a3ed05f
Merge pull request #11053 from maclobdell/psoc6-add-bootloader-support
Add Mbed bootloader support to CY8CKIT_062_WIFI_BT and CY8CPROTO_062_4343W
2019-07-17 23:12:11 +03:00
Lin Gao e74fbcd79e Add CC3220SF_Launchxl to Mbed OS 2019-07-17 13:19:32 -05:00
George Beckstein 7ff707c9b4 Fix SAADC resolution for nRF52-based targets... again 2019-07-17 11:43:20 -04:00
Seppo Takalo 3d5489a6f8
Merge pull request #10644 from fkjagodzinski/hal-gpio_pinmap
Add a gpio pinmap
2019-07-17 14:39:40 +03:00
Seppo Takalo 987533859a
Merge pull request #10104 from kjbracey-arm/sleep_api
Sleep rework, RTOS API for bare metal, wait deprecations
2019-07-17 14:37:53 +03:00
Seppo Takalo 8efd123776
Merge pull request #11042 from caoyuan96421/bugfix
Fixed serial_device IRQ infinite loop bug due to uint8_t overflowing in STM devices
2019-07-17 14:33:21 +03:00
Seppo Takalo 02f8fbda62
Merge pull request #11019 from OpenNuvoton/nuvoton_wait-ns
Nuvoton: Modify wait ns(...) to provide more accurate implementation
2019-07-17 14:30:47 +03:00
Evelyne Donnaes 0a4e5146b0
Merge pull request #11049 from SeppoTakalo/normalize
Normalize line endings for IM880B startup files.
2019-07-17 09:24:52 +01:00
Mahesh Mahadevan e50583459f LPC54114: Fix compile warnings
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-16 12:29:32 -05:00
Mahesh Mahadevan 55a2eddf8a MCUXpresso: Update LPC SPI HAL driver
Add support for different slave selects

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-16 12:10:34 -05:00
maclobdell ccbfea502c add defines for bootloader support, for target without cmsis pack 2019-07-15 23:13:22 -05:00
Mahesh Mahadevan 9b8a859883 MCUXpresso: Update the Analogin driver for LPC devices
1. Update the clock divider setting
2. ADC resolution is 12-bits, update the API return value
   to return 16-bit result
3. Update IOMUX setup

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-15 14:40:55 -05:00
Mahesh Mahadevan f4648673cf LPC54114: Update the ADC SDK driver
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-15 14:40:55 -05:00
Mahesh Mahadevan 7b011e9fe2 LPC546XX: Update the ADC SDK driver
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-07-15 14:40:55 -05:00