First I follow the DS-5 start demo and can debug my code correctly on the ARM FVP -> VE_Coretex_A9x1.
Then I follow the link to enable NEON and it needs to set CPU target in the build, the axf file has been built correctly but the debugger stops to work. The CA9_FVP hangs after connected to board. It shows waitForTargetToStop.
waitForTargetToStop
Connected to stopped target ARM FVP (Installed with DS-5) - VE_Cortex_A9x1 Execution stopped at: S:0x00000000 loadfile "S:\code\wireless\math_neon\Debug\math_neon.axf" S:0x00000000 DCI 0xe7ff0010 ; ? Undefined Loaded section ER_RO: S:0x80000000 ~ S:0x80002C0B (size 0x2C0C) Loaded section ER_RW: S:0x80002C0C ~ S:0x80002C1F (size 0x14) Entry point S:0x80000000 cd "C:\Users\fengxu\Documents\DS-5 Workspace" Semihosting server socket created at port 8001 Semihosting enabled automatically due to semihosting symbol detected in image 'math_neon.axf' Working directory "C:\Users\fengxu\Documents\DS-5 Workspace" set debug-from main start Starting target with image S:\code\wireless\math_neon\Debug\math_neon.axf Running from entry point wait
arm - DS-5 eclipse debug stuck at waitForTargetToStop - Stack Overflow
Neon engine is disabled at reset, you need to enable it by yourself.
Enabling NEON requires 2 steps
1.Enable access to coprocessors 10 and 11 and allow Neon instructions
MRC p15, 0x0, r0, c1, c0, 2 ; Read CP15 CPACR
ORR r0, r0, #(0x0f << 20) ; Full access rights
MCR p15, 0x0, r0, c1, c0, 2 ; Write CP15 CPACR
ISB
2.Enable NEON and VFP
MOV r0, #0x40000000 ; Set bit 30
VMSR FPEXC, r0 ; Write r0 to Floating Point Exception Register
Thanks for your answer. However, as mentioned in the original post, the problem is not how to enable NEON support. That is explained in the ARM tutorial referenced in the original post. The project builds fine with NEON support. The problem is in loading the axf file onto the FVP debugger in Eclipse. That's where it hangs with the waitForTargetToStop message.
View all questions in Arm Development Studio forum