Commit Graph

2450 Commits (09970394da200ece1ed493685623435e6cd71639)

Author SHA1 Message Date
Srod Karim c328fb068e DMA fix 2015-09-16 17:15:49 +02:00
Srod Karim f1e1977506 LEUART EM2 release 2015-09-16 17:15:46 +02:00
Srod Karim b832689ae0 various fixes - candidate release 2015-09-16 17:15:40 +02:00
Srod Karim 7746a4be75 set clocktrees, and enable DMA in EM2 2015-09-16 17:15:01 +02:00
Srod Karim 5a9464b26a branched block/unblock 2015-09-16 17:14:58 +02:00
Peter Conheeney 24ebe1790e changes for adding IoT Subsystem for Cortex-M target 2015-09-14 12:23:32 +01:00
adustm fbdf211df1 DISCO_F051R8: update device header file with the last STM32CubeF0 hal version 2015-09-11 17:10:43 +02:00
adustm d571b16e90 STM32F0 : Update targets after STM32F0 Cube HAL driver update 2015-09-11 15:07:42 +02:00
adustm f7caf72009 STM32F0 : update hal api files 2015-09-11 15:06:04 +02:00
adustm ae0891878a NUCLEO_F031K6 : add new target 2015-09-11 15:02:05 +02:00
adustm d9384660dc STM32F0 - Update Cube F0 HAL driver 2015-09-11 15:00:50 +02:00
hjjeon0608 481a9d97cc Merge branch 'master' of https://github.com/mbedmicro/mbed into mbed_dev2 2015-09-09 14:20:13 +09:00
hjjeon0608 5498c96161 Add files of WIZWIKI_W7500P platform in cmsis and hal folder. 2015-09-09 14:18:41 +09:00
tomoyuki yamanaka 5d7099994a Modify to support NEON for RTOS. (mbed common codes)
We modified to support NEON of CMSIS-RTOS RTX for Cortex-A9 and fixed some bugs of it.
2015-09-08 16:39:35 +09:00
tomoyuki yamanaka 7ea62c20b3 Modify to support NEON for RTOS. (mbed CMSIS HAL)
We modified to support NEON of CMSIS-RTOS RTX for Cortex-A9 and fixed some bugs of it.
2015-09-08 16:39:07 +09:00
hjjeon0608 1c607a6c7a UART 2 is enabled.
Until now, only UART 0, 1 are enabled, but now UART 2 is also enabled.
W7500P should need UART 2 because DAP use UART 2.
2015-09-08 08:44:22 +09:00
dbestm a6f4046e7b [NUCLEO_L476RG] add hal and target files 2015-09-07 14:01:17 +02:00
Wojciech Gorniak f22236b460 Defined RF pins.
Conflicts:
	libraries/radio/SX127x/sx1272/sx1272-hal.cpp
	libraries/radio/SX127x/sx1272/sx1272-hal.h
2015-09-07 12:13:34 +02:00
Martin Kojtal 40a175b168 Merge pull request #1321 from adfernandes/master
Fix a signed and unsigned integer comparison warning
2015-09-07 09:56:17 +01:00
Martin Kojtal bed6e15da6 Merge pull request #1320 from Sissors/lookmartinImadeanewbranch
[HAL][K20XX] Fixed (possible) glitches when changing SPI mode on K20 …
2015-09-07 09:55:18 +01:00
Martin Kojtal 748fea3057 Merge pull request #1316 from kpurusho/master
Drivers for SAMD21
2015-09-07 09:46:11 +01:00
Andrew Fernandes b2c122be4c Fix a signed and unsigned integer comparison warning 2015-09-06 17:59:04 -04:00
Sissors 7423bd3d7b [HAL][K20XX] Fixed (possibly) glitches when changing SPI mode on K20 MCUs
Made register access bit nicer (not first clearing bit and then setting
it again if thats not required), and additionally when clock idle level
is changed, it writes out a dummy byte. Problem is only after a write
the idle level is changed, resulting in a clock glitch at the start
2015-09-06 20:34:46 +02:00
akhilpanayam 799d2d61c3 * Updated cmsis files for KnR Coding Standards. 2015-09-04 16:10:35 +05:30
akhilpanayam 0223afcddd * updated year in ARM mbed license. 2015-09-04 15:59:43 +05:30
Martin Kojtal 92d1bfad30 Merge pull request #1318 from Wiznet/mbed_dev1
Change directory structure and move files.
2015-09-04 09:29:53 +01:00
Martin Kojtal a412b49ac5 Merge pull request #1315 from lindvalla/fix_llu35_lpcxpresso_issue
Fixed linker script for LPCXpresso for EA LPC11U35 QuickStart Board
2015-09-04 08:36:19 +01:00
Martin Kojtal 1f6eaa5e1d Merge pull request #1313 from fredlak/master
FRDM KL43Z - Fix RTC init function for KL43Z
2015-09-04 08:33:10 +01:00
Martin Kojtal a19d9e011d Merge pull request #1310 from masaohamanaka/master
Modify the register setting method in the pin setting configuration.
2015-09-04 08:02:30 +01:00
Pawel Rozanski feccab3e21 Full ELMO pin bindings. 2015-09-03 14:54:42 +02:00
Pawel Rozanski 4e1ca8fcad ELMO STDIO on UART 1. 2015-09-03 12:39:37 +02:00
Pawel Rozanski bb507ec099 ELMO's SPI aliases 2015-09-03 12:38:06 +02:00
Pawel Rozanski cde6461116 ELMO's LED. 2015-09-03 12:21:25 +02:00
Pawel Rozanski e8d8f93350 25Mhz xtal for ELMO. 2015-09-03 12:20:48 +02:00
Wojciech Gorniak b9fd743216 ELMO target (NUCLEO_F411RE copy).
Conflicts:
	workspace_tools/build_release.py
	workspace_tools/export_test.py
	workspace_tools/toolchains/gcc.py
2015-09-03 11:58:01 +02:00
hjjeon0608 cbe00fd832 Remove '#include W7500x_conf.h'
Add assert parameter define.
2015-09-02 17:59:15 +09:00
hjjeon0608 3208676d7a We handle including header by W7500x_conf.h.
But now I deleted the W7500x_conf.h and all peri drivers have own including header.
And some code are optimized and removed warning.
2015-09-02 17:55:26 +09:00
hjjeon0608 01ce5e6580 Move defines of UART from PeripheralNames.h to device.h because to move PeripheralNames.h(not dependent mcu) to upper folder. 2015-09-02 17:34:19 +09:00
hjjeon0608 b329a1e6b5 I found wrong pin name during re-struct the folders.
So I correct this.
2015-09-02 17:32:01 +09:00
hjjeon0608 428eae0cdc objects.h, PeripheralNames.h and PortNames.h are moved from TARGET_WIZwiki_W7500 folder to upper folder. 2015-09-02 17:15:13 +09:00
hjjeon0608 17d6ff861a objects.h, PeripheralNames.h and PortNames.h are moved from TARGET_WIZwiki_W7500 folder to upper folder because they are not dependent to mcu. 2015-09-02 17:14:12 +09:00
hjjeon0608 d6d279edb5 Peripheral drivers are moved from cmsis to hal folder.
And cmsis.h, cmsis_nvic.c, cmsis_nvic.h, system_W7500x.c, system_W7500x.h and W7500x.h are moved to upper folder.
2015-09-02 17:11:59 +09:00
Martin Kojtal 47c81703b3 Merge pull request #1301 from Bernator/master
[LPC11U68] fix Uart1-4 irq handling bugs, add Pins P0_14,P0_13 for use with Uart1
2015-09-02 07:46:28 +01:00
Martin Kojtal 483bb0197f Merge pull request #1299 from claplace/lpc81x
LPC81X: reduce code size and add ARM_GCC support
2015-09-01 15:45:33 +01:00
akhilpanayam 1ac74c33f2 * updated with correction in serial_api,c for finding mux setting. 2015-09-01 19:15:46 +05:30
akhilpanayam 5079132062 * updated with corrections in Analogue in and out APIs. 2015-09-01 19:15:45 +05:30
Karthik Purushothaman 127471ba30 Moved files from TARGET_SAM0 to TARGET_SAM_CortexM0+ 2015-09-01 19:15:44 +05:30
akhilpanayam ddfb57e932 * updated with corrections in default pins. 2015-09-01 19:15:43 +05:30
akhilpanayam 4d5f7a3fa7 * updated port apis.
* added supprot for SAMD21J18A for mbed SDK tests.
2015-09-01 19:15:43 +05:30
akhilpanayam 9a503026cf * updated with corrections in analogueout apis. 2015-09-01 19:15:42 +05:30
akhilpanayam 37ddc4c0c3 * updated port apis for SAMD21J18A
* correction in analogueout api
* test support for analogueout in mbed SDK
2015-09-01 19:15:42 +05:30
akhilpanayam 24edb54690 * updated pins for external interrupt.
* updated default pins.
2015-09-01 19:15:41 +05:30
akhilpanayam 013b71a56f * updated systeminit checking for analoguein apis.
* updated with tested code for analogueout apis.
* updated objects for analaguein and analaogueout.
2015-09-01 19:15:40 +05:30
akhilpanayam ecfc96f57c * Base Commit for AnalogueOut. 2015-09-01 19:15:39 +05:30
vimalrajr 67799287aa Adding pins for SAMD21 SERCOM and PWM, and default pinouts of SPI and I2C. 2015-09-01 19:15:39 +05:30
akhilpanayam 6798b87180 Resolved merge conflict 2015-09-01 19:15:38 +05:30
Anders Lindvall 05d41fe7db Fixed linker script for LPCXpresso for EA LPC11U35 QuickStart Board
After version 7.5.0 the compiler used in LPCXpresso changed and as a
result some of the included libraries were changed. This caused a
build error when trying to compile exported mbed projects.

The error was with NewlibNano libraries (*_s.a) and as NewlibNano is
not used by mbed, this patch references the non-NewlibNano libraries
instead.

This change in the linker script has been verified on LPCXpresso versions
from 6.1.2 up to the current 7.9.0.
2015-08-31 13:21:42 +02:00
fedlak 2c2ac0f2a2 [FRDM KL43Z] Fix RTC init function for KL43Z 2015-08-29 01:27:40 +02:00
fedlak 12b0e1dc49 [FRDM KL43Z] Fix RTC init function for KL43Z 2015-08-28 01:17:49 +02:00
tomoyuki yamanaka 5588d3cef3 Modify the register setting method in the pin setting configuration.
Modify the register setting method in the pin setting configuration.
2015-08-26 12:58:32 +09:00
Martin Kojtal 92ca8c7b60 Merge pull request #1302 from jpbrucker/fix_s110_ldscript
Nordic: update application start address in GCC linker script
2015-08-20 10:41:02 +01:00
Martin Kojtal 6f6625090c Merge pull request #1305 from bcostm/dev_NUCLEO_F446RE
NUCLEO_F446RE - Improvements + update of all STM32F4 (PWM12 + map/system files)
2015-08-20 10:40:11 +01:00
Martin Kojtal 63c2b2477a Merge pull request #1297 from kpurusho/master
Remaining drivers for SAMR21
2015-08-20 10:31:19 +01:00
bcostm 844a2bed64 Add PWM_12 2015-08-19 11:01:13 +02:00
bcostm e2b37fc68d Add missing PWM_12 and update map and system files to be in line with latest official version. 2015-08-19 10:48:17 +02:00
Jean-Philippe Brucker dfcb2c680f Nordic: update application start address in GCC linker script
The S110 linker script is still using start address 0x16000, which was
required by version 7.1 of the s110 SoftDevice. Update it to the current
address, required by S110 v8.0.0.
2015-08-18 17:39:55 +01:00
Martin Kojtal 1c2263fbc7 Merge pull request #1288 from BlackstoneEngineering/BLoDFix
ST BLoD Fix
2015-08-18 08:01:01 +01:00
Bernator 8f50e1e9ea [LPC11U68] fix Uart1-4 irq handling bugs and add Pins P0_14,P0_13 for use with Uart1 2015-08-17 19:12:28 +02:00
bcostm ded07a59b5 Update SPI clock for STM32F446RE 2015-08-17 16:41:06 +02:00
bcostm 239decadcc Add missing PWM_12 definition 2015-08-17 11:51:39 +02:00
bcostm 0746c2f755 [STM32L4] serial improvements 2015-08-17 11:49:04 +02:00
bcostm 3ce7c5c790 [STM32F4] pwmout improvements 2015-08-17 11:48:21 +02:00
bcostm 7b1a2e1077 Add missing startup files for ARM_STD, MICRO_ARM and IAR 2015-08-17 11:43:16 +02:00
bcostm 915ed19fe6 Update other cmsis files
- Interrupt vectors
- Timer clock setting for hal tick
2015-08-17 11:41:36 +02:00
bcostm eb88f87118 Update CMSIS device driver V2.3.2 2015-08-17 11:31:25 +02:00
bcostm f88cad9d9f Update STM32CubeF4 HAL driver to V2.3.2 2015-08-17 11:29:07 +02:00
Cyprien Laplace 65fa7b6923 LPC81X: reduce code size and add ARM_GCC support
LPC810 has only 4KB of flash, thus avoiding dead code is really nice.
Here the NVIC interrupt setup was pulled from the us_ticker code even
if no code is using timer events.

This also adds ARM_GCC support for TARGET_LPC81X.

LPC81X and LPC82X support Cortex M0+ VTOR register, so it is not
necessary to put non-init text at 0x200.
2015-08-16 21:35:08 -04:00
Martin Kojtal 6d84db41c6 Merge pull request #1289 from bcostm/dev_DISCO_F746NG
DISCO_F746NG - Improvements
2015-08-14 13:13:40 +01:00
akhilpanayam c30a8a1df0 * renamed TARGET_SAM0 folder name to TARGET_SAM_CortexM0+ 2015-08-14 17:36:33 +05:30
akhilpanayam 1f9799eb71 * updated analoguin init for checking systeminit in beginning. 2015-08-14 17:36:32 +05:30
vimalrajr 78817e8c44 Removed unwanted comments. 2015-08-14 17:36:31 +05:30
vimalrajr 698484eb47 Bug fix in PWM APIs, not all TCC modules support upto 4 channels. 2015-08-14 17:36:31 +05:30
vimalrajr 59d3dffa0a Modified I2C APIs as per review comments. 2015-08-14 17:36:30 +05:30
vimalrajr c63497a363 Added support for General Call Address mode. 2015-08-14 17:36:29 +05:30
vimalrajr bbf884c56e Added missing pins in PWMOut pinmap. 2015-08-14 17:36:28 +05:30
akhilpanayam 6b346253f2 * updated with corrections in serial asynch apis. 2015-08-14 17:36:27 +05:30
vimalrajr 149244d474 Bug fix in PWM APIs 2015-08-14 17:36:27 +05:30
akhilpanayam fa56bfd164 * Base commit after integrating ASF_3.25. 2015-08-14 17:36:26 +05:30
akhilpanayam e7da2dbe2b * updated serial api to support 1 pin (rx / tx) operation. 2015-08-14 17:36:25 +05:30
akhilpanayam 61b7d9755a * removed board.h in common folder - not required.
* common2 folder moved to TARGET_Atmel\TARGET_SAM0\drivers. common2 folder contains m0+ specific files only.
2015-08-14 17:36:24 +05:30
vimalrajr 5109745950 Modifying I2C Async API to handle null tx and rx buffers 2015-08-14 17:36:24 +05:30
akhilpanayam 8227c91f54 * added pins for ADC as per pio_samr21g18a.h 2015-08-14 17:36:23 +05:30
vimalrajr 31fb6731ca Added handling RX only transmission in SPI APIs 2015-08-14 17:36:22 +05:30
vimalrajr 0adc8fdf6c Bug fix in SPI API 2015-08-14 17:36:21 +05:30
akhilpanayam 1da4cbc288 * added cmsis files for pin definitions for all targets of SAMR21 and D21. 2015-08-14 17:36:21 +05:30
vimalrajr 9ccfa07ac6 Removed unwanted header file inclusions 2015-08-14 17:36:20 +05:30
vimalrajr 800bc093e9 Modified pinmap APIs and supporting functions as per review comments. 2015-08-14 17:36:20 +05:30
akhilpanayam 47d62cd8ce * Updated IAR startup file.
* Grouped SAMR21G18A specific files to its particular folder.
* Added files for all variants of SAMR21 and SAMD21.
* Removed Quick Start files from ASF.
* Added Target Dependency in port.c for PORT MASK.
* Grouped PWM pin implementation to SAMR21G18A folder.
2015-08-14 17:36:19 +05:30
akhilpanayam d34e39ff05 * updated with corrections in serial init. 2015-08-14 17:36:18 +05:30
akhilpanayam 9da56e4dfc * updated serial_free api to make the pin Pulled up. 2015-08-14 17:36:18 +05:30
vimalrajr 3e5ac805b2 Modified SPI default baud rate as per review comments 2015-08-14 17:36:17 +05:30
vimalrajr bf05bbcaa6 Modified PWMOut APIs as per review comments 2015-08-14 17:36:17 +05:30
vimalrajr cd6771367d Modified supporting functions for finding SERCOM pinmaps. 2015-08-14 17:36:16 +05:30
akhilpanayam 8188c05c64 * Removed unwanted arrays in Pinmap.
* corrected macros for build to be successful without ASYNCH enabled in serial apis.
* added serial_pinout_tx api in serial.
2015-08-14 17:36:16 +05:30
vimalrajr 987567ee59 Adding PWM API implementation 2015-08-14 17:36:15 +05:30
akhilpanayam 62a6bcaeeb * updated with corrections in AnalogueIn apis. 2015-08-14 17:36:14 +05:30
akhilpanayam c7573e43ce * updated port apis with corrections. 2015-08-14 17:36:14 +05:30
vimalrajr 0ee229aa90 Modified I2C APIs as per review comments. 2015-08-14 17:36:13 +05:30
vimalrajr 5f9ee05e4b Removed ASF license headers from files. 2015-08-14 17:36:13 +05:30
vimalrajr 062ee461da Adding implementation for I2C APIs - master mode, slave mode, and master async interrupt mode. 2015-08-14 17:36:12 +05:30
akhilpanayam 87c8bc8bda * updated with new folder structure.
* added more pins for external interrupt as per pio_samr21g18a.h
* updated serial_api.c for sanity checks, removed unused variables and other corrections.
2015-08-14 17:36:10 +05:30
akhilpanayam a4fc70d463 * updated with NULL check for irq_handler. 2015-08-14 17:36:09 +05:30
akhilpanayam e1c0fea8b7 * updated the default pin macros for R21. 2015-08-14 17:36:09 +05:30
akhilpanayam ef2b6cfd66 * File addition for PWM.
* updated port apis for variable (start) data type change.
2015-08-14 17:36:08 +05:30
akhilpanayam c47f60bb23 * updated with port driver apis. Tested and working. 2015-08-14 17:36:08 +05:30
akhilpanayam 5d0a913591 * Added missed out pins for external Interrupt. irqmask initialized to 0 in init for gpio irq. 2015-08-14 17:36:07 +05:30
Martin Kojtal b28ce2b780 Merge pull request #1277 from modtronix-com/master
Changed NZ32-SC151 external oscillator to 16MHz, and moved defines to device.h
2015-08-14 12:43:02 +01:00
David H 57463eaef0 Merge pull request #5 from mbedmicro/master
Update my fork with original
2015-08-14 13:25:26 +10:00
modtronix-com 160d4bccf7 Cosmetic changes
Cosmetic change to reduce number of diffs showing up in pull request
2015-08-14 12:06:13 +10:00
modtronix-com 16327ce210 Added place for adding mbed and HAL defines
Added place for adding mbed and HAL defines
2015-08-14 11:53:45 +10:00
modtronix-com ccecacc129 Moved "stm32l1xx_hal_conf.h" to project folder.
Moved "stm32l1xx_hal_conf.h" to target folder. This file is part of
STM32CubeL1, and this is the way it is done for the 95 examples supplied
with STM32CubeL1. This file should be part of project(target) folder,
not API. On mbed, this has been done for TARGET_STM32F4 and
TARGET_STM32F7 targets (in ../targets/cmsis/TARGET_STM folder). All
targets in these two folders already have the "stm32l1xx_hal_conf.h"
file in the target folder.
2015-08-14 10:53:11 +10:00
Steven Cooreman 62d9adfb42 In certain cases, the clock setting did not select HFXO, even though HFXO was requested in the board header.
Root cause: you cannot use a C-enum name in a #if compare, becaudse the preprocessor will replace all enum names with 0 (so all checks on HFXO/LFXO checked out regardless of the define).
2015-08-13 17:35:40 +02:00
Martin Kojtal 376d6a73e3 Merge pull request #1287 from stevew817/usb-device-rel3
Silicon Labs - Add support for USBDevice
2015-08-13 15:39:43 +01:00
Martin Kojtal bd9a168505 Merge pull request #1273 from marcusbirkin/master
KL46Z - Ensure the NVIC table gets copied to RAM even when it is not at 0x0000
2015-08-13 11:43:33 +01:00
Martin Kojtal 163a66abdd Merge pull request #1268 from martin2100/patch-1
STMF4 - pwmout_api.c freq fix
2015-08-13 11:21:23 +01:00
Martin Kojtal bc07f838f8 Merge pull request #1286 from devanlai/master
LPC15XX - Fix GPIO port word pin registers offset
2015-08-13 11:19:31 +01:00
Martin Kojtal 59ff23cdaf Merge pull request #1290 from BlackstoneEngineering/BLoDFix_SiLabs
Blue Lights of Death fix for Silicon Labs boards
2015-08-13 10:56:41 +01:00
Martin Kojtal 88ef2fe48f Merge pull request #1283 from kgills/pwm_fix
[MAXWSNENV, MAX32600MBED] Simplifying pwm search. Reordering PinMap_PWM.
2015-08-13 10:27:02 +01:00
Martin Kojtal cc42528dbc Merge pull request #1281 from jpbrucker/fix_us_ticker
Nordic: handle unwanted RTC interrupts
2015-08-13 10:21:57 +01:00
Austin Blackstone 0278260cad added BLoD functionality to all Silicon Labs boards. Added #define to all device.h files and a disable_irq() exception in common/board.c because the wait function is implemented in a interrupt for both NRF and SiLabs boards 2015-08-11 11:32:11 -05:00
bcostm 2b1b1acce6 Improvement of timer initialization for pwmout 2015-08-11 14:42:15 +02:00
bcostm 8f6a11530c Change SERIAL_TX/RX value 2015-08-11 14:38:03 +02:00
bcostm 8b76967c29 Improvement of ticker configuration 2015-08-11 14:34:06 +02:00
bcostm 408927ec5a [DISCO_F746NG] Update cmsis files (alignment with STM32CubeF7 package) 2015-08-11 12:16:52 +02:00
bcostm 03bd5dbd8f [DISCO_F746NG] Update STM32CubeF7 to V1.0.1 2015-08-11 12:04:45 +02:00
Austin Blackstone 1f93de49b6 added Blue Lights of Death action to ST Nucleo and Diso boards 2015-08-10 16:54:50 -05:00
Devan Lai 37c71434dd [LPC15XX] Fix GPIO port word pin registers offset
Adjust offset for GPIO port word pin registers from 0x100 to 0x1000
2015-08-07 22:32:57 -07:00
bcostm a1bd132fc1 Merge branch 'master' of https://github.com/mbedmicro/mbed 2015-08-07 11:54:06 +02:00
Kevin Gillespie e3482229e0 Simplifying pwm search. Reordering PinMap_PWM. 2015-08-05 12:57:07 -05:00
Jean-Philippe Brucker 15019ef882 Nordic: fallback to the internal LF clock in case Xtal doesn't start
Since some Nordic platforms don't use an external clock source, they
need to be built with the TARGET_NRF_LFCLK_RC flag. If they don't,
SystemInit will wait indefinitely for an external clock to start.

This patch adds a 1s timeout to the external oscillator initialisation,
and falls back to using the internal RC one if no LFCLKSTARTED event was
received in this interval.

For most applications, this won't matter. When building for the wrong
Nordic target, pin numbers will be mixed up as well and the application
will break later on.
But on targets that can only be updated using FOTA and don't have an
interface chip, this patch avoid ending up with a bricked device after a
slight mistake. Indeed, BLE DFU service is portable across all boards
and will run even with a mixed-up target setup, allowing the user to
re-install the right application.

An example scenario is transferring an application on a standalone
NRF51 chip, after spending some time prototyping on an mKIT, which tends
to happen a bit too often...

Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
2015-08-05 10:57:57 +01:00
Jean-Philippe Brucker 1c90449f35 Nordic: handle unwanted RTC interrupts
This patch clears the EVENT_COMPARE register even when we're not
expecting to get a COMPARE interrupt.

Here is a scenario where we get an unwelcome interrupt, and where it
currently results in a deadlock:

* A Ticker T1 runs at 500ms
* Its handler registers a Timeout T2 at 20µs. Since LF clock runs at
  32.768kHz, this will be rounded up to a multiple of 30.5µs (actually
  61µs, to ensure we're in the next tick window)

           T1  T2                                T1' T2'
    -------|---|---------------------------------|---|--------->
           :   :                                 :
           <---> n * 30.5µs                      :
           <--------------- 500ms --------------->

* When the ticker API handles T1, it calls us_ticker_set_interrupt a
  first time for T1', and then for registering T2.
* Since T2 period is less than one RTC tick (30.5µs), there is a high
  chance it will go past *while* we're still in this first handler.
* So ticker_irq_handler also handles T2 as well, and removes it from the
  queue.
* us_ticker_set_interrupt is called for T1' before returning from
  ticker_irq_handler

The problem resides in the fact that us_ticker_set_interrupt takes more
than 2 RTC ticks to execute: while inside the handler, T2 interrupt will
fire.

* Because of this pending interrupt, RTC1_IRQHandler will be called
  right away, but since we removed T2 from the queue, the handler is
  waiting for T1' instead, and will not clear EVENT_COMPARE until we
  reach the T1' tick, in about 500ms.
* This results in a lock and main isn't executed anymore.

With this patch, we avoid being stuck in RTC1_IRQHandler while waiting
for T1'.

Note: even when T2 isn't handled in the same loop as T1, we may get a
spurious interrupt, because us_ticker_set_interrupt will be called twice
for T2... and will register T2+m the second time, while T2 interrupt is
fired in the background.
That case isn't as harmful, since RTC1_IRQHandler will be waiting for
T2+m, which is only one or two ticks further, and then it won't be
called again before T1'.

Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
2015-08-05 10:39:29 +01:00
modtronix-com 25144420ab Changed External oscillator to 16MHz, moved defined to device.h
For NZ32-SC151 fixed External oscillator frquency to 16MHz, and, moved
defined to device.h
2015-08-04 12:35:23 +10:00
Martin Kojtal 9d276ebad7 Merge pull request #1265 from Wiznet/mbed_dev4
Wiznet - I2c -> gpio
2015-07-31 14:52:52 +01:00
Martin Kojtal e4cd8bbd3e Merge pull request #1266 from alexbeer2048/master
Enable LPC8xx usart when configuring it
2015-07-31 14:12:58 +01:00
Martin Kojtal 5b1dc60c03 Merge pull request #1271 from kgills/pwm_fix
MAXWSNENV, MAX32600MBED - Fixing pwm array search.
2015-07-31 13:57:26 +01:00
Jay Francis 2cb58075f7 Removed PB6 debug toggling 2015-07-29 11:42:58 -04:00
Kevin Gillespie db8697c321 [MAXWSNENV, MAX32600MBED] Fixing pwm array search. 2015-07-28 13:55:22 -05:00
Mikko Polojarvi 8054366915 Silicon Labs USB device support
** Overview

This commit provides USB device-mode drivers for Silicon Labs chips.
The code is based on the SiLabs USB driver that is part of the
Simplicity dev environment.

Because Mbed USBDevice class wants to control the USB transactions
itself, large parts of the higher level code originally present in the
driver have been stripped out. An attempt has been made to keep Mbed
code separate enough that patches can be applied with minor effort, if
needed.

** Use of dynamic memory

Due to requirements imposed by the USB hardware, the driver needs read
and write buffers for every enabled endpoint. Since information on
what EPs will be used is only available during runtime, dynamic memory
allocation is used to minimize memory usage.

If needed, dynamic memory use can be disabled via a flag in
usbconfig.h. In this case, please read the documentation to see what
limitations this imposes. Static memory usage can also be reduced by
limiting the maximum number of active endpoints - see configuration in
usbconfig.h and USBEndpoints_EFM32.h.

** Power management

Driver supports the new SiLabs functionality in Mbed sleep(). Normal
sleep (EM1) is always available, and deep sleep (EM2) is available
when USB is either disconnected or suspended. How and when different
sleep modes are made possible can be configured in usbconfig.h

** Supported hardware

Current release officially supports, and has only been tested on Giant
Gecko. Upcoming releases will add support for other SiLabs platforms
on Mbed.
2015-07-28 17:22:53 +03:00
bcostm 0f35f53699 [DISCO_L476VG] Add hal specific files 2015-07-28 10:23:26 +02:00
bcostm 151fe14452 [STM32L4] Add hal common files 2015-07-28 10:22:50 +02:00
bcostm e2ffa3f481 [STM32L4]Add hal common files 2015-07-28 10:22:02 +02:00
hjjeon0608 20888331af Deleted not used variable.
Deleted else if and using GPIO offset address.
Added GPIO out enable set/clear functions.
2015-07-28 11:19:08 +09:00
bcostm 33384ea5a5 [DISCO_L476VG] Add cmsis files 2015-07-27 15:57:47 +02:00
bcostm df5d0a124e [STM32L4] Add STM32Cube L4 HAL driver V1.0.0 2015-07-27 15:56:29 +02:00
Martin Simpson bbfd190206 Update pwmout_api.c
Line 244 changed PclkFreq*2 to PcklFreq
Line 246 changed PclkFreq to PclkFreq*2

This is proposed as the current pwmout_api.c gives the wrong period/frequency when using e.g."mypwm.period_ms(1);"
For PWM1 1ms gave 500Hz and PWM2,3 and 4 gave 2KHz

Applied to source as above and re-compiled this gave 1KHz outputs for all PWM's selected
Tried on NUCLEO STM32F401RE will effect other NUCLEO-STM32F4 as above

HAL Clocks are as follows for the F401RE Board:  PCLK1=42000000 PCLK2=84000000 HCLK=84000000

Kind Regards

Martin
2015-07-27 12:16:45 +01:00
James Devine 633b57e209 Nordic: Enabled the invocation of twi_master.h functions from a cpp context
In a previous commit, the content of twi_master.h did not allow the invocation
of the c functions specified by the file from a cpp context. This commit wraps
the contents of the header file with the appropriate ifdefs.
2015-07-27 11:31:49 +01:00
Jonathan Austin c285f2e1d3 Nordic: refactor the way we select the LFCLKSRC
Rather than indefinitely adding platforms to a #define list that use
the internal RC oscillator instead of an external crystal, let platforms
define this and the 'core code' can be platform agnostic.

Note, that this also allows people to use this symbol in libraries.
There's one notable example in the BLE_API that can now be refactored to
the same method, hopefully saving someone some unpleasant debugging
when their platform doesn't work because of a missing platform dependent
define in the high level API.

Signed-off-by: Jonathan Austin <jonathan.austin@arm.com>
2015-07-27 11:31:49 +01:00
Jonathan Austin 382f7334fb Nordic: added the s110 scatter files
This commit adds the ability for a compile flag to be set from targets.py
which changes the soft device to s110.

The compile flag is: MCU_NRF51_16K_S110. In order to avoid duplication
of the startup file, for the 16K parts we introduce an S110 or S130
scatter file. This means all 16K platforms must define
MCU_NRF51_16K
and ONE of
MCU_NRF51_16K_S110 or MCU_NRF51_16K_S130

Based on an earlier commit by Mihail but modified to avoid copy/paste
of the startup code for S110/S130

Signed-off-by: Jonathan Austin <jonathan.austin@arm.com>
2015-07-27 11:31:48 +01:00
Mihail Stoyanov ee4c83b34f Nordic:
Support multiple SoftDevices for NRF51822 based platforms
Move microbit S110 to Nordic default SoftDevice location
Remove obsolete S110 bootloader
2015-07-27 11:08:03 +01:00
James Devine 585fe6245f Add BBC microbit platform: NRF51_MICROBIT
This adds the BBC micro:bit platform, based on NRF51822

Initially, add the platform to use whatever version of softdevice is the
default for the NRF51822-based platforms.

Originally written by James, modified for new target inheritance by
Jonathan Austin:

Signed-off-by: Jonathan Austin <jonathan.austin@arm.com>
2015-07-27 11:07:53 +01:00
James Devine 668644c604 Nordic: fix for Nordic PAN56 - reset twi master
This commit is based on Nordic's fix for an abnormality in some releases
of the nrf51822 silicon.

Without this fix, the I2C bus locks up and doesn't reset properly. The
fix resets the TWI master on powerup.

For more information see
https://www.nordicsemi.com/eng/nordic/download_resource/24634/6/47696154

Nordic Product Anomaly ID 56.
2015-07-27 11:02:20 +01:00
James Devine e50305122d Wallbot: update wallbot to use standard I2C definitions
Unlike other Nordic platforms, the wallbot doesn't use numbered I2C
ports. This makes it difficult to refer to a platforms's I2C pins from
common code.

This fix leaves the original wallbot definitions, but adds the more
'standard' ones too.

Signed-off-by: Jonathan Austin <jonathan.austin@arm.com>
2015-07-27 11:02:20 +01:00
Alexander Beer 37a478b88c Enable LPC8xx usart when configuring it 2015-07-27 11:45:47 +02:00
Martin Kojtal 9b9bab51e5 Merge pull request #1229 from Wiznet/mbed_dev2
Change us_ticker - one dual timer + one pwm timer
2015-07-27 09:38:55 +01:00
Martin Kojtal bfd1ddeee4 Merge pull request #1250 from dbestm/master
DISCO_F746NG - add pwm12 clock
2015-07-27 09:26:46 +01:00
hjjeon0608 641ecd065a Add Repeated read/write functions. 2015-07-27 11:22:04 +09:00
hjjeon0608 74cdab3021 Change I2C using GPIO. 2015-07-27 10:02:03 +09:00
hjjeon0608 226d534d85 I have rectified typos
DULA -> DUAL
2015-07-24 14:31:48 +09:00
Mihail Stoyanov 49dbe0c6cc Add bootloader versioning based on the softdevice being used for all nRF51822 based platforms.
Remove obsolete S110 softdevice.
2015-07-21 13:47:40 +03:00
dbestm 75d08d8afa [DISCO_F746NG] remove tab in pwmout_api.c 2015-07-20 13:10:57 +02:00
Martin Kojtal a68b724d07 Merge pull request #1245 from stevew817/master
[Silicon Labs] Bring EFM32 HAL up to date
2015-07-20 09:46:13 +02:00
hjjeon0608 55dc1fd077 Deleted constant in calculate interrupt timing. 2015-07-20 14:54:56 +09:00
Steven Cooreman 60b16abb27 Fix tabulation mistake 2015-07-17 10:34:49 +02:00
dbestm 02024ec968 [DISCO_F746NG] add pwm12 clock 2015-07-17 10:16:13 +02:00
Martin Kojtal e7144f83a8 Merge pull request #1243 from kpurusho/master
More API implementation for SAMR21
2015-07-17 10:14:49 +02:00
ytsuboi e67c02128c [LPC4337] fix PinNames.h for OM13070 2015-07-17 16:36:34 +09:00
hjjeon0608 1479d07a5c Change hardcoded prescale setting 2015-07-17 11:01:48 +09:00
Steven Cooreman 81d2687d3e Make the stack space as large as possible when compiling with ARMCC (because GCC does this automatically). See https://github.com/mbedmicro/mbed/issues/1246 for reference. 2015-07-16 14:24:08 +02:00
Steven Cooreman d51db9039c Fix GPIO implementation 2015-07-16 14:23:07 +02:00
Steven Cooreman b6c2306e4e Fix mistake in Happy Gecko header files, reserved too little RAM space for NVIC table. 2015-07-15 16:12:14 +02:00
Martin Kojtal c0279f5c35 Merge pull request #1233 from masaohamanaka/master
RZ_A1H - Modify PWM driver for period improvement
2015-07-15 08:08:33 +01:00
akhilpanayam 2bf4265ca2 * removed Atmel Copyright License from all files. 2015-07-15 12:22:44 +05:30
akhilpanayam da743d2aa7 * corrections in External Interrupt GPIO Peripheral Pins. 2015-07-15 12:22:43 +05:30
akhilpanayam def122fb0d * removed unavailable pins for SAMR21 in pin names. 2015-07-15 12:22:42 +05:30
akhilpanayam d85f2020f8 * updated analogue in with pin map functions.
* code optimizations in adc.
* Peripheral pins arrays updated.
* removed unused variable in pinmap_function.c
2015-07-15 12:22:42 +05:30
vimalrajr c0da42a0a3 Bug fix in SPI APIs o avoid sending dummy character for first transfer by slave 2015-07-15 12:22:41 +05:30
vimalrajr 37c52f0d9c Bug fix in SPI API. 2015-07-15 12:22:41 +05:30
akhilpanayam ae108230e6 * added sanity checks for serial apis.
* removed unused variables.
2015-07-15 12:22:40 +05:30
vimalrajr 6392162d32 Adding implementation for RTC API rtc_free(). 2015-07-15 12:22:40 +05:30
akhilpanayam fd26bb7b39 * updated with review comments for gpio_irq_api.c 2015-07-15 12:22:39 +05:30
akhilpanayam 70e1dd0178 * updated with correction in pinmap_function_sercom function usage for serial. 2015-07-15 12:22:39 +05:30
akhilpanayam 7cda3e9352 * updated serial_api.c with code rearrangement. 2015-07-15 12:22:38 +05:30
akhilpanayam 0c9b55bf52 * added cmsis file for SAMD21.
* updated SAMD21J18A files to avoid build errors.
2015-07-15 12:22:38 +05:30
akhilpanayam 58e94998b3 * updated serial break implementation with configuring tx pin for gpio (break set) and reverting back for break clear. 2015-07-15 12:22:37 +05:30
akhilpanayam 57dc24edf8 * updated with integrated pin mux code for serial.
* serial asynch updated with review comments.
* removed sercom pin mux implementation in PeripheralPins.c
2015-07-15 12:22:36 +05:30
vimalrajr 17333d6c85 Refining implementation of SPI APIs 2015-07-15 12:22:36 +05:30
akhilpanayam 1c3039fc24 * Removed DAC file for SAMR21. Controller not having peripheral. 2015-07-15 12:22:35 +05:30
akhilpanayam 5832b756c1 * updated ld file for SAMD21.
* Port file base commit.
2015-07-15 12:22:35 +05:30
akhilpanayam 28484f7942 * Base commit for DAC. 2015-07-15 12:22:34 +05:30
akhilpanayam db7a269a89 * ADC implemented and tested. 2015-07-15 12:22:34 +05:30
akhilpanayam 1dae16c898 * made gpio interrupt enable pin to be in pull in init. 2015-07-15 12:22:33 +05:30
vimalrajr a430030639 Recent added files made compliant with KR coding style. 2015-07-15 12:22:32 +05:30
vimalrajr dc33d3ecaf Adding implementation for Sleep APIs. Not completely tested. 2015-07-15 12:22:32 +05:30
vimalrajr fb40f8ae97 Adding implementation of RTC APIs 2015-07-15 12:22:31 +05:30
akhilpanayam 2412fd2667 * updated with GPIO IRQ code. Tested and working. 2015-07-15 12:22:31 +05:30
akhilpanayam 6a23ca1da4 * GPIO irq files updated.
* updated with modification for KnR Standard.
2015-07-15 12:22:30 +05:30
akhilpanayam 503c970d98 * initial commit for gpio irq, 2015-07-15 12:22:30 +05:30
vimalrajr b1f456ee98 Adding pinmap functions and common mux pading logic for SERCOM 2015-07-15 12:22:29 +05:30
akhilpanayam 06b1fdfb2b * added base code for ADC. Not tested. 2015-07-15 12:22:29 +05:30
akhilpanayam 8658c77d26 * updated for making LED2, LED3, LED4 as PA19. Only one LED available in board. 2015-07-15 12:22:28 +05:30
akhilpanayam 8bd46960f3 * removed support for SAMD21J18A at this point. To be added later.
* removed unwanted headers in serial apis.
2015-07-15 12:22:28 +05:30
Martin Kojtal a4c1bdc788 Merge pull request #1238 from Armstart-com/master
add IBDAP-LPC11U35 platform
2015-07-14 09:38:50 +01:00
hjjeon0608 d5c1af8119 Merge remote-tracking branch 'remotes/origin/mbed_dev5' 2015-07-14 09:02:40 +09:00
hjjeon0608 28c307665f Deleted uncommented code.
Deleted checking interrupt status code.
2015-07-14 08:27:31 +09:00
tomoyuki yamanaka 9874e95e49 Fix bug of CONST declaration in PWM driver.
In PWM, modify CONST declaration of the table is not enough.
2015-07-13 18:04:13 +09:00
Martin Kojtal 3a12b5f998 Merge pull request #1239 from Wiznet/mbed_dev5
I2C PeripheralPins bug fix.
2015-07-13 09:42:37 +01:00
Martin Kojtal f9697047f0 Merge pull request #1234 from jpbrucker/master
Nordic: add const qualifier to acceptedSpeeds in serial API
2015-07-13 09:41:15 +01:00
Martin Kojtal a833d5cd17 Merge pull request #1230 from Wiznet/mbed_dev3
Change PinName
2015-07-13 09:39:54 +01:00
hjjeon0608 8cbddc520f I2C PeripheralPins bug fix.
I found wrong pin mux about I2C.
2015-07-13 16:55:00 +09:00
Yunfeng Liu 3a5b79bac7 add IBDAP-LPC11U35 platform 2015-07-11 18:53:01 -04:00
en129 d8f1daf525 Add P0_11 for GPIO
change P0_11 to use GPIO from TDI
2015-07-11 01:16:19 +09:00
Jean-Philippe Brucker a4d48801ba Nordic: add const qualifier to acceptedSpeeds in serial API
This is a small optimisation for ARM compiler toolchains: constant
arrays should be declared const explicitly, to let the compiler put them
into .rodata instead of .data. GCC automatically detects that the array
is read-only, and already puts it into flash.

This way, we free 136 bytes of RAM, which is nothing to sneeze at, given
that applications only get about 2048 bytes by default, on 16k targets.

Please note that you will need to disable data compression in armlink to
see the real difference, with the "--datacompressor off" switch, for
example.
2015-07-10 14:45:42 +01:00
Martin Kojtal 6cb7294c83 Merge pull request #1226 from star297/master
[KL25Z] add 32KHz crystal clock setup 3 + minor RTC api changes
2015-07-10 14:13:01 +01:00
tomoyuki yamanaka 59e6fbad5e Modify PWM driver for period improvement
In PWM, modify the range that can be taken of the period.
2015-07-10 13:32:35 +09:00
hjjeon0608 daf4eeff2c Change PinName
Some pin name were deleted and some pin name were added.
2015-07-09 10:53:06 +09:00
hjjeon0608 cf868024b2 Change ticker used by two PWM timer to used by one PWM timer and one dualtimer.
So I added dualtimer driver and header and I bug fix define in W7500x.h.
2015-07-09 09:23:43 +09:00
Paul Staron 5a4ba0e0a0 Tidy code formatting 2015-07-08 15:22:46 +01:00
Martin Kojtal 13790ec5ce Merge pull request #1221 from mazgch/master
update target C029 (pin, clock)
2015-07-08 14:45:27 +01:00
Martin Kojtal 7a2b57896e Merge pull request #1218 from Wiznet/master
Add rtc_api.c
2015-07-08 14:42:59 +01:00
Martin Kojtal 161ee189d8 Merge pull request #1206 from Josephc3/master
Add KL26 Target
2015-07-08 14:37:11 +01:00
Martin Kojtal a15892332f Merge pull request #1216 from mbedmicro/chris-styles-patch-1
Update mbed_overrides.c
2015-07-08 07:38:22 +01:00
Paul Staron e1cd282232 [KL25Z] add 32KHz crystal clock setup 3 + RTC 2015-07-07 20:24:06 +01:00
chris-styles 8b4872f08d Rename crc16.c to crc.c 2015-07-07 15:23:24 +01:00
chris-styles 671f4723ab Create crc.h 2015-07-07 15:22:33 +01:00
chris-styles 44992153d9 Create crc16.c 2015-07-07 15:22:03 +01:00
chris-styles ee35963b3d Update mbed_overrides.c
Added calls to "crc16" routine, as well as the required #include and #define
2015-07-07 15:20:59 +01:00
hjjeon0608 cb9d835b51 Correct spaces/tabs and indentation 2015-07-07 10:45:37 +09:00
hjjeon0608 482320fe01 Merge branch 'master' of https://github.com/mbedmicro/mbed 2015-07-07 10:32:47 +09:00
hjjeon0608 85efeff0cf Add NVIC_SetVector function 2015-07-07 10:31:46 +09:00
mazgch bd95d7189e update target C029 (pin, clock) 2015-07-06 14:59:22 +02:00
0xc0170 c052d893de Merge branch 'master' of https://github.com/dbestm/mbed into dbestm-master
Conflicts:
	libraries/rtos/rtx/TARGET_CORTEX_M/RTX_Conf_CM.c
2015-07-06 09:05:31 +01:00
Martin Kojtal 45004fb61e Merge pull request #1209 from bcostm/master
DISCO_F746NG - Fix several issues
2015-07-06 08:48:42 +01:00
PeterConheeney ed4462705e fixes to review comments 2015-07-02 14:30:55 +01:00
PeterConheeney f55bafa3b5 commit of mps2 code for pull request to main mbed repo 2015-07-01 16:18:41 +01:00
Martin Kojtal d5b4d2ab9c Merge pull request #1214 from kpurusho/master
Initial version of drivers for SAMR21
2015-07-01 09:42:03 +01:00
Martin Kojtal 2f385f32b2 Merge pull request #1210 from MultiTechSystems/dragonfly-update
MTS_DRAGONFLY_F411RE - add additional pin names for SPI and I2C…
2015-07-01 08:44:13 +01:00
Martin Kojtal 7766e75dd8 Merge pull request #1205 from sg-/gcc_asm_updates
GCC asm updates
2015-07-01 08:08:10 +01:00
hjjeon0608 995cfb479d Add rtc_api.c
rtc is implemented by timer in PWM.
2015-07-01 08:41:10 +09:00
Martin Kojtal 1c13bc80fe Merge pull request #1189 from Wiznet/master
Wiznet - Update and bug fix.
2015-06-30 09:35:17 +01:00
chris-styles 41ff2c8773 Update mbed_overrides.c 2015-06-30 08:46:17 +01:00