Using GDB with Teensy without hardware debugger, first Beta

You're right. This is entirely my fault, I fixed setting breakpoints on T4.x with TD 1.59, and broke T3.x :eek:

I've put in a pull request, but in the mean time, if you modify the code around line 1182 of TeensyDebug.cpp like this, you should be good to go.
C++:
#if defined(__IMXRT1062__) // doesn't apply to Teensy 3.x
  // Recent teensy4/startup.c has disabled writes to ITCM - re-enable those
  // Various macros cribbed from there...
#define READWRITE    SCB_MPU_RASR_AP(3)
#define MEM_NOCACHE    SCB_MPU_RASR_TEX(1)
#define SIZE_512K    (SCB_MPU_RASR_SIZE(18) | SCB_MPU_RASR_ENABLE)
#define REGION(n)    (SCB_MPU_RBAR_REGION(n) | SCB_MPU_RBAR_VALID)
  SCB_MPU_RBAR = 0x00000000 | REGION(1); // *** assumed *** ITCM
  SCB_MPU_RASR = MEM_NOCACHE | READWRITE | SIZE_512K;
#endif // defined(__IMXRT1062__)
 
You're right. This is entirely my fault, I fixed setting breakpoints on T4.x with TD 1.59, and broke T3.x :eek:

I've put in a pull request, but in the mean time, if you modify the code around line 1182 of TeensyDebug.cpp like this, you should be good to go.
C++:
#if defined(__IMXRT1062__) // doesn't apply to Teensy 3.x
  // Recent teensy4/startup.c has disabled writes to ITCM - re-enable those
  // Various macros cribbed from there...
#define READWRITE    SCB_MPU_RASR_AP(3)
#define MEM_NOCACHE    SCB_MPU_RASR_TEX(1)
#define SIZE_512K    (SCB_MPU_RASR_SIZE(18) | SCB_MPU_RASR_ENABLE)
#define REGION(n)    (SCB_MPU_RBAR_REGION(n) | SCB_MPU_RBAR_VALID)
  SCB_MPU_RBAR = 0x00000000 | REGION(1); // *** assumed *** ITCM
  SCB_MPU_RASR = MEM_NOCACHE | READWRITE | SIZE_512K;
#endif // defined(__IMXRT1062__)
Thank you so much for quick response. I tried your suggestion and it worked fine!
 
Back
Top