请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:AM3352 工具/软件:Linux
大家好、
我们的定制板上没有音频、因此我没有使用 McASP 驱动器。
但我们的蜂鸣器连接到引脚(V16)、以生成驱动蜂鸣器的信号、
蜂鸣器需要获取时钟信号(高->低->高->低)、因此我认为我可以使用引脚(V16)作为 McASP0_aclkx ti 生成时钟信号、
我编写了一个模块(.ko)来配置此引脚:
#define base 0x46000000
#define size 0x400000 //4MB
#define ACLKX bb0
static int test_init (void)
{
u32 reg;
printk ("蜂鸣器启动!\n");
if (!request_mem_region (base、size、"simeer")){
PR_ERR ("request_mem_region failed!\n");
返回-1;
}
PR_INFO ("request_mem_region sulation!\n");
base = ioremap_nocache (base、size);
if (base =NULL){
PR_ERR ("ioremap failed!\n");
返回-1;
}
PR_INFO ("ioremap_Success!\n");
//_raW_WRITE (bit (5)| bit (7)、base+ACLKX);
reg =__raW_read (base);
PR_INFO ("reg =%lx\n"、reg);
返回0;
}
但在_raW_read (reg)中已死区:
未处理的故障:在0xd1000000处的非线性获取(0x1028)上的外部中止
(笑声)
(笑声)
McASP0基地址是否为0x46000000? 或者我需要使用 Hole McASP 驱动程序吗?