From 7ad2b067cd84e568d67a49bd7055e1561095a0cb Mon Sep 17 00:00:00 2001 From: Thadeu Lima de Souza Cascardo Date: Sat, 22 May 2010 07:45:01 -0400 Subject: [PATCH] Device Driver Model. --- 12dd/dd | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 12dd/dd diff --git a/12dd/dd b/12dd/dd new file mode 100644 index 0000000..fcc69f5 --- /dev/null +++ b/12dd/dd @@ -0,0 +1,50 @@ +%Device Driver Model +%Thadeu Cascardo + +# Linux 2.6 Device Driver Model + +* Design and Implementation by GregKH +* kobjects +* sysfs + +# Buses + +* A way to communicate with device +* Interface between Linux and hardware +* May allow hotplug of devices +* Examples: + - USB + - PCI + - I2C + - SPI + - ACPI + - Platform +* /sys/bus/ + +# Classes + +* A view of the device +* Interface between Linux and user space software +* The interface may use character devices and/or sysfs or other interfaces +* Specific interface classes: + - block devices + - network devices +* Other classes: + - tty + - video4linux + - input + - backlight + - rtc +* /sys/class/ + +# Drivers + +* Implement the communication with the hardware, usually through a bus +* Present a view of the device, communicating with user space +* Basically, links the bus and the class for a given device model (or a family) + +# Device + +* An object representing a device in the bus or a class device +* Establishes an hierarchy through the parent link +* A class device usually has a device in the bus as its parent -- 2.20.1