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.

DM3725, Unable to access peripheral registers during emulation

Other Parts Discussed in Thread: DM3730

Hello.


I've noticed that a small number of questions similar to mine had been posted here, but none of them are answered, which is why I'll have to reiterate, because it's extremely important that I get an answer. Bordering on life and death actually.


I'm using BeagleBoard-xM (DM3730) with an XDS100v2 JTAG emulator. I'm trying to get the lay of the land, so I'm groping around, trying out what can be done. My goal was to start small by attempting to access some peripheral modules of the SoC, get the feel of how they are to be operated, then move on to larger things.


The problem is, I have trouble doing just that - accessing peripheral registers. I tried reading/writing GPIO registers, blinked a couple of LEDs... but that is as far as I could get, because I can't access any other peripheral modules at all. I double- and triple- and quadruple- checked PRCM settings concerning these modules (domain power states, interface clocks) - everything checks out. And yet the registers remain unreachable. I step through the program, and when I execute the line that's supposed to read a certain register (say LCR_REG of an UART3), the program counter gets thrown off  God knows where (I'm guessing some exception table).

CM_IDLEST_PER register tells me that I can access anything I want. And yet somehow I cannot.


I can't possible imagine what the problem might be, I've been through the TRM a number of times and found no hint as to what I could be doing wrong.

Please help.

Thank you in advance

  • Hi Sergey,

    Could you share the CM_IDLEST_PER register value?

    Also you can try to read/write the GPIO register values by readmem tool from attachment.

    BR

    Tsvetolin Shulev

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/791/readmem

  • Hello.


    The CM_IDLEST_PER register value is pretty much a toss-up. I think I somehow screw up the entire debugging procedure, because each debugging session presents with different values of these Idle State registers. At the time of writing this, the value is 0x00040807, which makes the fact that not a single UART is ready to be operated on quite reasonable.

    At different times the Idle State register was all zeroes, and yet some of the UARTs were still unresponsive.

    Tell me please what kind of information I might further give you so you could get a clearer picture of what might be wrong.

    Thank you in advance.