嵌入式linux之分离分层概念,总线驱动设备模型

2019-07-13 04:29发布

一、示意图

App

input.c

/ / / 分离 button.c < ===== > evdev.c
硬件相关 纯软件(稳定)
bus_drv_dev模型 bus drv链表
1.把device放入bus的dev链表 device_add /.match 1.放入drv链表 2.从dv链表取出一一比较(match)
2.从bus的drv链表取出每一个drv / driver_register
用bus的match函数判断drv能否支持dev / 3.若支持,调用probe
3.若可以支持,调用drv的probe device driver
硬件相关 .probe比较稳定的代码
.name
usb_bus_type / usb_new_device / usb_register
/
usb_interface usb_driver
.id_table
.probe
platform_bus_type / .match   / /             platform_device platform_driver
.probe
二、led_dev.c

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include

include