Search Results

Search results 1-20 of 23.

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Following up: I tried the newly released V6.52 JLink driver, modified JLinkDevices.xml to use iMXRT105x/NXP_iMXRT105x_QSPI.elf, and now things work as expected. Seems this issue has been addressed in the latest driver.

  • Thanks for the response. Actually, no, the example project doesn't work. I downloaded the project. I downloaded Embedded Studio. I opened the .emProject file. I built the project. Looking at the map file it doesn't seem to put any code/data in the IMXRT1050 flash memory space (starts at 0x6000 0000), only in the ITCM/DTCM. So I fiddled with the configuration to put things in flash memory space (Options -> Code -> Build -> Memory Segments -> FLASH1 RX 0x60000000 ...) and rebuilt. I changed the JL…

  • Hi - I'm working on getting the iMXRT1050-EVKB NXP development board running/debugging using the QSPI flash (IS25WP064AJBLE). I've modified the EVKB hardware from the default HyperFlash to QSPI Flash. I've modified the JLinkDevices.xml to use iMXRT105x/NXP_iMXRT105x_QSPI.elf. I'm using JLink V6.50a with j-Trace Pro Cortex-M. Using a logic analyzer I can see that the JLink/Trace is reading/writing the QSPI flash successfully (and the data is what I expect) when it goes thru the comparison/program…

  • Hi I'm debugging on an iMXRT1020. We use RTT and SystemView extensively. The iMXRT1020 has 256 KB ram on-board. This is configured at reset to be 64 KB ITCM, 64 KB DTCM, and 128 KB OCRAM. We put the _SEGGER_RTT struct in the DTCM, which RTT and SystemView find automatically. That is, until we recently changed the TCM configuration so that at code entry it is reconfigured to 96 KB ITCM, 160 KB DTCM. The additional data we put into DTCM caused _SEGGER_RTT to be placed > 64 KB into the DTCM, which …

  • My apologies in advance - I'm not sure how best to describe this issue... Using J-Trace Pro & Eclipse on an iMXRT1020 I'm running into a strange issue where after the code executes a "strd r7,r6,[r4,#4]" the debugger "hangs" after with an infinitely repeating "Read 4 bytes @ address 0x00000016 (Data = 0x021D8000)". The instruction is valid: r4 contains is a valid external sdram address and is word aligned. If I manually change the r4 address to be the next word the instruction will succeed witho…

  • Update to "jlink will very often erase and reprogram" unchanged code: I think I see what's happening. We're configuring the FlexSPI interface to use the spi flash in fast read quad i/o operation with continuous read (AX mode). This means that the mcu's first time reading the spi flash with fast read quad i/o, the message starts with command 0xEB, but every fast read quad i/o after that just starts with the address (no 0xEB). Thus, when the debugger resets the mcu, the spi flash is not reset but …

  • Adding a couple updates. Now I see that sometimes a debug session will run as quad spi, and other times as single spi. I can see on the logic analyzer that the jlink programs the spi flash in single spi, verifies it, then prior to entering Reset_Handler() (XIP in spi flash) it reads the spi flash as quad. Other times doing the same thing it reads it as single. I haven't figured out a pattern to it, although rebuilding with a very minor change sometimes causes it to occur or not occur. The code c…

  • Hi - I've been debugging on an iMXRT1020, using the FlexSPI/spi NOR flash for XIP code. As part of the first steps in debugging the code the JTrace programs the spi flash (and verifies it). This had been working well until today. I'm not sure what I did to break it, but I did, and then figured out a work-around, and thought I should bring it to your attention in case it is a bug in NXP_IMXRT102x_QSPI.elf. At some point I must've debugged with "bad" code; that is, the debugger programmed the spi …

  • Hi I'm starting development on an iMXRT1020. The iMXRT1020 allows putting configuration tables in external spi flash so that the bootrom can configure the spi flash for optimal speed, as well as configuration settings for sdram, etc. However, it seems that the debugger (I'm using JTrace-Pro) skips executing the bootrom, thus the spi flash is not set up for optimal execution (XIP runs at low single data line spi speed rather than fast qspi that that should be configured during bootrom), and the s…

  • Thanks for the reply. I shouldn't have mentioned anything about Eclipse as it really has nothing to do with Eclipse as far as I can tell. Attempting to do the same thing in console gdb client (hitting a breakpoint in an irq and then displaying the full backtrace) displays junk for frames it attempts to unwind from before the irq and often causes gdb client to lose connection with gdb server. The only way I've been able to work around this is always having to "set backtrace limit 1" which gets te…

  • Hi all I've been developing on the LPC43xx (largely 4350) family for a while with Segger j-Trace Pro (v6.30d), Eclipse (Neon), and GNU MCU Eclipse (gdb v8.0.50) but have never been able to get stack backtrace in irqs to work properly. We're using msp and psp stacks. It'll display junk for any stackframes before the irq, sometimes causing gdb to lose connection depending on the junk values it tries to process. I've spent some time trying to get this to work, or at least understand it. I've looked…

  • Ozone multi-step multiple elf load

    wincon - - General

    Post

    Thanks for the File.Load() suggestion, it helps lead to a sort-of solution, but still some issues. Here's how I've gotten it to sort-of work: Source Code (27 lines) I can get it to work on the first "download and reset program" but if I "stop debug session" and "download and reset program" again, I get a failed to read target status message. I have to cycle everything: target, jlink, and the app in order to get everything working again. Is this the right way to download the elf apps? Any suggest…

  • Ozone multi-step multiple elf load

    wincon - - General

    Post

    I'm back to trying to get this to work but still not able to. What I'm trying to do: -Reset, download, and execute "configure external sdram" elf. -Download and execute/debug "main app" elf. The "configure external sdram" elf lives entirely within internal sram. The "main app" elf spans internal sram and external sdram. Hence why the "configure external sdram" needs to be downloaded and executed first, then "main app", without reset in between. I've been trying to get this working a few differen…

  • Even further testing: -Figured out the issue with corrupted SEGGER_SYSVIEW_Print(), _Warn(), and _Error() messages: SEGGER_SYSVIEW_LOCK() and _UNLOCK() needed to be modified for custom OS. -Resolving the _LOCK() and _UNLOCK() issue didn't resolve the other issues mentioned. -Additional observation: SystemView app crashes while continuous capturing and target is stopped/halted/paused by debugger. -Additional observation: SystemView app causes target (running in debugger) to halt/pause, as if brea…

  • A little more info from further testing: -If I look closely at the "continuous" capture, where the existing SEGGER_SYSVIEW_Print() _Warn() and _Error() it looks like there is sometimes gibberish data in the capture at those locations, and subsequent items in the capture sometimes don't seem to be decoded correctly. -If I place the SEGGER_SYSVIEW_Print() _Warn() and _Error() at different locations while doing "continuous" in the code then they may work in the new locations. -If I do a single-shot…

  • I've generally got SystemView running but have noticed some issues that I'll document here. I've instrumented the SystemView firmware for a custom OS. The OS uses task IDs starting at zero so I've set SEGGER_SYSVIEW_ID_BASE to 0x00000000 and SEGGER_SYSVIEW_ID_SHIFT to 0. If I create a task with ID == 0 (i.e. create a SEGGER_SYSVIEW_TASKINFO struct with TaskID == 0) then the SystemView app will crash when attempting to connect to the target. If I bump the task IDs by one then it'll connect. Possi…

  • This is my first time trying to get SystemView up and running. My target is the M4 core of a dual core LPC4350. We've got a custom OS so I'll have to instrument it myself. However, taking baby steps, I'm just trying to make a SystemView connection with the target after calling SEGGER_SYSVIEW_Conf() to prove that it works. I've been struggling to get it connected but think I just figured out the trick - after downloading the code via debugger to the target and running the target, stop the debugge…

  • Thank you for the info. Hoping it moves to the todo list sooner rather than later.

  • Ozone multi-step multiple elf load

    wincon - - General

    Post

    Ping. Would like to figure out how to get Ozone working with this. I'm using Eclipse (GNU ARM Eclipse) but there are some Eclipse and gdb bugs that are making it a challenge (e.g. single stepping on either core will cause the debugger/gdb to lose communication and display "Ignoring packet error, continuing..." after a few steps).

  • Hi - I just got my JTrace Pro to replace my JLink Ultra+. My target is an LPC4350, which has an M4 and an M0 core. When connected via usb I'm able to connect and debug both cores simultaneously using Eclipse (GNU ARM Eclipse). When connected via ethernet Eclipse can connect to the M4 (first debug launched) but can't connect to the M0 (2nd debug launched). Is it possible to debug both cores via ethernet? If so, how?