毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> linux >> 正文

mini2440按键驱动怎么又是平台又是混杂的

更新时间:2012-5-22:  来源:毕业论文

在做到按键驱动设计的时候,发现设备使用的是平台类型注册的,但是在平台类型驱动的prob函数里面又注册了混杂设备。着实不解:怎么又是平台又是混杂的?

//下面这段代码是在设备程序里面的
static struct platform_device *s3c_buttons;


static int __init platform_init(void)
{

  s3c_buttons = platform_device_alloc("mini2440-buttons",-1);

  platform_device_add_resources(s3c_buttons,&s3c_buttons_resource,7);

  /*平台设备的注册*/
  platform_device_add(s3c_buttons);


}

//下面这段代码是在驱动里面的
 /*get irq number*/
  for(i=0; i<6; i++){
buttons_irq = platform_get_resource(pdev,IORESOURCE_IRQ,i);
if(buttons_irq == NULL){
dev_err(dev,"no irq resource specified\n");
ret = -ENOENT;
goto err_map;
}
button_irqs[i] = buttons_irq->start;
//printk("button_irqs[%d]=%d\n",i,button_irqs[i]);  
}
ret = misc_register(&mini2440_miscdev);//为啥还要混杂设备注册? 

return 0;

 err_map:
iounmap(buttons_base);

 err_req:
release_resource(buttons_mem);
kfree(buttons_mem);

return ret;

platform_init在哪个文件? 我没搜到
plat_dev.c 就是设备文件里面

平台设备应该是为了“机制和策略分离”,混杂设备应该是为了导出设备文件。毕竟平台设备用户空间看不到

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。