Linux设备模型(文档翻译)_(整理文档).docxVIP

  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设备模型(文档翻译)_(整理文档)

Linux 内核文档翻译 - driver-model/bus.txtBus Types 总线类型Definition定义~~~~~~~~~~See the kerneldoc for the struct bus_type.intbus_register(struct bus_type * bus);Declaration声明~~~~~~~~~~~Each bus type in the kernel (PCI, USB, etc) should declare one static object of this type. They must initialize the name field, and may optionally initialize the match callback.内核中每个总线类型(PCI、USB 等等)都应该声明一个此类型的静态对象。它们必须初始化该对象的name 字段,然后可选的初始化match 回调函数。structbus_typepci_bus_type = { .name = pci, .match = pci_bus_match,};The structure should be exported to drivers in a header file:这个结构体应该在头文件中向驱动程序导出:extern struct bus_typepci_bus_type;Registration注册~~~~~~~~~~~~When a bus driver is initialized, it calls bus_register. This initializes the rest of the fields in the bus object and inserts it into a global list of bus types. Once the bus object is registered, the fields in it are usable by the bus driver. 当初始化一个总线驱动时,将会调用bus_register。这时这个总线对象剩下的字段将被初始化,然后这个对象会被插入到总线类型的一个全局列表里去。一旦完成一个总线对象的注册,那么对于总线驱动来说它里面的字段就已经可用了。Callbacks回调函数~~~~~~~~~match(): Attaching Drivers to Devicesmatch():给设备加载驱动~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~The format of device ID structures and the semantics for comparing them are inherently bus-specific. Drivers typically declare an array of device IDs of devices they support that reside in a bus-specific driver structure. 设备 ID 的结构和比较这些 ID 的语义本质上讲都是总线定制的。驱动通常会定义一个它所支持的设备 ID 的数组,并将这个数组驻留在总线定制的驱动结构中。The purpose of the match callback is provide the bus an opportunity to determine if a particular driver supports a particular device by comparing the device IDs the driver supports with the device ID of a particular device, without sacrificing bus-specific functionality or type-safety. 回调函数 match 的目的就是在不牺牲总线定制功能或类型安全的情况下,通过比较驱动所支持的 ID 与特定设备的 ID,给总线提供一个确定特定驱动是否支持特定设备的机会。When a driver is registered with the bus, the buss list of devices is iterated over, and the match callback is called for each device that does not have a driver associated with it. 当一个驱动注册到总线后,将会遍历总线的设备列表,然后会为每个还没有和任何

文档评论(0)

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

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

1亿VIP精品文档

相关文档