Other Parts Discussed in Thread: AM5716
器件型号: AM5716
您好:
在 Sitara AM5716 的 DSP C66 中,我尝试使用 System_printf() 命令跟踪固件。
与 ARM 处理器一起、C66 共享定义如下的通用存储器:
#define DSP_MEM_BUF_LOG 0x95500000
#define DSP_MEM_BUF_LOG_SIZE (SZ_1M * 1)
{
TYPE_CARVEOUT
DSP_MEM_BUF_LOG、0、
DSP_MEM_BUF_LOG_SIZE、0、0、“DSP_MEM_BUF_LOG",“,</s>、
}、
在 cfg 文件中、我放了:
/* 使用 SYSMIN、因为 Linux/QNX 需要跟踪缓冲器地址
* 跟踪调试驱动程序,并提供更好的性能。
*/
VAR System = xdc.useModule('xdc.runtime.System');
Var SYSMIN = xdc.useModule('ti.trace.SysMin');
System.SupportProxy = SYSMIN;
SYSMIN。bufSize = 0x100000;
使用终端控制台连接到运行 Linux 的 ARM 并键入
CAT /sys/kernel/debug/remoteproc/remoteproc2/trace0
我只能得到文件的几行、它不会更新。 也可以输入
tail -f /sys/kernel/debug/remoteproc/remoteproc2/trace0
它无法正常工作或部分显示内容。
如果我使用 JTAG 调试器读取 DSP 缓冲区、则正确填充存储器。 在调试缓冲区的最后两个 32 字中、当 System_prinft() 在其中写入一个向量时、指针会被更新。
DSP 似乎正在正确写入调试缓冲区、但具有 CAT 或 TAIL 的 ARM 无法读取共享存储器中的所有文件。
您能帮助我了解配置中遗漏的内容还是出错吗?
谢谢
Francesco
