Commit Graph

11195 Commits (35999be01802742f0c4cf302c3890da7a9fbc33d)

Author SHA1 Message Date
Yuguo Zou 0d84a8d0d0 move network Interface API out 2017-06-03 20:14:49 +01:00
Archcady 173315ddf3 remove unused code 2017-06-03 20:14:49 +01:00
Yuguo Zou c72257cbf8 update other file headers 2017-06-03 20:14:48 +01:00
Yuguo Zou 3395ebc520 update lib 2017-06-03 20:14:48 +01:00
Yuguo Zou 49baa975cd py coding style 2017-06-03 20:14:46 +01:00
Yuguo Zou 5e47ad075d Fix headers issue in TARGET_AMEBA\sdk\common folder 2017-06-03 20:14:46 +01:00
Yuguo Zou 4d52f985eb change proprietary headers (APACHE2.0)
correct proprietary headers for some of our codes
2017-06-03 20:14:46 +01:00
Yuguo Zou 9e9878f377 improve coding style
consistent with other tools
2017-06-03 20:14:45 +01:00
Archcady c20809492d Rename rtl8195a_rom.so to rtl8195a_rom.o 2017-06-03 20:14:45 +01:00
Archcady 04ede46486 Add rtl8195a_rom.so 2017-06-03 20:14:45 +01:00
Archcady 3d59643061 Add lwipopts_conf.h 2017-06-03 20:14:45 +01:00
Yuguo Zou 53e837bce2 add support for REALTEK_RTL8195AM 2017-06-03 20:14:45 +01:00
Archcady bbbecd7090 Update targets.json 2017-06-03 20:14:43 +01:00
Archcady bc948ca672 Create mbed_rtx.h 2017-06-03 20:14:43 +01:00
Christopher Haster 0fc5ce2b5e LocalFileSystem: Moved away from deprecated open functions
The old open/opendir functions did not provide a route for errors and
relied on implementations manually setting errno. Updated to return
errors directly.
2017-06-03 13:18:02 -05:00
Christopher Haster eed1cec5d8 FileSystem: Provided default implementations for all non-file operations 2017-06-03 13:18:01 -05:00
Christopher Haster 5d6fc713fb FileSystem: Reintegrated FileSystemLike interface
Required for other representations of FileSystems, ie LocalFileSystem

Introduces FileSystemHandle for the same behaviour as FileHandle and
DirHandle.

Requires the following to hook into file/dir lookup:
```
int open(FileHandle **file, const char *filename, int flags)
int open(DirHandle **dir, const char *path)
```

This hook is provided by the FileSystem class, so requires no changes
from implementations.
2017-06-03 13:17:37 -05:00
Sam Grove ebeb776de9 Merge pull request #3972 from geky/fat-big-blocks
FAT: Add support for block sizes of 512-4096 bytes
2017-06-03 10:16:43 -05:00
Sam Grove 027843a64b Merge pull request #4389 from c1728p9/assert_mutex_not_in_isr
Assert that mutexes and prints are not use in interrupt or critical context
2017-06-03 10:16:20 -05:00
Martin Kojtal 533e6f0feb Merge pull request #4431 from kjbracey-arm/mbed_lwip_api_compat
Restore mbed OS 5.4 mbed_lwip_ function prototypes
2017-06-03 08:28:52 +02:00
Christopher Haster c0aa841ffd FAT: Added support for block sizes of 512-4096 bytes
This is necessary for support of block devices with >512 byte
blocks, such as most SPI flash parts.

- Enabled support of up to 4096 byte blocks
- Added support for heap-backed buffers using _FS_HEAPBUF
  - Necessary to avoid stack overflows
  - Avoids over-aggresive allocations of _MAX_SS
- Enabled _FS_TINY to further reduce memory footprint
  - Haven't found a downside for this yet except for possible
    thread contention
2017-06-03 07:10:48 +01:00
Russ Butler 737c5a9cea Trap on errors when building with debug profile
Define MBED_TRAP_ERRORS_ENABLED to 1 for the debug profile so errors
are obvious when building as debug.
2017-06-02 23:50:40 -05:00
Russ Butler ee2be3f90c Ignore deprecated storage test
Add a .mbedignore to the storage_abstraction test since this is
deprecated.
2017-06-02 23:50:39 -05:00
Russ Butler cabc1e0911 Fix Thread class synchronization
Prevent osTheadTerminate from being called on an already terminated
thread. Also make sure the thread termination process is properly
synchronized.
2017-06-02 23:50:38 -05:00
Russ Butler 96bd943ea2 RTX5: Enable priority inheritance and robust mode
Add the attribute flash to enable priority inheritance and robust mode.
The robust flag allows mutexes held by terminated threads to be
properly released.
2017-06-02 23:50:36 -05:00
Russ Butler a84142fc4e Prevent recursive call to error()
Only allow error to be called once. This prevents a loop where error()
calls exit() which in turn triggers another call to exit().
2017-06-02 23:50:35 -05:00
Russ Butler 770ad616dd Trap on RTX errors if enabled
If MBED_TRAP_ERRORS_ENABLED is defined to 1 then trap on RTX errors.
This includes using mutexes in ISR context.
2017-06-02 23:50:33 -05:00
Russ Butler e48e599a9d Fix RTOS function prototypes by adding extern "C"
Wrap the file mbed_rtos_storage.h in extern "C". This allows the
functions inside rtx_lib.h to have correct definitions when included
in a C++ file.

This is required for the RTX5 error trapping.
2017-06-02 23:50:32 -05:00
Russ Butler b44e6f8a16 Assert that file IO is not used in ISRs
Trigger an assert if a file is read from or written to from an
interrupt handler or critical section. This includes using printf
from an interrupt handler or critical section. This makes failures
due to use in incorrect context deterministic and easier to locate.

This feature is enabled by defining MBED_TRAP_ERRORS_ENABLED to 1 or
by using the debug profile.
2017-06-02 23:50:31 -05:00
Russ Butler 5ab3de0bfa Add function to check for ISR context
Add the function core_util_in_isr() so code can determine if it is
running in the context of an ISR.
2017-06-02 23:50:29 -05:00
Sam Grove 5f138810a9 Merge pull request #4294 from ARMmbed/feature_cmsis5
Update CMSIS-Core and RTX to version 5
2017-06-02 23:44:32 -05:00
Mahadevan Mahesh 30ef311933 Issue#4250: Fix USB driver for Kinetis devices
Move memory allocation to be done at a different location. Currently allocated
in a function that is called from the interrupt handler.

Signed-off-by: Mahadevan Mahesh <Mahesh.Mahadevan@nxp.com>
2017-06-02 16:36:23 -05:00
Laurent MEUNIER a1f7a36461 STM32 HAL I2C fix RXNE case
As reported in issue #4214, there are seen issues seen first on
NUCLEO_F103RB in case of successive Reads of 1 byte at a time.

This issue is due to a wrong state management in the end of read sequence.
Also F1 i2c driver was not fully aligned to others, which is updated here.
2017-06-02 17:28:48 +02:00
Laurent MEUNIER 5af0c59588 STM32 F1: Only set GPIO pin speed in case of Output mode
There were still side effects, in particular on I2C master slave test,
when setting by default the Pin Speed for F1 family. So for F1 family,
let's do it only in case of Output which is the only case where this
actually applies on this family.
2017-06-02 17:24:01 +02:00
Jimmy Brisson 2886f0b407 Merge pull request #4387 from theotherjimmy/override-target-attrs
Allow target attribute overrides in app config and pick toolchain with default_toolchain
2017-06-02 10:05:57 -05:00
Kevin Bracey 284843fdb3 Restore mbed OS 5.4 mbed_lwip_ function prototypes
External EMAC drivers are currently directly attaching to lwip_stack.c
via mbed_lwip_bringup et al. Restore the original prototypes to avoid
compatibility breakage.
2017-06-02 14:30:25 +03:00
Kevin Bracey 42cd1e1fac Make lwip_stack.c include its header
Fix some type mismatches that this revealed.
2017-06-02 14:29:34 +03:00
Jimmy Brisson 9277c6e564 Move profile processing into build_api 2017-06-02 12:05:01 +01:00
Jimmy Brisson caa50cb8a8 Allow overriding of non-cumulative target attributes 2017-06-02 12:03:53 +01:00
Sam Grove fa82a783a8 Merge pull request #4427 from 0xc0170/dev_remove_ticker
tests: remove ticker test
2017-06-02 04:22:31 -05:00
Martin Kojtal 3e0cdb966c tests: remove ticker test
This is temporary, as this test does not fit to some 16kB RAM devices. This requires few more steps: some small devices are using big async HAL structures, RTX changes increased the RAM footprint, plus this test seems to be too big. With all these, it won't fit in RAM regions for some devices.
2017-06-02 09:26:39 +01:00
Sam Grove 6b0db0d8c7 Merge pull request #4411 from hasnainvirk/add_to_namespace_mbed
Adding APIs to namespace mbed
2017-06-01 23:46:49 -05:00
Sam Grove 4c4fb822dd Merge pull request #4415 from theotherjimmy/disable-2-builds
Disallow building of mbed OS 2 + RTOS, and remove mbed OS 5 support for Cortext-A
2017-06-01 23:43:40 -05:00
Sam Grove fa0cd205a2 Merge pull request #4094 from pan-/fix_hal_ticker
[HAL] Add support for 64 bit us timestamp
2017-06-01 23:25:26 -05:00
Jimmy Brisson cee0cbd900 Remove Cortex-A mbed OS 5 support 2017-06-01 13:16:09 -05:00
Jimmy Brisson d8caee9077 Disallow building of mbed OS 2 + rtos 2017-06-01 13:16:03 -05:00
Bradley Scott 260378e774 STM32: Fix 32-bit us ticker interrupt scheduling
For STM32 targets using a 32-bit timer for the microsecond ticker, the
driver did not properly handle timestamps that are in the past.  It
would just blindly set the compare register to the requested timestamp,
resulting in the interrupt being serviced up to 4295 seconds late
(i.e. after the 32-bit timer counts all the way around to hit the
timestamp again).

This problem can easily be reproduced by creating a Timeout object
then calling the timeout's attach_us() member function to attach a
callback with a timeout of 0 us.  The callback will not get called for
over 2147 seconds, and possibly up to 4295 seconds late if no other
microsecond ticker events are getting scheduled in the meantime.

Now, after the compare register has been set, the timestamp is checked
against the current time to see if the timestamp is in the past, and
if so, the compare event is manually set.

NOTE: By checking if the timestamp is in the past after configuring the
capture register, we ensure proper handling in the case where the timer
updates past the timestamp while setting the capture register.
2017-06-01 12:52:03 -04:00
Vincent Coubard 045b026ad4 NCS36510 RTC driver: Fix driver.
* Initialization clear interrupt status
* Remove state in management of interrupt
* Handle timestamp in the past
* Handle current seconds, even if out of the relative timestamp.
* Simplify interrupt handling logic.
2017-06-01 16:33:49 +01:00
Vincent Coubard c6433b018a lp ticker test: Fix timestamp update during deepsleep test. 2017-06-01 16:31:48 +01:00
arostm ab87e7a65c NUCLEO_F412ZG: Remove hal_conf file
The board have to use th hal_conf file from F4/device directory
2017-06-01 16:52:22 +02:00