Commit Graph

5932 Commits (f68cdcb695ca393902a571682a40a6750c182dce)

Author SHA1 Message Date
Russ Butler 48fd7d7480 Compatibility changes
Make changes to improve compatibility:
-Include toolchain.h inside mbed.h
-define EXTERN
2016-05-27 10:34:19 -05:00
Jimmy Brisson e690ec0fc5 moved event_callback_t for compatibility with many drivers 2016-05-27 10:28:46 -05:00
Christopher Haster fbbda73faa Update Callback to fix fault in serial interrupts
per @c1728p9

Update the Callback class to handle a NULL thunk by returning 0
rather than trying to call the thunk.  This fixes a crash that occurs
on some targets when the TX uart handler is not attached.

Background:
The K64F HAL uart implementation calls the TX interrupt handler
every time a uart interrupt occurs while the TX register is empty.
It does not check to see if the TX interrupt has been enabled.
This means that the TX interrupt can and typically does get
run on RX events.  This causes a crash with the newer callback
code which did not (prior to this patch) support a NULL thunk.
2016-05-27 10:28:46 -05:00
Christopher Haster a7f4262858 Adopt Callback class in hal 2016-05-27 10:28:46 -05:00
Christopher Haster 2e112f535a Add backward compatiblity for FunctionPointer class using Callback
effectively:
typedef Callback<R(A)> FunctionPointerArg1<R,A>
typedef Callback<R()> FunctionPointerArg1<R,void>
typedef Callback<R()> FunctionPointer
typedef Callback<R()> event_callback_t
2016-05-27 10:28:45 -05:00
Christopher Haster 15db3951df Add Callback, an improved FunctionPointer class
- Adopt C++11 style template arguments, requires rename to Callback
- Add constructor for C style callback functions
- Add constructor for Callbacks
- Add static function for passing to C style callbacks
2016-05-27 10:28:45 -05:00
Sam Grove cd9f9331dc Updates for CI (#1760)
* Dont exclude tests from magical lists

* update default toolchain locations for windows pointing to latest supported versions

* Fixing build loop in build_release.py

* Fixing incorrect target name in release script, preventing traceback in this case

* Breaking up the uploading of build/test results.
It defaults to 1000 'projectRuns' per POST call, though this can be
modified via the '-l' parameter when invoking 'add-project-runs'.

* remove default path to GCC. Setting takes priority to PATH so this breaks linux and Mac

* revert is_supported chages in favor of alternative command line option
2016-05-27 13:10:04 +01:00
Martin Kojtal ffa9d17bab Merge pull request #1751 from mbedmicro/json_targets
Moved target definitions to JSON format
2016-05-27 11:52:57 +01:00
geky 57bc433986 Fixed NULL usage on non-pointer member in thread
per @theotherjimmy
2016-05-26 16:24:32 -05:00
0xc0170 985255dbb5 assert - use fprintf (if serial=1) and mbed_die 2016-05-26 15:36:32 +01:00
0xc0170 d898c11e42 api - doxygen improvements, unused parameters fixes
This patch is taken from mbed-drivers master.
2016-05-26 15:07:57 +01:00
Martin Kojtal 0203b96b5f Merge pull request #1780 from jeromecoutant/dev_gitignore
Update .gitignore for build directory
2016-05-26 15:04:33 +01:00
Martin Kojtal a59785888d Merge pull request #1790 from 0xc0170/fix_travis
Travis - remove install sh script
2016-05-26 15:02:37 +01:00
0xc0170 9328e4a660 Travis - remove install sh script
travis.yaml file - add before install, print versions of tools we use
2016-05-26 10:32:48 +01:00
Martin Kojtal db49c1edeb Merge pull request #1789 from mbedmicro/release
Release v121
2016-05-26 09:53:56 +01:00
Martin Kojtal 745ebbf455 Merge pull request #1787 from 0xc0170/fix_1786
Synch - fix lwip-eth path
2016-05-26 08:46:01 +01:00
0xc0170 627fe55c21 Synch - fix lwip-eth path
Fixes #1786 issue
2016-05-26 08:32:24 +01:00
Christopher Haster 1ab7d73805 Added Thread::start and Thread::join for managing lifetime of threads
- Allows threads to started separately from when they are declared,
  avoiding the need to dynamically allocate threads at runtime.
- Allows multiple threads to join without forceful termination. Allowing
  threads to synchronize on cleanup.
2016-05-25 17:23:18 -05:00
Jerome COUTANT efe8457036 Update .gitignore for build directory 2016-05-25 15:27:50 +02:00
0xc0170 ea72444c96 mbed lib revision - 121 2016-05-25 09:57:29 +01:00
0xc0170 f7b629664d HAL - nordic Lib folder back
It was removed with hal/rtos rearrangement.
2016-05-25 09:57:26 +01:00
0xc0170 b32f7a9aaf Merge branch 'TomoYamanaka-master_branch2' 2016-05-24 13:27:32 +01:00
0xc0170 935111ff6c Merge branch 'master_branch2' of https://github.com/TomoYamanaka/mbed into TomoYamanaka-master_branch2 2016-05-24 11:30:26 +01:00
Martin Kojtal 24136afd3f Merge pull request #1763 from BartSX/timer-fxxx-#816
Fix timer #816 issue for STM32F0 and STM32F1
2016-05-24 11:26:43 +01:00
0xc0170 39fa25d77e Merge branch 'ksitko-master' 2016-05-23 15:48:12 +01:00
Martin Kojtal 045d99bbaa Merge pull request #1764 from BartSX/can-devel-f0
[STM32F0xx] Move CAN API to new directory structure
2016-05-23 15:40:52 +01:00
Bartosz Szczepanski aa2ecad0b2 [STM32F0xx] Move CAN API to new directory structure
We need to remove *can_api.c* file accordingly to new directory structure.
Without that we can't compile any CAN mBed test.

Change-Id: I3d4f798ad75ec1b4c4a1d7ed877e71b7db6bf60f
2016-05-23 16:30:25 +02:00
Bogdan Marinescu b53c7eb128 Fixed description on 'default_toolchain' in the documentation 2016-05-23 17:30:20 +03:00
0xc0170 62eda4dd6d Merge branch 'master' of https://github.com/ksitko/mbed into ksitko-master 2016-05-23 15:22:23 +01:00
0xc0170 b395dd5956 Merge branch 'toyowata-master' 2016-05-23 15:06:45 +01:00
0xc0170 9c525e2f71 Merge branch 'master' of https://github.com/toyowata/mbed into toyowata-master 2016-05-23 15:06:09 +01:00
Bartosz Szczepanski 01ff0b9ab7 [NUCLEO_F030R8] 16-bit timer register update
This path fixes issue #816.

Current value of TIM_MST->CNT is read in interrupt context only.
This avoids master timer overflow without SlaveCounter update.

Change-Id: I8e2ec02ce7539a4c044c7e3dfe6bedc9fcdf7736
2016-05-23 16:02:25 +02:00
Bartosz Szczepanski 82d82d0b2a [NUCLEO_F070RB] 16-bit timer register update
This path fixes issue #816.

Current value of TIM_MST->CNT is read in interrupt context only.
This avoids master timer overflow without SlaveCounter update.

Change-Id: Iaaf7b9eb33aa8d8992e9354ca5e21bf01ec2413d
2016-05-23 16:02:25 +02:00
Rafal Kula e938780788 [NUCLEO_F103RB] 16-bit timer register update
This path fixes issue #816.

Current value of TIM_MST->CNT is read in interrupt context only.
This avoids master timer overflow without SlaveCounter update.

Change-Id: Ie7a9bfce76990f85caa84264450d053604af33e5
2016-05-23 16:02:25 +02:00
Rafal Kula 07b841b08f [STM32Fxxx] Fix issue #816
Both STM32F0xx and STM32F1xx are using a 16-bit timer as a internal ticker
but the mBed ticker needs a 32-bit timer implementation, so the upper part
of that 32-bit timer is being calculated in software.

Software bug has been fixed where continous HIGH/LOW voltage levels
could be observerd for 65ms due to 16-bit timer overflow.

Now current value of TIM_MST->CNT is stored in cnt_val and is
updated in interrupt context only. This avoids master timer
overflow without SlaveCounter update.

This fix is only for platforms which already implements a 16-bit timer:
F103RB, F070RB, F030R8

Change-Id: I205c70ce155b373c6593ead93ade9ec38993f7f9
2016-05-23 16:02:25 +02:00
0xc0170 f74fc12313 Merge branch 'bcostm-fix_f4_serial' 2016-05-23 14:09:29 +01:00
0xc0170 ee6f510ade Merge branch 'fix_f4_serial' of https://github.com/bcostm/mbed into bcostm-fix_f4_serial 2016-05-23 14:08:19 +01:00
0xc0170 6523d648bf Merge branch 'BartSX-timer-l0-#816' 2016-05-23 14:03:42 +01:00
0xc0170 2b44bfbcc6 Merge branch 'timer-l0-#816' of https://github.com/BartSX/mbed into BartSX-timer-l0-#816 2016-05-23 13:59:40 +01:00
0xc0170 57c85c034b Merge branch 'adustm-master' 2016-05-23 11:55:15 +01:00
0xc0170 369841a6cb Merge branch 'master' of https://github.com/adustm/mbed into adustm-master
Conflicts:
	workspace_tools/tests.py
2016-05-23 11:10:03 +01:00
0xc0170 821c492eb8 Merge branch 'neilt6-master' 2016-05-23 10:47:30 +01:00
0xc0170 327bd41632 Merge branch 'master' of https://github.com/neilt6/mbed into neilt6-master 2016-05-23 10:41:32 +01:00
0xc0170 275100e969 Merge branch 'BartSX-can-devel-f0' 2016-05-23 10:37:39 +01:00
0xc0170 c70aedc044 Merge branch 'can-devel-f0' of https://github.com/BartSX/mbed into BartSX-can-devel-f0 2016-05-23 10:37:22 +01:00
Martin Kojtal 99fb83ae21 Merge pull request #1730 from 0xc0170/dev_rtos_init
RTX - init sequence (C++ array init)
2016-05-23 09:58:08 +01:00
0xc0170 daf5c9ee86 RTX - ARM7 init sequence update 2016-05-23 09:50:24 +01:00
0xc0170 f3e11eb36e semihost - fix inline __semihost for IAR (add static)
This was causing errors at my machine (for programs like MBED_10, RTOS_1):

Error[Li005]: no definition for "__semihost" [referenced from
          semihost_api.o(mbed.a)]
[ERROR] Error[Li005]: no definition for "__semihost" [referenced from
          semihost_api.o(mbed.a)]
2016-05-23 09:50:20 +01:00
0xc0170 607c9d119b RTX - ARMCC pre_main - pop fix 2016-05-23 09:50:16 +01:00
0xc0170 8420e13246 RTX - pre_main for GCC C function 2016-05-23 09:50:11 +01:00