设备驱动(十二)

设备模型
内核对设备进行分类,以层次结构组织管理成为设备结构
/sys/devices 下显示了所有的设备

/sys/bus 按照总线分类显示了所有设备 

/sys/class 按照功能类型分类显示了所有设备

驱动和设备都会在总线上注册
/sys/bus
不需要总线的设备将会注册到flatform总线上
为了达到驱动与平台的无关性使用设备模型规范编写代码

创建设备结构体
struct platform_device test_device = {
     .id = -1,
     .name = "test_device",
     .dev.release = device_release,
};
创建对应驱动结构体
struct platform_driver test_driver = {
     .probe = driver_probe,
     .remove = __devexit_p(driver_remove),
     .driver = {
          .name = "test_device",
     },
};
注册设备
platform_device_register(&test_device);
注册驱动
platform_driver_register(&test_driver);
当设备与驱动匹配时,将会执行probe函数。
probe函数入参有resource资源


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值