软件分层设计是软件工程最基本的一个思想;
设备驱动模型由总线、设备、驱动3个实体构成
https://elixir.bootlin.com/linux/v4.14.191/source/include/linux/device.h
该文件中,对总线、设备、驱动3个实体用相应的结构体进行了描述;
bus_ type被称为总线,并不表示一定与物理上的总线有关, 应当将其看作一个辅助数据结构;
bus_ type的核心任务是建立drv和device的关系;
bus_ type的主要字段:
device_ driver结构体表示设备驱动;
device_ driver结构体的主要字段为:

本文介绍了Linux设备驱动模型,包括总线、设备和驱动三个实体。设备驱动模型中的bus_type结构体用于建立设备和驱动之间的关系,涉及probe流程。总线分为实体总线(如PCI、USB)和虚拟总线(如platform总线)。Linux内核在注册设备或驱动时,会动态匹配并尝试probe,通过match函数确定设备与驱动的适配。平台设备(platform_device)和平台驱动(platform_driver)的匹配方式包括设备树、ACPI、ID表和设备名匹配。

最低0.47元/天 解锁文章
854

被折叠的 条评论
为什么被折叠?



