Commit Graph

6312 Commits (dda07f556fc455dbcb0c2ae11b6428ca30145f52)

Author SHA1 Message Date
Christopher Haster 62bb777c1f Added support for storing bytes directly in SocketAddress
Bytes are stored by default, however enough space is allocated in
a SocketAddress to generate the string representation if necessary.

Currently there is no support for shortened addresses
2016-05-13 11:40:54 -05:00
Christopher Haster 455f023949 Renamed NetworkInterface create/destroy methods to match Socket methods
- socket_create -> socket_open
- socket_destroy -> socket_close
2016-05-13 11:40:53 -05:00
Christopher Haster c33d246fa6 Move to single state-change interrupt
Pros
- Easier to implement
- More similar to SIGIO in BDS sockets

Cons
- Less information, but this information had a high risk of being
  faulty/spurious
2016-05-13 11:40:52 -05:00
Christopher Haster c3eec0322b Remove shutdown parameter from close call
Pros
- Simplifies interface
- Easier base implementation

Cons
- May need shutdown functionality, in this case shutdown
  can be added as another function in the future
2016-05-13 11:40:51 -05:00
Christopher Haster 71efccb1e8 Add open call as alternative to passing NetworkInterface at construction
Pros
- Allows memory to be statically allocated
- Avoids issues with Thread creation before entering main
- Matches existing APIs such as FunctionPointer and Ticker

Cons
- Does not enforce passing a NetworkInterface
2016-05-13 11:40:50 -05:00
Christopher Haster 106e459a64 Adopt mbed style doxygen comments
per @0xc0170
2016-05-13 11:40:49 -05:00
Christopher Haster f0f7972a64 Move to asynch lwip sockets based on armmbed/sal-stack-lwip
Move the backend of LWIPInterface from the LWIP socket API to the
asynch UDP/TCP APIs used in https://github.com/armmbed/sal-stack-lwip.
Provides asynchronous functionality for the LWIPInterface.
2016-05-13 11:40:48 -05:00
Simon Hughes 194da2ce3c Adding configuration-store and flash-abstraction components for configuration-store integration. 2016-05-13 15:59:46 +01:00
Anna Bridge cd4172a80b Merge branch 'master' of https://github.com/ARMmbed/mbed-os 2016-05-13 14:27:05 +01:00
Anna Bridge 878ce59fa3 Updated utest ticker scheduler to use the c++ Timeout class rather than
the C based function calls directly into ticker.
Added a software based backtrace functionality, plus utest instrumentation
using that functionality.
2016-05-13 14:09:55 +01:00
Bogdan Marinescu 451b8c3a22 Merge pull request #79 from geky/thread-lifetime
Add lifetime management to rtos::Thread
2016-05-12 18:16:42 +03:00
Niklas Hauser 8a37762866 Smaller Thread class with clearer error messages. 2016-05-10 16:07:39 +01:00
Sam Grove 9c38f2aa63 Merge pull request #85 from bridadan/build-tests-fix
Fixing build issues for tests
2016-05-10 09:31:29 -05:00
Brian Daniels 4ae7d54830 Fixing build issues for tests.
Build artifacts from previous builds were polluting the current build. Now
shared sources are built as a library, then tests are built into their own
folder.
2016-05-10 14:53:35 +01:00
Bogdan Marinescu 904ea446eb Merge pull request #84 from screamerbg/compile-response-files
Response files for includes, de-duplicate includes and more
2016-05-10 12:05:16 +03:00
Mihail Stoyanov 7e3b69ec13 Add dot to include response file name, which follows the naming convention with .link_totals.txt and .link_files.txt 2016-05-09 19:08:56 +01:00
Mihail Stoyanov d33f890fdd Minor code cleanup 2016-05-09 19:08:56 +01:00
Mihail Stoyanov 7e11174a00 Calculate md5 of all include paths in compile_sources() and remove calculation from <toolchaon>get_compile_options(), thus significantly reduce repetitive md5 calculations
Unify handling of the include response file in mbedToolchain::get_inc_file()
Sanitize obsolete no-longer needed methods
2016-05-09 19:08:56 +01:00
Mihail Stoyanov f01e1363d1 De-duplicate the include paths. Without this all compiles are passed include paths twice 2016-05-09 19:08:56 +01:00
Mihail Stoyanov 868942a148 Build system response files for all macros and includes. This also allows developers to check the response file after/during compile for the list of all macros and includes being used. 2016-05-09 19:08:56 +01:00
Mihail Stoyanov ecb9651873 Unified command-line handling of defines and includes with response files for all toolchains (ARM, GCC, IAR)
Capture system/OS error during command execution and report the command
Report command before executing it in default_cmd()
2016-05-09 19:08:56 +01:00
Mihail Stoyanov 2be0385f73 Response files for includes during assemble() and compile()
Moved unified compile to toolchains to enable specific toolchain support for response files
2016-05-09 19:08:55 +01:00
Sam Grove 27c6721d23 Merge pull request #69 from c1728p9/update_rtos_init_sequence
Update rtos init sequence
2016-05-05 13:53:15 -05:00
Sam Grove fc4f1e2da3 Merge pull request #71 from bridadan/test-build
Building tests and test specs
2016-05-05 13:51:11 -05:00
Sam Grove 7aefc06dda Merge pull request #78 from screamerbg/master
Use parallel build by default
2016-05-05 13:11:15 -05:00
Mihail Stoyanov fb03e5a2c1 Fixed parameter to match documentation (allow multiple build) 2016-05-05 19:09:58 +01:00
Brian Daniels 1d28050686 Adding test compiling and test spec generation to test.py 2016-05-05 15:37:37 +01:00
Brian Daniels 65fae781a1 Toolchain should create artifact directory for link step 2016-05-05 09:39:01 +01:00
Martin Kojtal 1ae994fb62 Merge pull request #76 from bridadan/circle-script-adapt-latest-mbed-cli
Updating CircleCI script to latest changes in mbed-cli
2016-05-04 15:55:04 -05:00
Brian Daniels b0aea20317 Adapting test script to mbed-cli commit 4568e889f4 2016-05-04 21:53:24 +01:00
Sam Grove e869cbc954 Merge pull request #66 from 0xc0170/critical_section
Critical section
2016-05-04 15:28:13 -05:00
Sam Grove 4c7142bd84 Merge pull request #73 from bridadan/fix-circle-script
Fixing reference to "neo" in CI script
2016-05-04 08:55:44 -05:00
Bogdan Marinescu 9d33fe89d4 Merge pull request #70 from screamerbg/build-static-libs
Support for compiling static libraries via build.py
2016-05-04 15:39:56 +03:00
Mihail Stoyanov 34ec8297a4 Copy .o and .ar files for when building static library (needed for uVisor for example) 2016-05-04 12:06:57 +01:00
Brian Daniels e88f5ae884 Changing references to 'neo' to 'mbed' inside CircleCI script 2016-05-04 10:10:10 +01:00
Bogdan Marinescu f712259d6b Merge pull request #74 from 0xc0170/fix_utest_slash
utest - fix backslash in the utest paths
2016-05-03 19:31:09 +03:00
Bogdan Marinescu 962ae83b66 Merge pull request #27 from 0xc0170/utest
utest and unity
2016-05-03 13:28:50 +03:00
Mihail Stoyanov ba31ed0550 Support for response files for ARMCC, GCC and IAR archiving (static library)
Support for compiling static libraries via build.py
Support for build.py --no-archive flag which compiles static library as multiple objects
Change default number of jobs when compiling to 0 (auto)
Fix for relative path issue when compiling, which flattened the output whenever absolute path is passed to --build (make.py and build.py)
Fix for temporary files when pre-processing of assembler files with ARMCC
Fix issue with response files where one of the elements is empty string
2016-04-30 00:32:26 +01:00
Martin Kojtal e01bcdc95a ARMCC ulib - initalize RTOS before the standard library C++ init
Initialize the RTOS before initializing the standard library.  This
allows C++ constructors to be called in a well defined thread context.
2016-04-29 15:45:06 -05:00
Russ Butler 02ba7ea857 IAR - Initialize RTOS before standard library
Initialize the RTOS before initializing the standard library.  This
allows C++ constructors to be called in a well defined thread context.
2016-04-29 15:45:05 -05:00
Russ Butler fa8dc642ba GCC - Initialize RTOS before standard library
Initialize the RTOS before initializing the standard library.  This
allows C++ constructors to be called in a well defined thread context.
2016-04-29 15:45:04 -05:00
Russ Butler 307e2a897e ARMCC - Initialize RTOS before standard library
Initialize the RTOS before initializing the standard library.  This
allows C++ constructors to be called in a well defined thread context.
2016-04-29 15:45:03 -05:00
Russ Butler fcea510163 Remove dead CodeSourcery init code
The CodeSourcery compiler is not longer supported.  This patch removes
the CodeSourcery init code in RTX_CM_lib.h.
2016-04-29 15:45:01 -05:00
Anna Bridge 3a59a07dcc Add a c based re-entrant critical section API
This includes a generic critical section implementation, and nrf51
platforms specific implementation.

nrf51- this implementation will use sd_nvic_critical_region_enter if the
softdevice is enabled, otherwise it will use __disable_irq().
This implementation also allow a user to start a critical section while
interrupts are already disabled.
2016-04-29 09:40:52 -05:00
Martin Kojtal 2c3ad57a32 utest - fix us ticker header file name 2016-04-28 15:58:08 -05:00
Martin Kojtal 8c9ebde801 utest - add mbed shim layer 2016-04-28 15:24:27 -05:00
Martin Kojtal d19f51fbb9 Shim - mbed SDK uses us ticker by default
mbed SDK defines ``__MBED__`` macro (unique, not valid for yotta),
this should turn on us ticker by default, as that one is available
for mbed SDK targets.
2016-04-28 15:21:39 -05:00
Niklas Hauser 53b9fe2820 Include us_ticker.h in scheduler implementation. 2016-04-28 15:21:35 -05:00
Niklas Hauser 62dec8f6e0 Don't enable us_ticker scheduler if minar unavail. 2016-04-28 15:21:31 -05:00
Niklas Hauser 12a46551a5 Use functions instead of macros for porting. 2016-04-28 15:21:27 -05:00