RTT and iMX6

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

  • RTT and iMX6

    Has anyone successfully implemented RTT with an iMX6? A recent Segger app note shows RTT working with Renesas RZ (also Cortex-A9 based) and I am hopeful that it will likewise work on the iMX. I've successfully implemented RTT on three different M4 cores so I'm confident about my code. I've zero inited the RTT CB and I can see the RTT tx buffer getting filled with the debugger. I've placed the buffers and control block in both the OCRAM as well as non-cached areas of SDRAM however the Segger RTT utilities do not receive data (JLinkRTTLogger.exe states: "Searching for RTT Control Block...").

    -rob

    The post was edited 1 time, last by rmilne ().

  • Hi Rob,

    iMX6 + RTT should work as the Cortex-A9 has a build-in AHB-AP which allows background memory access.
    You can try to set the RTT Control Block address manually by using the following commands:
    SetRTTAddr <RangeStart>
    SetRTTSearchRanges <RangeAddr> <RangeSize> [, <RangeAddr1> <RangeSize1>, ..]

    Best regards,
    Niklas
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Hi Niklas,

    ...but have you or anyone at Segger actually seen RTT communicating with an i.MX6?

    My experience with MMU address translation is limited so I even tried placing SEGGER_RTT_Init and SEGGER_RTT_WriteString before starting the MMU. No cigar.

    -rob
  • Hi Rob,

    a) i.MX6 is too generic. There are many different derivatives, some provide an AHB-AP (RTT can be used), some not (RTT cannot be used).
    i.MX6Q4 => Provides AHB-AP
    i.MX6SoloX => Does not provide AHB-AP
    [...]

    b) Configuring the MMU accordingly is user's responsibility. See app note: segger.com/downloads/appnotes

    RTT on Cortex-A can be fairly complex to be used due to caching, virtual addresses and so on.
    The app note covers

    Best regards
    Alex
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Hi Alex,

    The i.MX6S5 variant I'm using has the AHB-AP bus. The RZ app note was useful wrt CB init in the startup code but the mmu setup not so much since I'm using different hardware, IDE & RTOS. I would really appreciate it if Segger could do an RTT example for the i.MX as they did for the Renesas part.

    -rob