Skip to content

Commit ed58ff0

Browse files
author
Deepika
committed
Disabling DSP and FPU for Cortex-M33
Change shared by @gabor Kertesz Hard-fault on Musca was because of enabled floating point instructions, disabling DSP and FPU.
1 parent 37a5646 commit ed58ff0

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

tools/toolchains/arm.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,9 @@ def __init__(self, target, *args, **kwargs):
394394
self.flags['ld'].append("--cpu=%s" % target.core.lower()[:-1])
395395
self.SHEBANG += " -mcpu=%s" % target.core.lower()[:-1]
396396
elif target.core.startswith("Cortex-M33"):
397-
self.flags['ld'].append("--cpu=8-M.Main")
397+
self.flags['common'].append("-mcpu=cortex-m33+nodsp")
398+
self.flags['common'].append("-mfpu=none")
399+
self.flags['ld'].append("--cpu=Cortex-M33.no_dsp.no_fp")
398400
elif not target.core.startswith("Cortex-M23"):
399401
self.flags['common'].append("-mcpu=%s" % target.core.lower())
400402
self.flags['ld'].append("--cpu=%s" % target.core.lower())
@@ -411,9 +413,6 @@ def __init__(self, target, *args, **kwargs):
411413
self.flags['common'].append("-mfloat-abi=softfp")
412414
elif target.core.startswith("Cortex-M23"):
413415
self.flags['common'].append("-march=armv8-m.base")
414-
elif target.core.startswith("Cortex-M33"):
415-
self.flags['c'].append("-march=armv8-m.main")
416-
self.flags['cxx'].append("-march=armv8-m.main")
417416

418417
if target.core == "Cortex-M23" or target.core == "Cortex-M33":
419418
self.flags['cxx'].append("-mcmse")
@@ -439,7 +438,7 @@ def __init__(self, target, *args, **kwargs):
439438
"Cortex-M33-NS": "Cortex-M33" }.get(target.core, target.core)
440439

441440
if target.core.startswith("Cortex-M33"):
442-
self.flags['asm'].append("--cpu=8-M.Main")
441+
self.flags['asm'].append("--cpu=Cortex-M33.no_dsp.no_fp")
443442
else :
444443
self.flags['asm'].append("--cpu=%s" % asm_cpu)
445444

0 commit comments

Comments
 (0)