xref: /linux/Documentation/driver-api/basics.rst (revision e9f0878c4b2004ac19581274c1ae4c61ae3ca70e)
1Driver Basics
2=============
3
4Driver Entry and Exit points
5----------------------------
6
7.. kernel-doc:: include/linux/module.h
8   :internal:
9
10Driver device table
11-------------------
12
13.. kernel-doc:: include/linux/mod_devicetable.h
14   :internal:
15
16Delaying, scheduling, and timer routines
17----------------------------------------
18
19.. kernel-doc:: include/linux/sched.h
20   :internal:
21
22.. kernel-doc:: kernel/sched/core.c
23   :export:
24
25.. kernel-doc:: kernel/sched/cpupri.c
26   :internal:
27
28.. kernel-doc:: kernel/sched/fair.c
29   :internal:
30
31.. kernel-doc:: include/linux/completion.h
32   :internal:
33
34.. kernel-doc:: kernel/time/timer.c
35   :export:
36
37Wait queues and Wake events
38---------------------------
39
40.. kernel-doc:: include/linux/wait.h
41   :internal:
42
43.. kernel-doc:: kernel/sched/wait.c
44   :export:
45
46High-resolution timers
47----------------------
48
49.. kernel-doc:: include/linux/ktime.h
50   :internal:
51
52.. kernel-doc:: include/linux/hrtimer.h
53   :internal:
54
55.. kernel-doc:: kernel/time/hrtimer.c
56   :export:
57
58Workqueues and Kevents
59----------------------
60
61.. kernel-doc:: include/linux/workqueue.h
62   :internal:
63
64.. kernel-doc:: kernel/workqueue.c
65   :export:
66
67Internal Functions
68------------------
69
70.. kernel-doc:: kernel/exit.c
71   :internal:
72
73.. kernel-doc:: kernel/signal.c
74   :internal:
75
76.. kernel-doc:: include/linux/kthread.h
77   :internal:
78
79.. kernel-doc:: kernel/kthread.c
80   :export:
81
82Reference counting
83------------------
84
85.. kernel-doc:: include/linux/refcount.h
86   :internal:
87
88.. kernel-doc:: lib/refcount.c
89   :export:
90
91Atomics
92-------
93
94.. kernel-doc:: arch/x86/include/asm/atomic.h
95   :internal:
96
97Kernel objects manipulation
98---------------------------
99
100.. kernel-doc:: lib/kobject.c
101   :export:
102
103Kernel utility functions
104------------------------
105
106.. kernel-doc:: include/linux/kernel.h
107   :internal:
108
109.. kernel-doc:: kernel/printk/printk.c
110   :export:
111
112.. kernel-doc:: kernel/panic.c
113   :export:
114
115.. kernel-doc:: kernel/rcu/tree.c
116   :export:
117
118.. kernel-doc:: kernel/rcu/tree_plugin.h
119   :export:
120
121.. kernel-doc:: kernel/rcu/update.c
122   :export:
123
124Device Resource Management
125--------------------------
126
127.. kernel-doc:: drivers/base/devres.c
128   :export:
129
130