Edit online

调试指南

4 Dec 2024
Read time: 1 minute(s)

Luban-Lite 中,DMA 驱动的日志控制接口共用了全局的 aic_log.h 接口。

为了方便调试,DMA 模块增加了一个 dump 控制开关,可以在运行时丢弃每次 DMA 请求的任务链表详细信息。
  • 执行下列命令和步骤打开 DMA 调试:
    1. 执行scons --menuconfig命令,进入 menuconfig 的功能配置界面。
    2. 在配置界面选择使能 DMA 驱动调试:Drivers options ---> Drivers debug ---> [*] Enable DMA driver debug。
  • DMA 驱动会在命令行中注册 dma_dump 命令,可查询通道状态,执行下列命令可以使用 dump 控制:
    dma_dump 0
    
    输出示例如下:
    DMA Ch0: desc = 0x0
    Common register:
        IRQ_EN 0x4,     IRQ_STA 0x0,    CH_STA 0x0, GATE 0x0
    Ch0 register:
        Enable 0x0,     Mode 0x0,   Pause 0x0
        Task 0xfffff800,    Config 0x4c004c0,   Src 0x4177a204,     Sink 0x42165384
        Left 0x0,   Package_cnt 1
注:

DMA 驱动并没有用到 RT-Thread 的设备框架,所以在目标板上使用命令 list_device 不会看到 DMA 设备。