First page Back Continue Last page Overview Graphics
The first component of the device model is the bus driver
- One bus driver for each type of bus: USB, PCI, SPI, MMC, I2C, etc.
It is responsible for
- Registering the bus type (struct bus_type)
- Allowing the registration of adapter drivers (USB controllers, I2C adapters, etc.), able of detecting the connected devices, and providing a communication mechanism with the devices
- Allowing the registration of device drivers (USB devices, I2C devices, PCI devices, etc.), managing the devices
- Matching the device drivers against the devices detected by the adapter drivers.
- Provides an API to both adapter drivers and device drivers
- Defining driver and device specific structure, typically xxx_driver and xxx_device