Hello,
ARM's advice on disabling cpuidle (powerdown to cores) after Linux boots works fine. However, I find that the debugger still hangs in cases where the kernel hasn't booted all the way, and I need to connect the debugger.
Can you provide advice on how to disable cpuidle properly at compile time on a Linux Kernel > 4.0?
https://community.arm.com/developer/tools-software/oss-platforms/w/docs/287/common-issues-using-ds-5-with-juno
Thank you
Hi 'mindchasers'Using the Arm DS or DS-5 Debugger, it is possible to debug the Linux kernel, from its entry point, through the pre-MMU stages, and then seamlessly through the MMU enable stage to post-MMU debug with full kernel awareness, all the way to the login prompt, and all with source-level symbols. To do this, see the blog at community.arm.com/.../debugging-the-armv8-a-linux-kernel-with-ds-5(this was written for DS-5, but most still applies to Arm DS).Of course, the debugging view can get interrupted when cores power-down. To disable cpuidle at compile time, you should be able to set CPU_IDLE=n in the menuconfig.Which Arm Debugger are you using, and to what target platform are you connecting? Are you connecting using a debug hardware such as DSTREAM?Can you describe the debugger "hang" that you see - are you sure it is related to cores being powered down? Maybe try connecting to just a single core that you know remains powered up (e.g. the primary core).Alternatively try connecting the debugger much earlier in the boot sequence, before the cores start powering-down.In particular, see the section in the blog "Debugging the Kernel : Pre-MMU Stage" and the use of the "set os physical-address" command.Hope this helps