几个一样的设备,驱动怎么写??
难道真要一份驱动代码,改个name然后,写几个同样的驱动来驱动每个设备??能否只用一份驱动,来驱动几个设备???
如果只用一分驱动,那么在/dev/ 下挂载的节点不是只有一个了??怎么去确定我找的是哪个设备呢??
大家给点例子和资料~~~ 回复 1# xiaopeng14
是 一份驱动程序,驱动n个设备。 回复xiaopeng14
是 一份驱动程序,驱动n个设备。
goldenfort 发表于 2011-03-17 20:13 http://linux.chinaunix.net/bbs/images/common/back.gif
能否给个例子看看???或者简单说说怎么做的?? 最简单的例子,一台机器有4个一样的网卡,难道要写4个驱动不成? 最简单的例子,一台机器有4个一样的网卡,难道要写4个驱动不成?
chenyx 发表于 2011-03-17 20:54 http://linux.chinaunix.net/bbs/images/common/back.gif
这个我也知道,但是,从代码的角度来搞,怎么搞?? 现在我是指定platform_driver结构里面的driver结构中的name,根据这个name去查找具有相同name的设备,这样如何能达到一个驱动去驱动几个设备??? 那个驱动不是有个次设备号么,次设备号就可标识不同的驱动 回复 6# xiaopeng14
你在platfor_driver中添加个 id_table不就行了嘛??? 不好意思是 platfom_driver, 你初始化一个id_table数组,每个元素的name成员赋值成为你的每个 platform_devic中的name ,一一对应, 这样你可以 register多个 patform_device,而只需使用一个patform_driver。这就是一个driver对应多个devic的情况(platform总线的driver match device时,会遍历整个device链表……)。不过即便是有id_table,你最好也个你的platform_driver的name成员随便赋个值(不为空即可),否则有可能会oops。 次设备号
不同的次设备号对应不同的设备,来创建不同的设备文件,但是驱动程序都可以使用主设备号设备使用的驱动程序
页:
[1]
2