I am currently working with a 1060-EVK board. I have a working application that accesses SDRAM with no problem; but when I attach a SEGGER Jlink and attempt to read from that space J-Link says "Could not read memory."
Yet, my running application can access it with no problem...
J-Link>mem32 80000000 8
Could not read memory.
This is not specific to Segger but when you access memory via mem32 0x80000000 is this a physical address. You mentioned you have a working application that accesses this memory but it is perhaps mapped and when Segger tries to access and returns the error this mapping is perhaps not there.
Hope this gives some thoughts.
I think I must have that mapping correct simply because I am able to run out of that space. Note however, that I am very new to this processor so anything is a potential hazard at this point.
Hi Ed Sutter,
Thank you for your interest in NXP Semiconductor products and
for the opportunity to serve you.
I'd highly recommend you to present the testing steps you did in detail, as it can help us to figure the phenomenon out.
Testing steps are pretty basic...
I am adapting a small bootloader I wrote years ago, currently using the MIMXEVK-1060 (similar to our custom design). It boots out of flexspi-nor, relocates to SDRAM. I hope to eventually not need the relocation to SDRAM, but I do that now so that I can operate on flash. Anyway, as I debug this (and the application is running out of SDRAM), I have seen many times that the Segger J-Link returns the "Could not read memory" error when I attempt to access variables in the same memory space that the active application is running out of. So, that tells me that I have SDRAM set up properly (I just reused the evkmimxrt1060_sdram_ini_dcd.[ch] files from the SDK), but for some reason J-Link gets confused.
Hi Ed Sutter,
I think you misunderstand my question, I hope you can demonstrate the flow of testing steps instead of introducing the brief of your application, then I can replicate the phenomenon on my site, otherwise, I've no idea what way to move further.
Looking forward to your reply.
Not sure what else to add. I was telling you about the execution environment (running out of SDRAM) thinking it may have something to do with the error... I just have a Segger-Jlink attached to a MIMX1060-EVK. I build with gccarm and install the application with a Segger script that pushes the application image to FlexSPI-Nor. SDRAM is initialized through DCD taken out of the SDK. I've tried the mem32 command with CPU running and halted, and I've seen the error in either case.