Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Meet hard fault after Client Update with ARMC6 #11

Closed
ccli8 opened this issue May 10, 2018 · 5 comments
Closed

Meet hard fault after Client Update with ARMC6 #11

ccli8 opened this issue May 10, 2018 · 5 comments

Comments

@ccli8
Copy link

ccli8 commented May 10, 2018

Environment


mbed-cloud-client-example
1.3.1.1

mbed-os
mbed-os-5.8.3

Target
K64F

ARMC6
6.10

GCC_ARM
GNU Tools for Arm Embedded Processors 7-2017-q4-major

ARM
5.24

Description


Built with ARMC6 toolchain, I meet hard fault after Client Update:

[BOOT] mbed Bootloader
[BOOT] ARM: 74CE36607E38CD63ECDD72CE2F1262D58BF55448
[BOOT] OEM: 0000000000000000000000000000000000000000
[BOOT] Layout: 0 7188
[BOOT] Active firmware integrity check:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] SHA256: 8E8D9E9E9D979FB31F51C61C2FDD7F2B6C1FA963ABA66527402B4F326C4BBAFD
[BOOT] Version: 1525928708
[BOOT] Slot 0 is empty
[BOOT] Active firmware up-to-date
[BOOT] Application's start address: 0xA400
[BOOT] Application's jump address: 0xAB0D
[BOOT] Application's stack address: 0x20030000
[BOOT] Forwarding to application...

Application ready. Build at: May 10 2018 12:12:13
Mbed OS version 5.8.3
mcc_platform_storage_init() - BlockDevice init OK.
Start simple mbed Cloud Client
Start developer flow
Developer credentials already exists
[EasyConnect] IPv4 mode
[EasyConnect] Using WiFi (ESP8266) 
[EasyConnect] Connecting to WiFi HUAWEI-F2C9
[EasyConnect] Connected to Network successfully
[EasyConnect] MAC address a0:20:a6:09:97:6c
[EasyConnect] IP address 192.168.8.100
Network initialized, connecting...

Client registered

Endpoint Name: 016348758e390000000000010010019f
Device Id: 016348758e390000000000010010019f
Firmware download requested
Authorization granted
Downloading: [++++++++++++++++++++++++++++++++++++++++++++++++++] 100 %
Download completed
Firmware install requested
Authorization granted
[BOOT] mbed Bootloader
[BOOT] ARM: 74CE36607E38CD63ECDD72CE2F1262D58BF55448
[BOOT] OEM: 0000000000000000000000000000000000000000
[BOOT] Layout: 0 7188
[BOOT] Active firmware integrity check:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] SHA256: 8E8D9E9E9D979FB31F51C61C2FDD7F2B6C1FA963ABA66527402B4F326C4BBAFD
[BOOT] Version: 1525928708
[BOOT] Slot 0 firmware integrity check:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] SHA256: 8E8D9E9E9D979FB31F51C61C2FDD7F2B6C1FA963ABA66527402B4F326C4BBAFD
[BOOT] Version: 1525929596
[BOOT] Update active firmware using slot 0:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] Verify new active firmware:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] New active firmware is valid
[BOOT] Application's start address: 0xA400
[BOOT] Application's jump address: 0xAB0D
[BOOT] Application's stack address: 0x20030000
[BOOT] Forwarding to application...

Application ready. Build at: May 10 2018 12:12:13
Mbed OS version 5.8.3
mcc_platform_storage_init() - BlockDevice init OK.
Start simple mbed Cloud Client
Start developer flow
Developer credentials already exists
[EasyConnect] IPv4 mode
[EasyConnect] Using WiFi (ESP8266) 
[EasyConnect] Connecting to WiFi HUAWEI-F2C9
[EasyConnect] Connected to Network successfully
[EasyConnect] MAC address a0:20:a6:09:97:6c
[EasyConnect] IP address 192.168.8.100
Network initialized, connecting...

++ MbedOS Fault Handler ++

FaultType: HardFault

Context:
R0   : 00000515
R1   : 02888000
R2   : 00000000
R3   : 00000000
R4   : 00000000
R5   : 00000509
R6   : 00000509
R7   : FFFFFFFF
R8   : 00000509
R9   : 00000000
R10  : 20002368
R11  : 00000000
R12  : 80000000
SP   : 20001FC0
LR   : 0000BB23
PC   : 0000D6E6
xPSR : 01000000
PSP  : 20001F58
MSP  : 2002FFD8
CPUID: 410FC241
HFSR : 40000000
MMFSR: 00000000
BFSR : 00000004
UFSR : 00000000
DFSR : 00000000
AFSR : 00000000
SHCSR: 00000000
Mode : Thread
Priv : Privileged
Stack: PSP

Thread Info:
Current:
State: 00000002 EntryFn: 00047E1D Stack Size: 00001200 Mem: 20001418 SP: 200020B0
Next:
State: 00000002 EntryFn: 00047E1D Stack Size: 00001200 Mem: 20001418 SP: 200020B0
Wait Threads:
State: 00000083 EntryFn: 000439D3 Stack Size: 00000300 Mem: 20005EE0 SP: 20006170
Delay Threads:
Idle Thread:
State: 00000001 EntryFn: 00042F39 Stack Size: 00000200 Mem: 20005CE0 SP: 20005E90

-- MbedOS Fault Handler --

But if built with GCC_ARM (or ARM) toolchain, it is OK:

[BOOT] mbed Bootloader
[BOOT] ARM: 74CE36607E38CD63ECDD72CE2F1262D58BF55448
[BOOT] OEM: 0000000000000000000000000000000000000000
[BOOT] Layout: 0 7188
[BOOT] Active firmware integrity check:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] SHA256: 7047A6EFD00277CD77C024A0EC73740485F7E64103E3853CDA5965F7CFA4E532
[BOOT] Version: 1525932770
[BOOT] Slot 0 is empty
[BOOT] Active firmware up-to-date
[BOOT] Application's start address: 0xA400
[BOOT] Application's jump address: 0xAA5D
[BOOT] Application's stack address: 0x20030000
[BOOT] Forwarding to application...

Application ready. Build at: May 10 2018 14:04:25
Mbed OS version 5.8.3
mcc_platform_storage_init() - BlockDevice init OK.
Start simple mbed Cloud Client
Start developer flow
[EasyConnect] IPv4 mode
[EasyConnect] Using WiFi (ESP8266) 
[EasyConnect] Connecting to WiFi HUAWEI-F2C9
[EasyConnect] Connected to Network successfully
[EasyConnect] MAC address a0:20:a6:09:97:6c
[EasyConnect] IP address 192.168.8.100
Network initialized, connecting...

Client registered

Endpoint Name: 016348af44de00000000000100100150
Device Id: 016348af44de00000000000100100150
Firmware download requested
Authorization granted
Downloading: [++++++++++++++++++++++++++++++++++++++++++++++++++] 100 %
Download completed
Firmware install requested
Authorization granted
[BOOT] mbed Bootloader
[BOOT] ARM: 74CE36607E38CD63ECDD72CE2F1262D58BF55448
[BOOT] OEM: 0000000000000000000000000000000000000000
[BOOT] Layout: 0 7188
[BOOT] Active firmware integrity check:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] SHA256: 7047A6EFD00277CD77C024A0EC73740485F7E64103E3853CDA5965F7CFA4E532
[BOOT] Version: 1525932770
[BOOT] Slot 0 firmware integrity check:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] SHA256: 7047A6EFD00277CD77C024A0EC73740485F7E64103E3853CDA5965F7CFA4E532
[BOOT] Version: 1525932891
[BOOT] Update active firmware using slot 0:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] Verify new active firmware:
[BOOT] [++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++]
[BOOT] New active firmware is valid
[BOOT] Application's start address: 0xA400
[BOOT] Application's jump address: 0xAA5D
[BOOT] Application's stack address: 0x20030000
[BOOT] Forwarding to application...

Application ready. Build at: May 10 2018 14:04:25
Mbed OS version 5.8.3
mcc_platform_storage_init() - BlockDevice init OK.
Start simple mbed Cloud Client
Start developer flow
Developer credentials already exists
[EasyConnect] IPv4 mode
[EasyConnect] Using WiFi (ESP8266) 
[EasyConnect] Connecting to WiFi HUAWEI-F2C9
[EasyConnect] Connected to Network successfully
[EasyConnect] MAC address a0:20:a6:09:97:6c
[EasyConnect] IP address 192.168.8.100
Network initialized, connecting...

Client registered

Endpoint Name: 016348af44de00000000000100100150
Device Id: 016348af44de00000000000100100150

On both K64F and NUMAKER_PFM_M487 targets, the issue can re-produce.

@ciarmcom
Copy link

ARM Internal Ref: IOTCLT-2713

@teetak01
Copy link
Contributor

teetak01 commented May 11, 2018

Hi @ccli8 thank you for reporting. We will check this. Note that Mbed OS 5.8 does not yet promise support for ARMC6. So this might be something that will not be resolved before the official support for OS is released.

https://os.mbed.com/docs/v5.8/tools/index.html

@JanneKiiskila
Copy link

@sg- - for your attention as well.

@yogpan01
Copy link

Until mbed-os officially supports ARMC6 , client cannot promise any support from its side either. We are closing this issue for now.

@sg-
Copy link

sg- commented May 18, 2018

Until mbed-os officially supports ARMC6...

Mbed OS 5.9 will support Arm compiler 6, just not as the default compiler. We should be looking into what the problem is. @kjbracey-arm could you have a look?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants