Mbed-os: Some Mbed OS 6 targets don't compile with Baremetal profile

Created on 11 Jun 2020  路  13Comments  路  Source: ARMmbed/mbed-os

Description of defect

Mbed OS 6 has enabled the bare-metal profile for a few targets, but not all of them (details in targets.json)

Developers are trying to use the mbed-os-example-blinky-baremetal application with some Mbed OS 6 targets that are not yet supported - see the issue raised in forums: https://forums.mbed.com/t/some-issues-with-the-mbedos6-and-mbed-tools

Eventually, all targets should support the bare-metal profile (not a requirement at the moment).
Until then, this issue with list of targets should help to keep track of the status.

Target(s) affected by this defect ?

Targets marked with :x: fail to compile.

Updated table for Mbed OS master 2f87d59c7f2e(29th Oct 2020)

| Target | ARM | GCC_ARM | Issue/comment |
| ------- | ------- | ------ | ----- |
| ADV_WISE_1510 | :heavy_check_mark: | :heavy_check_mark: | |
| ADV_WISE_1570 | :heavy_check_mark: | :heavy_check_mark: | |
| ARCH_MAX | :x: | :heavy_check_mark: | |
| ARCH_PRO | :heavy_check_mark: | :heavy_check_mark: | |
| ARDUINO_NANO33BLE | :heavy_check_mark: | :heavy_check_mark: | |
| ARM_CM3DS_MPS2 | :x: | :heavy_check_mark: | |
| ARM_MPS2_M0 | :x: | :heavy_check_mark: | |
| ARM_MPS2_M0P | :x: | :heavy_check_mark: | |
| ARM_MPS2_M3 | :x: | :heavy_check_mark: | |
| ARM_MPS2_M4 | :x: | :heavy_check_mark: | |
| ARM_MPS2_M7 | :x: | :heavy_check_mark: | |
| ARM_MUSCA_B1 | :x: | :x: | |
| ARM_MUSCA_B1_NS | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13110 https://github.com/ARMmbed/mbed-os/pull/13165 |
| ARM_MUSCA_S1 | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13850 |
| ARM_MUSCA_S1_NS | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13850 |
| B_L4S5I_IOT01A | :heavy_check_mark: | :heavy_check_mark: | |
| CY8CKIT_062_BLE | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CY8CKIT_062_WIFI_BT | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CY8CKIT_062S2_43012 | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CY8CKIT064B0S2_4343W | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CY8CPROTO_062_4343W | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CY8CPROTO_062S3_4343W | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CYSBSYSKIT_01 | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CYTFM_064B0S2_4343W | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CYW9P62S1_43012EVB_01 | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| CYW9P62S1_43438EVB_01 | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13108 |
| DISCO_F413ZH | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_F429ZI | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_F469NI | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_F746NG | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_F769NI | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_H747I | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_H747I_CM4 | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_H747I_CM7 | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_L072CZ_LRWAN1 | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_L475VG_IOT01A | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_L476VG | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_L496AG | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_L4R9I | :heavy_check_mark: | :heavy_check_mark: | |
| DISCO_L562QE | :heavy_check_mark: | :heavy_check_mark: | |
| EFM32GG_STK3700 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13137 |
| EFM32GG11_STK3701 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13137 |
| EP_AGORA | :heavy_check_mark: | :heavy_check_mark: | tests fail https://github.com/ARMmbed/mbed-os/issues/13185 |
| EP_ATLAS | :heavy_check_mark: | :heavy_check_mark: | |
| EV_COG_AD3029LZ | :heavy_check_mark: | :heavy_check_mark: | |
| EV_COG_AD4050LZ | :heavy_check_mark: | :heavy_check_mark: | |
| FF_LPC546XX | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13140 |
| FF1705_L151CC | :x: | :heavy_check_mark: | |
| FVP_MPS2_M0 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13138 |
| FVP_MPS2_M0P | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13138 |
| FVP_MPS2_M3 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13138 |
| FVP_MPS2_M4 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13138 |
| FVP_MPS2_M7 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13138 |
| GD32_F307VG | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13136 |
| GD32_F450ZI | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13136 |
| GR_LYCHEE | :heavy_check_mark: | :heavy_check_mark: | |
| GR_MANGO | :heavy_check_mark: | :heavy_check_mark: | |
| HEXIWEAR | :heavy_check_mark: | :heavy_check_mark: | |
| K22F | :heavy_check_mark: | :heavy_check_mark: | |
| K64F | :heavy_check_mark: | :heavy_check_mark: | |
| K66F | :heavy_check_mark: | :heavy_check_mark: | |
| K82F | :heavy_check_mark: | :heavy_check_mark: | tests fail https://github.com/ARMmbed/mbed-os/issues/13186 |
| KL25Z | :heavy_check_mark: | :heavy_check_mark: | |
| KL43Z | :heavy_check_mark: | :heavy_check_mark: | |
| KL46Z | :heavy_check_mark: | :heavy_check_mark: | |
| KW41Z | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13109 , https://github.com/ARMmbed/mbed-os/pull/13119 |
| LPC1114 | :heavy_check_mark: | :heavy_check_mark: | |
| LPC1768 | :heavy_check_mark: | :heavy_check_mark: | |
| LPC54114 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13140 |
| LPC546XX | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13140 |
| MAX32600MBED | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13139 |
| MAX32620FTHR | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13139 |
| MAX32625MBED | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13139 |
| MAX32625PICO | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13139 |
| MAX32630FTHR | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13139 |
| MIMXRT1050_EVK | :heavy_check_mark: | :heavy_check_mark: | |
| MOTE_L152RC | :x: | :heavy_check_mark: | |
| MTS_DRAGONFLY_F411RE | :x: | :heavy_check_mark: | |
| MTS_DRAGONFLY_F413RH | :heavy_check_mark: | :heavy_check_mark: | |
| MTS_DRAGONFLY_L471QG | :x: | :heavy_check_mark: | |
| MTS_MDOT_F411RE | :x: | :heavy_check_mark: | |
| NRF52_DK | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13857 |
| NRF52840_DK | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F070RB | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F072RB | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F091RC | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F103RB | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F207ZG | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F303K8 | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F303RE | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F303ZE | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F401RE | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F411RE | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F412ZG | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F413ZH | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F429ZI | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F439ZI | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F446RE | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F446ZE | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F746ZG | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F756ZG | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_F767ZI | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_G031K8 | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_G071RB | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_G474RE | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_H743ZI2 | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_H7A3ZI_Q | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L073RZ | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L152RE | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L432KC | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L433RC_P | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L452RE_P | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L476RG | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L486RG | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L496ZG | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L496ZG_P | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L4R5ZI | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L4R5ZI_P | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_L552ZE_Q | :heavy_check_mark: | :heavy_check_mark: | |
| NUCLEO_WB55RG | :heavy_check_mark: | :heavy_check_mark: | |
| NUMAKER_IOT_M252 | :heavy_check_mark: | :heavy_check_mark: | |
| NUMAKER_IOT_M263A | :heavy_check_mark: | :heavy_check_mark: | |
| NUMAKER_IOT_M487 | :heavy_check_mark: | :heavy_check_mark: | |
| NUMAKER_PFM_M453 | :heavy_check_mark: | :heavy_check_mark: | |
| NUMAKER_PFM_M487 | :heavy_check_mark: | :heavy_check_mark: | |
| NUMAKER_PFM_NANO130 | :heavy_check_mark: | :heavy_check_mark: | |
| NUMAKER_PFM_NUC472 | :heavy_check_mark: | :heavy_check_mark: | |
| RHOMBIO_L476DMW1K | :heavy_check_mark: | :heavy_check_mark: | |
| RZ_A1H | :heavy_check_mark: | :heavy_check_mark: | |
| S1SBP6A | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13851 |
| S5JS100 | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13111 |
| SDP_K1 | :heavy_check_mark: | :heavy_check_mark: | |
| SDT32620B | :x: | :heavy_check_mark: | |
| SDT32625B | :x: | :heavy_check_mark: | |
| SDT52832B | :x: | :heavy_check_mark: | |
| SDT64B | :heavy_check_mark: | :heavy_check_mark: | |
| SFE_ARTEMIS | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13852 |
| SFE_ARTEMIS_ATP | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13852 |
| SFE_ARTEMIS_DK | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13852 |
| SFE_ARTEMIS_MODULE | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13852 |
| SFE_ARTEMIS_NANO | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13852 |
| SFE_ARTEMIS_THING_PLUS | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13852 |
| SFE_EDGE | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13852 |
| SFE_EDGE2 | :x: | :x: | https://github.com/ARMmbed/mbed-os/issues/13852 |
| TB_SENSE_12 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13109 , https://github.com/ARMmbed/mbed-os/pull/13119 |
| TMPM46B | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13141 |
| TMPM4G9 | :x: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13141 |
| UHURU_RAVEN | :heavy_check_mark: | :heavy_check_mark: | tests fail https://github.com/ARMmbed/mbed-os/issues/13187 |
| WIO_3G | :heavy_check_mark: | :heavy_check_mark: | |
| WIO_BG96 | :heavy_check_mark: | :heavy_check_mark: | |
| WIO_EMW3166 | :heavy_check_mark: | :heavy_check_mark: | https://github.com/ARMmbed/mbed-os/issues/13112 |
| XDOT_L151CC | :x: | :heavy_check_mark: | |

Toolchain(s) (name and version) displaying this defect ?

Arm Compile 6.13 and GCC 9 2019-q4

What version of Mbed-os are you using (tag or sha) ?

6.0.0 - 165be79

What version(s) of tools are you using. List all that apply (E.g. mbed-cli)

Mbed CLI 1.10.0

How is this defect reproduced ?

mbed import https://github.com/ARMmbed/mbed-os-example-blinky-baremetal
cd mbed-os-example-blinky-baremetal
mbed compile -t <toolchain> -m <target>
IOTOSM-2199 OPEN mirrored bug

All 13 comments

@MarceloSalazar thank you for raising this issue.Please take a look at the following comments:

Could you add some more detail to the description? A good description should be at least 25 words.

NOTE: If there are fields which are not applicable then please just add 'n/a' or 'None'.This indicates to us that at least all the fields have been considered.
Please update the issue header with the missing information, the issue will not be mirroredto our internal defect tracking system or investigated until this has been fully resolved.

@MarceloSalazar Fix for KW41Z was merged. Can you confirm if this target is now passing (and update the table)?

~I'm in the process of updating the table~ (edit: DONE)
I've just tested KW41W with both ARM and GCC and fails (sha ffeb926a673c)

[Fatal Error] NanostackRfPhyKw41z.cpp@17,10: common_functions.h: No such file or directory
[ERROR] ./mbed-os/features/nanostack/targets/TARGET_Freescale/TARGET_KW41Z/NanostackRfPhyKw41z.cpp:17:10: fatal error: common_functions.h: No such file or directory
   17 | #include "common_functions.h"

@LDong-Arm see previous comment from Marcelo

The cause is that #13115 (an update from NXP) wasn't rebased onto my fix for bare-metal support (#13119). Now we have duplicated copies of Nanostack drivers for TARGET_KW41Z...
I'll create a PR to fix it.

Update: PR created: #13230 (merged)

I need this fixed for CY8CKIT_062_WIFI_BT

From what I gather wifi requires threading but if we can get baremetal at least working for the target that would be a start.

@bentcooke

I need this fixed for CY8CKIT_062_WIFI_BT

From what I gather wifi requires threading but if we can get baremetal at least working for the target that would be a start.

@bentcooke

Created a quick fix https://github.com/ARMmbed/mbed-os/pull/13425, feel free to have a try.

@MarceloSalazar Could you update the table?

I'm in the process of updating the table - please bear with me.
I've re-run the compile tests and see many targets failing, but issues are related to storage.
Can you have a look?

$ mbed compile -t GCC_ARM -m DISCO_F413ZH 
[mbed] Working path "/Users/.../Mbed Programs/mbed-os-example-blinky-baremetal" (program)
Building project mbed-os-example-blinky-baremetal (DISCO_F413ZH, GCC_ARM)
Scan: mbed-os-example-blinky-baremetal
Compile [ 98.3%]: qspi_api.c
[Fatal Error] qspi_api.c@28,10: mbed-trace/mbed_trace.h: No such file or directory

@MarceloSalazar Please see the discussion here: https://github.com/ARMmbed/mbed-os/pull/13617#discussion_r488801025

The solution we agreed is to enable mbed-trace by default. But this requires ipv6 printing to be disabled (as it requires mbed-client-libservice), and this would break existing applications (network and Pelion ones mainly). Not sure how to handle it...

Thank you for raising this detailed GitHub issue. I am now notifying our internal issue triagers.
Internal Jira reference: https://jira.arm.com/browse/IOTOSM-2199

@MarceloSalazar mbed-trace is now enabled by default in bare metal, see #13649
Can you update the table again?

Table updated and new issues raised

Was this page helpful?
0 / 5 - 0 ratings

Related issues

pilotak picture pilotak  路  3Comments

1domen1 picture 1domen1  路  3Comments

ashok-rao picture ashok-rao  路  4Comments

MarceloSalazar picture MarceloSalazar  路  3Comments

ghost picture ghost  路  4Comments