This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OMAP4460 hw breakpoints/watchpoints disabled? (DBGEN is LOW)

Other Parts Discussed in Thread: 4460

Hi,

I am trying to use the hw breakpoints/watchpoints provided in the OMAP4460 chip but they appear to be disabled in hardware: the DBGEN is set to LOW. 
1) Is there a way to set this to HIGH?
2) if I decide to get a Pandaboard ES with OMAP 4460, how can I know if debug features are enabled unlike in my current chip?

Kernel is compiled with CONFIG_HAVE_HW_BREAKPOINT but after boot the DSCR register does not have monitor mode enabled which is required for debug register use.

Hardware: OMAP4460 CPU inside a Galaxy Nexus phone.
Software: Android 4.1.1 and Linux Kernel 3.0.31.
DSCR reads 0x01030002 before/after enable_monitor_mode showing ARM_DSCR_MDBGEN (bit 15) is not set.
DIDR reads 0x3513702a ( 6 watchpoints and 2 breakpoints )
PTRACE_GETHBPREGS result = 0x3513702a (debug_arch 0x3, max_wp_length = 4, wp_count = 1, bp_count = 5)
DBGAUTHSTATUS reads 0xaa confirming the debug features are implemented but are disabled. 
Thanks,
Valentin
  • Valentin,

    Debug capabilities are disabled on HS OMAP devices.  Pandaboard is a GP OMAP device, so you will have more debug capability for development purposes.

    Regards,
    Gina 

  • Gina,

    Thanks for pointing that out, I wasn't aware of the distinctions.

    I just got my hands on a Pandaboard ES and flashed it with the prebuilt images for Ubuntu 12.04. I confirmed the kernel was built with CONFIG_HAVE_HW_BREAKPOINT=y by looking at  /boot/config-3.2.0-1412-omap4.

    Unfortunately if I check the DSCR register it reads the same value as on the Galaxy Nexus, telling me the monitor mode was not set at boot time I expect.

    DSCR reads 0x01030002
    DIDR reads 0x3513702a

    Are there any special requirements to enable monitor mode on Pandaboard?

    Thanks so much,
    Valentin

  •  

    Valentin,

    Pandaboard is a GP/ General Purpose OMAP device intended for non-security development and enabling monitor mode is not supported on Pandaboard.

    Regards,

    Nisha

    Please click the Verify Answer button on this post if it answers your question

     

  • Nisha,

    Thanks for your prompt answer. I interpreted Gina's reply as saying the opposite, that debugging would work on GP.

    Aren't hardware watchpoints/breakpoints considered debug features that should be available since Pandaboard is for development? These don't seem to be security features.
    Aren't these necessary for other things such as external debugging with JTAG, which I believe is supported on Pandaboard?

    If it's not enabled on Pandaboard or Google Nexus, then Is there any way to have monitor mode on any device or development board?

    Thanks,
    Valentin

  • Valentin,

    Debug capabilities such as hardware watchpoints/ breakpoints and JTAG debugging are available on Pandaboard/GP device.

    However, the monitor mode is available on secure OMAP HS devices and not on a Pandaboard.
    If you are looking for a development device that has monitor mode enabled, you would need a secure HS OMAP device.
    For more information about secure OMAP HS device, please contact your TI representative as this information is
    not available in the public domain.

    Regards,
    Nisha

    Please click the Verify Answer button on this post if it answers your question

     

  • Nisha,

    I am interested in "Monitor-mode Debug" and not "Secure Monitor Mode". The two are very different: the first should work on a GP device and not require JTAG. The second is related to HS devices and TrustZone.

    Could you please provide some insight on how to enable Monitor-mode Debug on a Pandaboard ES (Rev B1)?

    Regards,
    Valentin

  • Valentin,


    Based on  monitor debug mode and secure monitor trustzone mode difference, following is a reference to Monitor debug mode in ARM TRM.
    You can see in the second link for A9 [OMAP4430/4460], monitor debug mode does seem to have a relation to secure state of processor.

    ARM1136JF-S and ARM1136J-S Technical Reference Manual
    Home > Debug > Monitor debug-mode debugging
    http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0211k/Cegheegh.html

    Cortex-A9 Technical Reference Manual    Revision: r4p1
    Home > Debug > External debug interface > Debugging modes
    10.8.1. Debugging modes
    http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388i/ch10s08s01.html

    You should be able to debug on Pandaboard for development purpose. Please find following resources for getting started on Pandaboard.
    http://www.omappedia.com/wiki/PandaBoard
    If you are having trouble using debug features on Pandaboard, following mailing list is another resource.
    pandaboard@googlegroups.com

    Regards,
    Nisha

    Please click the Verify Answer button on this post if it answers your question