Page 1 of 1

gdb看到的windowbase寄存器的值不正确

Posted: Sat Dec 05, 2020 8:42 am
by hechangjiang
各位专家:

我刚才发了帖子,但没在论坛里看见。这里,我再发一遍。

我买了块ESP32S2 Kaluga的板子,现在IDF编译、烧写均正常,openocd+gdb也可以正常连接板子。
并且hardware breakpoint工作正常,貌似都挺正常。
但是,我看了a1寄存器和windowbase寄存器,发现值不对,它们的值如附件。
同时,我用info arg查看函数的参数,发现也不正常。

我将jtag的clock调整为1MHz,将ftdi的数据采样调整为下降沿采样,均不能解决问题。
貌似是jtag哪里没有设置正确,请各位专家帮我想想主意。

谢谢

Re: gdb看到的windowbase寄存器的值不正确

Posted: Mon Dec 07, 2020 3:33 am
by hechangjiang
问题已经解决。

rootcause是gdb用的是xtensa-esp32-elf-gdb,而不是xtensa-esp32s2-elf-gdb,所以gdb通过RSP协议按寄存器编号读取时会读成其它寄存器。