[工学]linux-device-driver.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[工学]linux-device-driver

简述综述 设备描述包括: I/O资源: I/O端口 ,I/O内存 --struct rsource , pci_dev --resource 中断资源: IRQ line int irq , pci_dev --irq 访问操作函数: f_ops -- open/read/write/ioctl 等 ,这些函数和具体设备相关。 探测添加/移出函数: probe/remove/suspend/resume/shutdown 等 ,这些函数大 都基于总线或一类设备,同类或同总线设备应该相同。 设备文件: /dev/file_name , 在内核启动时,读取/sys/class下的文件,来创建,并和 dev_t 绑定. 设备标识: 主次设备号 , 内核在文件系统之下的层, 都以设备号标识设备. 如open 一个设备, open 设备文件,获得 inode --dev_t, 再由dev_t 查找到cdev 或者 block_device ,找到 f_ops 内核设备数据结构: (1)设备模型: kobject , kset , device , device_driver , bus_type device -- kobject kref , sys_dentry -- dev_t -- device_driver -- probe/remove/suspend/resume/shutdown 等 void *driver_data -- ? 各种链表指针, 链接设备树: parent child sbling /sys/devices/ 同一驱动下的设备链表 /sys/bus/bus_**/driver/ device 同一bus 下的设备链表 /sys/bus/bus_**/devices/ device_driver -- probe/remove/suspend/resume/shutdown 等 bus_type -- match/probe/remove/suspend/resume/shutdown 等 (2)总线类型设备: 如pci_dev , pci_bus , pci_driver , pci_bus_type pci_dev -- resource I/O port 或 I/O memory -- irq irq line -- device -- dev_t 等 , 表示 /sys/bus/pci/device_name -- pci_driver device_driver probe/remove/suspend/resume/ 等的定义 -- void *sysdata -- 链表指针,global_list , 所有PCI 设备链表 bus_list , 本PCI所在总线的PCI设备链表 pci_driver --match/probe/remove/suspend/resume/shutdown 等的定义 device_driver pci_bus_type match/probe/remove/suspend/resume/shutdown 等的定 义, 同上 (3)字符/块类型设备: block_device -- dev_t -- bd_inodes 表示该设备上打开的文件的inode 链表. -- gendisk kobject sysfs_dentry , k_ref ,表示 /sys/block/name device probe/remove/suspend/resume/ shutdown 等 block_device_oper

文档评论(0)

ctuorn0371 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档