驱动代码求解啊!版主
6410A的飞凌led驱动代码中的GPMDAT是这样写代码的:tmp = _raw_readl(S3C64XX_GPMDAT);
tmp |= 0x10;
writel(tmp,S3C64XX_GPMDAT)
我看了6410手册,GPMDAT寄存器是未定义的,我觉得直接赋值就可以了,可飞凌的为什么把这个寄存器的值读出来,与后再写回寄存器?它是没有定义就应该没有值得 啊。读出来的值是多少呢?还有这个_raw_readl(),与readl()这两个函数有什么区别啊?
你的问题,我无法解答,寄存器的值需要自己添加printk函数来打印出来看看,其他两个函数你可以百度你下,网上有很多关于这种函数的解释,或者你可以看这个函数的原先代码
页:
[1]