Go to file
Jaeden Amero a29a5e165a cortex-m55: Workaround armasm options bug
We use armclang with `-masm=auto` to auto-select which assembler to use
based on the syntax of the file. Cortex-M55 isn't supported by armasm,
but we don't yet have GCC-syntax asm files for ARM compiler
(1dd090bd1c/CMSIS/RTOS2/RTX/Source/ARM/irq_armv8mml.s).

    $ armclang --target=arm-arm-none-eabi -mcpu=cortex-m55 -mfpu=none -masm=auto -c cmsis/CMSIS_5/CMSIS/RTOS2/RTX/Source/TOOLCHAIN_ARM/TARGET_M33/irq_armv8mml.S
    armclang: error: armasm does not support CPU 'cortex-m55'

In the mean time, we can build C and C++ files using the
`-mcpu=cortex-m55` option, and for armasm, cancel out that choice of CPU
with a known-supported CPU type, Cortex-R7, and provide the legacy
assembler-specific option `-Wa,armasm,--cpu=cortex-m55`.

After these changes, this works:

    $ armclang --target=arm-arm-none-eabi -mcpu=cortex-m55 -mcpu=cortex-r7 -Wa,--cpu=cortex-m55 -mfpu=none -masm=auto -c cmsis/CMSIS_5/CMSIS/RTOS2/RTX/Source/TOOLCHAIN_ARM/TARGET_M33/irq_armv8mml.S
2021-05-05 16:58:24 +01:00
.github Update .github/issue_template.md 2021-03-15 15:35:52 +00:00
TESTS examples: Deprecate mbed-os-example-bootloader 2021-04-14 11:57:14 +01:00
TEST_APPS Replace USBTX/RX everywhere else 2021-03-24 10:11:30 +00:00
UNITTESTS Lora: Add LoRaWANTimer::clear in stubs 2021-03-12 09:48:50 +00:00
cmsis TF-M targets: Clean up RTOS configuration 2021-04-06 18:16:46 +01:00
connectivity Merge pull request #14463 from mikaleppanen/start_wisun_if 2021-04-15 17:30:22 +02:00
docs Remove design documents 2021-03-18 17:01:54 +00:00
drivers Add v8.1-M architecture awareness 2021-04-23 15:01:16 +01:00
events Update UserAllocatedEvent.h 2021-03-17 09:55:13 -05:00
features Replace USBTX/RX 2021-03-24 15:00:53 +00:00
hal Add v8.1-M architecture awareness 2021-04-23 15:01:16 +01:00
platform Add v8.1-M architecture awareness 2021-04-23 15:01:16 +01:00
rtos CMake: rename greentea test macro 2021-02-02 07:43:40 -08:00
storage TDBStore Whitebox tests: fix memory check 2021-04-14 17:19:38 +01:00
targets Merge pull request #14465 from harmut01/baremetal_maxim 2021-04-15 17:31:12 +02:00
tools cortex-m55: Workaround armasm options bug 2021-05-05 16:58:24 +01:00
.astylerc AStyle: fix indentation for longer lines 2018-05-24 14:15:52 +01:00
.codecheckignore Update PinNames markers 2021-03-18 17:01:54 +00:00
.coveragerc Exclude libraries and tests from coverage numbers 2017-09-25 11:51:31 -05:00
.editorconfig Add .editorconfig file 2021-02-25 16:26:34 +01:00
.gitattributes Normalize line endings for IM880B startup files. 2019-07-15 14:56:22 +03:00
.gitignore Remove paths to fetched TF-M repos from .gitignore 2021-03-18 18:22:30 +00:00
.mergify.yml Mergify: remove stale label when PR is merged 2021-02-22 15:54:02 +00:00
.pylintrc Add pylint configuration file 2016-08-16 11:48:45 -05:00
.travis.yml Update PinNames markers 2021-03-18 17:01:54 +00:00
CMakeLists.txt CMake: set CMAKE_MODULE_PATH in the Mbed OS CMakelists.txt 2021-04-14 13:09:28 +01:00
CONTRIBUTING.md Fix links to documentation on https://os.mbed.com 2019-01-21 14:56:40 -08:00
DOXYGEN_FRONTPAGE.md Updating with new links and correct branding 2020-08-12 10:49:05 +01:00
Jenkinsfile Updated file comment 2018-08-20 12:31:40 +03:00
LICENSE-apache-2.0.txt license: rename to apache 2.0 txt file 2019-02-13 11:28:01 +00:00
LICENSE.md Update list of licenses in source and python modules 2021-02-08 15:13:43 +00:00
README.md Fix 'LICENSE' file 404 link error 2019-05-02 10:20:26 -05:00
doxyfile_options BLE: update doxygen exclusion pattern 2020-08-25 11:34:00 +01:00
doxygen_options.json BLE: update doxygen exclusion pattern 2020-08-25 11:34:00 +01:00
logo.png Readme updates for style and branding 2017-12-04 14:59:16 -06:00
mbed.h Expose the public Stream API 2021-01-28 16:34:15 +00:00
requirements.txt Update minimum version of intelhex to 2.3.0 2021-01-27 18:01:49 +01:00

README.md

Mbed OS

Build status release Build status master Tools coverage status

Arm Mbed OS is an open source embedded operating system designed specifically for the "things" in the Internet of Things. It includes all the features you need to develop a connected product based on an Arm Cortex-M microcontroller, including security, connectivity, an RTOS and drivers for sensors and I/O devices.

Mbed OS provides a platform that includes:

  • Security foundations.
  • Cloud management services.
  • Drivers for sensors, I/O devices and connectivity.

Release notes

The release notes detail the current release. You can also find information about previous versions.

License and contributions

The software is provided under the Apache-2.0 license. Contributions to this project are accepted under the same license. Please see contributing.md for more information.

This project contains code from other projects. The original license text is included in those source files. They must comply with our license guide.

Folders containing files under different permissive license than Apache 2.0 are listed in the LICENSE file.

Getting started for developers

We have a developer website for asking questions, engaging with others, finding information on boards and components, using an online IDE and compiler, reading the documentation and learning about what's new and what's coming next in Mbed OS.

Getting started for contributors

We also have a contributing and publishing guide that covers licensing, contributor agreements and style guidelines.

Documentation

For more information about Mbed OS, please see our published documentation. It includes Doxygen for our APIs, step-by-step tutorials, porting information and background reference materials about our architecture and tools.

To contribute to this documentation, please see the mbed-os-5-docs repository.