Edit online

调试指南

DMA 调试包含以下步骤:

调试开关

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

为了更方便调试,DMA 模块另外增加了一个 dump 控制开关,可以在运行时 dump 每次 DMA 请求的任务链表详细信息。需要在 menuconfig 中配置:

Drivers options  --->
    Drivers debug  --->
        [*] Enable DMA driver debug

注解

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

dma_dump 命令

DMA 驱动会在命令行中注册了一个查询通道状态的命令:dma_dump。使用方法:

aic />
aic /> 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