Commit Graph

72 Commits (29c7b34dfaedef907dc9a12655466cc1525dcf19)

Author SHA1 Message Date
Sam Grove b2cd20c5c5 Merge pull request #4122 from neilt6/patch-1
Fixed compiler warning in mbed_retarget.cpp
2017-04-10 16:38:08 -05:00
Neil Thiessen 6b671e5903 Fixed compiler warning in mbed_retarget.cpp
Fixed compiler warning about openmode_to_posix() being declared but never referenced.
2017-04-05 20:58:23 -06:00
Adam Green 408cff4f8d Modify semihost_disabledebug() to support more interface FW revs
The current implementation of semihost_disabledebug() hangs when used
with mbed interface firwmare revision 21164, the first version which
added support for this semihost call. I encountered this hang when
running a Release build on my mbed-LPC1768 board as the RTOS attempted
to disable the debugger before the idle thread put the CPU to sleep.

The 21164 interface firmware expects that R1 points to a valid argument
block but the current implementation passes in NULL. The fix was to
pass in a dummy block which is ignored by the newer 141212 revision of
the firmware and allows the 21164 version to proceeed without halting
the CPU until a manual reset.

Before this fix semihost_disabledebug() did work with the latest
mbed interface firmware revision 141212 but I rarely use this revision
of the interface firmware due to the instability issues I have
encountered in the past with its CDC and LocalFileSystem functionality.

With this proposed fix, the code now works with both the 21164 and
141212 revisions of the mbed interface firmware on the mbed-LPC1768.
2017-03-31 13:33:55 -07:00
Anna Bridge 039ef42822 Merge pull request #3867 from geky/fs-revert-filehandle
Filesystem: Revert deprecation of FileHandle
2017-03-23 15:45:01 +00:00
Andres AG 2d0135632d Fix C declaration of dir functions and types
This patch fixes the declaration of the DIR type and related functions
so that they can be called from C code. This is necessary when enabling
functionality that uses the filesystem in mbed TLS.
2017-03-16 16:13:44 +00:00
Christopher Haster 18bab4e024 Filesystem: Fixed typo in param naming 2017-03-14 11:04:22 -05:00
Christopher Haster 90fc0b9c47 FileSystem: Reverted deprecation of DirHandle
Should follow same path as FileHandle, although this is less used
and there is currently no route to introduce a hook for a customized
DirHandle in retarget.
2017-03-14 11:02:34 -05:00
Christopher Haster 61c9683644 Filesystem: Moved retarget related file interfaces into platform 2017-03-14 11:02:34 -05:00
Christopher Haster 77243ef46b Filesystem: Revert deprecation of FileHandle
As identified by @hasnainvirk, @kjbracey-arm, the FileHandle and
FileBase serve two separate functions and their integration is
limiting for certain use cases.

FileLike is actually the redundant class here, but the multiple
inheritance it provides is used as a hack by the retargeting code
to get at the FileHandle implementation bound to the FileBase name.

It may make more sense for the FileBase to inherit from FileHandle,
(with perhaps a different name), but rather than explore the
possibility, this will just restore the previous hierarchy.
2017-03-14 11:02:34 -05:00
Christopher Haster 000894d477 Fixed size_t issue for mbed 2 builds 2017-03-10 11:04:05 -06:00
Christopher Haster 87c0b82230 Updated includes of renamed platform header files 2017-03-01 16:45:55 -06:00
Christopher Haster 274460bef5 Filesystem: Adopted dynamic allocation of files over static allocation 2017-02-24 12:03:14 -06:00
Christopher Haster c4649afba5 Filesystem: Last minute changes due to feedback on directory iteration
- Changed to use dirent structure type
- Fixed memory leak in closedir
2017-02-24 12:03:14 -06:00
Christopher Haster 7ca4eabf77 Filesystem: Fixed integration with mbed 2 builds 2017-02-24 12:03:14 -06:00
Christopher Haster b9122c73f9 Filesystem: Integrate error handling between c++/posix layers 2017-02-24 12:03:09 -06:00
Christopher Haster eea5c9f08a Filesystem: Integration with retarget code 2017-02-24 11:55:37 -06:00
Christopher Haster ee3e920ed1 Filesystem: Moved toolchain-specific types into retarget.h 2017-02-24 11:42:32 -06:00
Simon Hughes 840c77793b STORAGE: Pull request 3762 review feedback changes.
- Fixing code formatting errors with astyle tool.
- Replaced use of TOOLCHAIN_xxx macros with compiler emitted macros.
- Added const to BlockDevice::get_xxx_size() member functions.
- Added documentation for FAT filesystem thread support.
- Added documentation for fat_filesystem_set_errno().
- Added documentation clarifying the reasons for errno/stat symbol definitions in retarget.h.
- Removed FAT filesystem from mbed 2 testing.
- Fixed FATMisc.h Copyright (c) 2016 year to 2017 as its a new file.
- Removed #ifndef NDEBUG from HeapBlockDevice.cpp.
- Removed unnecessary todo comment in retarget.cpp.
2017-02-23 16:39:42 +00:00
Simon Hughes 2b96c74f84 STORAGE: Pull Request 3704 requested minor changes including:
- renaming FATFileSystemSetErrno() fat_file_system_set_errno.
- changing FATFileSystem::format() to be mount fs internally in function, rather than expecting fs to be mounted.
- requested const char *filename change.
2017-02-23 16:39:21 +00:00
Simon Hughes fdadb8cc66 STORAGE: moved toolchain_support.h into platform/retarget.h 2017-02-23 16:39:18 +00:00
Simon Hughes 4f5e94c746 STORAGE: test case fixes to support ARMCC and IAR toolchains.
Conflicts:
	features/TESTS/filesystem/fopen/fopen.cpp
2017-02-23 16:38:15 +00:00
Simon D Hughes aefb03ccd6 ARMCC temporary fixes for undefined errno symbols. 2017-02-23 16:36:16 +00:00
Simon Hughes 0c87537f10 Added errno codes to retarget, mkdir() and ftell() tests. 2017-02-23 16:36:03 +00:00
Simon Hughes c8fecb6c88 STORAGE: tests added for errno, ferror() and clearerr(). 2017-02-23 16:30:55 +00:00
Christopher Haster b1a685125b Filesystem: Removed dependency on unistd.h
Previously used to determine stdin/stdout/stderr filenos, however
these are set by us
2017-02-23 16:30:47 +00:00
Christopher Haster 9299a88e8f Filesystem: Add support for stat
Provided through FileSystemLike::stat
2017-02-23 16:30:42 +00:00
Christopher Haster aff49d8d1e Renamed files in platform to match source names
critical.h     -> mbed_critical.h
sleep.h        -> mbed_sleep.h
toolchain.h    -> mbed_toolchain.h
rtc_time.h     -> mbed_rtc_time.h
semihost_api.h -> mbed_semihost_api.h
wait_api.h     -> mbed_wait_api.h
2017-02-22 18:17:54 -06:00
Martin Kojtal 4470d048a6 Merge pull request #3748 from c1728p9/application_transfer_support
Add a function to transfer control to another app
2017-02-21 17:11:42 +00:00
Sam Grove cfd517a3a0 Merge pull request #3783 from geky/cb-deprecate-attach
Callback: Deprecate attach member function in favor of simple assignment
2017-02-21 10:55:44 -06:00
Russ Butler 36cbae6420 Add a function to transfer control to another app
Add the function mbed_start_application() which allows a bootloader to
transfer control to an application.
2017-02-18 19:48:14 -06:00
Christopher Haster ed6fec2811 Callback: Deprecated attach member function in favor of simple assignment
The attach function is used several other places to indicate
registration for interrupts. This differs significantly to its use in
the Callback class. Additionally, the attach function is unnecessary
given that simple assignment works just as well.
2017-02-15 15:07:58 -06:00
YarivCol 2c6eba35c2 fix in mbed_error_vfprintf
MBED_CONF_PLATFORM_STDIO_CONVERT_NEWLINES was not used in mbed_error_vfprintf causing wrong behavior when the option was selected (no new line is some terminals like putty).
2017-02-13 00:54:51 +02:00
Russ Butler 605614a600 Add MBED_SECTION attribute
Allow the section that code is placed in to be explicitly specified
with the attribute MBED_SECTION.
2017-02-01 09:20:29 -06:00
Bartek Szatkowski 8a4a3caf65 sleep: make sleep/deepsleep static 2017-01-19 11:53:53 +00:00
Bartek Szatkowski 1e73a66c33 sleep: remove warnings for default build 2017-01-19 11:53:24 +00:00
Bartek Szatkowski 6a045a49a9 Platform: Add sleep/deepsleep user facing functions
Add sleep/deepsleep functions to platform layer which are replacing HAL
functions with the same name, rename existing symbols in HAL layer
to hal_sleep/hal_deepsleep. This way sleep functions
are always available, even if target doesn't implement them, which makes
the code using sleep clearer. It also enables us to make decision on in
which builds (debug/release) the sleep will be enabled.
2017-01-19 09:39:29 +00:00
Martin Kojtal ab2e869a24 Merge pull request #3157 from SiliconLabs/SiliconLabs-EFR32
[Silicon Labs] Adding support for EFR32MG1 wireless SoC
2016-12-02 15:46:35 +01:00
micromint 22c0e3560b Support building mbed_critical.c with C++ compiler 2016-11-21 12:59:45 -04:00
Martin Kojtal 8eaeb86780 Merge pull request #3244 from geky/callback-type-relaxation
callback - Relax type-deduction in callback class
2016-11-16 17:42:58 +00:00
Martin Kojtal b36944fafc Merge pull request #3141 from geky/stats-stack
stats - Add cleaner stats API for stack usage
2016-11-16 17:41:37 +00:00
micromint 809b20738e Change MBED_DEPRECATED def order to support Keil 4 2016-11-10 09:59:28 -06:00
Christopher Haster 3544228b47 callback - Adopted relaxed type-deduction for bound functions
Adopting relaxed type-deduction in bound functions better aligns with
the same overloads for member functions, and provides an alternative
solution for the void pointer cast issue, which removes a large amount
of cruft.
2016-11-09 13:45:25 -06:00
Christopher Haster 3ba3bb50f9 callback - Fixed type-deduction when inheritance is involved
The type deduction for the callback constructors was to strict and
prevented implicit casts for the context pointer stored internally.

As noted by @pan-, relaxing the contraints on the templated
parameters allows C++ to correctly infer implicit casts such as
conversions between child and parent classes when inheritance is
involved.

As an additional benefit, this may help the user experience by
defering invalid type errors to when the types are expanded,
limiting the number of error messages presented to users.
2016-11-09 12:42:42 -06:00
Christopher Haster e90fff3a60 stats - Added doxygen documentation to stats functions 2016-11-07 19:15:44 -06:00
Christopher Haster 9b630b3e0d stats - Added stack stats api for individual threads
Added the following
- size_t mbed_stats_stack_get_each(mbed_stats_stack_t *, size_t)
2016-11-07 19:15:44 -06:00
Christopher Haster 14aa57f81c stats - Added stats for reserved heap space for consistency 2016-11-07 19:15:44 -06:00
Christopher Haster b6e8f44c0d stats - Added stack stats api
Matched heap stats api
- void mbed_stats_heap_get(mbed_stats_heap_t *)
- void mbed_stats_stack_get(mbed_stats_stack_t *)
2016-11-07 19:15:38 -06:00
Sam Grove 30e63a27b7 Merge pull request #3202 from geky/fix-rtos-wait-math
Fix arithmetic error in rtos-based wait
2016-11-07 10:30:33 -06:00
Steven Cooreman f344c0d204 [EFR32] Set default USB serial baudrate
Silicon Labs targets use a default, unchangeable baud rate of 115200 on the stdio serial-USB bridge.
2016-11-07 11:54:45 +01:00
Christopher Haster 4d6afcddfa Fixed arithmetic error in rtos-based wait
The value of `start` is taken from before that wait call, so the value
of `us` shouldn't be changed
2016-11-04 11:42:53 -05:00