Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
267c4025 MD |
2 | menuconfig SAMPLES |
3 | bool "Sample kernel code" | |
4 | help | |
5 | You can build and test sample kernel code here. | |
6 | ||
7 | if SAMPLES | |
8 | ||
9cfe06f8 | 9 | config SAMPLE_TRACE_EVENTS |
96d17980 LZ |
10 | tristate "Build trace_events examples -- loadable modules only" |
11 | depends on EVENT_TRACING && m | |
9cfe06f8 SR |
12 | help |
13 | This build trace event example modules. | |
14 | ||
aad108aa SRRH |
15 | config SAMPLE_TRACE_PRINTK |
16 | tristate "Build trace_printk module - tests various trace_printk formats" | |
17 | depends on EVENT_TRACING && m | |
18 | help | |
19 | This builds a module that calls trace_printk() and can be used to | |
20 | test various trace_printk() calls from a module. | |
21 | ||
b06457c8 SRV |
22 | config SAMPLE_FTRACE_DIRECT |
23 | tristate "Build register_ftrace_direct() example" | |
24 | depends on DYNAMIC_FTRACE_WITH_DIRECT_CALLS && m | |
25 | depends on X86_64 # has x86_64 inlined asm | |
26 | help | |
27 | This builds an ftrace direct function example | |
28 | that hooks to wake_up_process and prints the parameters. | |
29 | ||
40efcb05 | 30 | config SAMPLE_KOBJECT |
e7e34917 | 31 | tristate "Build kobject examples" |
40efcb05 GKH |
32 | help |
33 | This config option will allow you to build a number of | |
34 | different kobject sample modules showing how to use kobjects, | |
35 | ksets, and ktypes properly. | |
36 | ||
37 | If in doubt, say "N" here. | |
38 | ||
804defea AM |
39 | config SAMPLE_KPROBES |
40 | tristate "Build kprobes examples -- loadable modules only" | |
41 | depends on KPROBES && m | |
42 | help | |
43 | This build several kprobes example modules. | |
44 | ||
45 | config SAMPLE_KRETPROBES | |
46 | tristate "Build kretprobes example -- loadable modules only" | |
47 | default m | |
48 | depends on SAMPLE_KPROBES && KRETPROBES | |
49 | ||
43203993 P |
50 | config SAMPLE_HW_BREAKPOINT |
51 | tristate "Build kernel hardware breakpoint examples -- loadable module only" | |
52 | depends on HAVE_HW_BREAKPOINT && m | |
53 | help | |
54 | This builds kernel hardware breakpoint example modules. | |
55 | ||
5bf2b193 SS |
56 | config SAMPLE_KFIFO |
57 | tristate "Build kfifo examples -- loadable modules only" | |
58 | depends on m | |
59 | help | |
60 | This config option will allow you to build a number of | |
61 | different kfifo sample modules showing how to use the | |
62 | generic kfifo API. | |
63 | ||
64 | If in doubt, say "N" here. | |
65 | ||
4aad8f51 | 66 | config SAMPLE_KDB |
25985edc | 67 | tristate "Build kdb command example -- loadable modules only" |
4aad8f51 JW |
68 | depends on KGDB_KDB && m |
69 | help | |
70 | Build an example of how to dynamically add the hello | |
71 | command to the kdb shell. | |
72 | ||
842891be BA |
73 | config SAMPLE_QMI_CLIENT |
74 | tristate "Build qmi client sample -- loadable modules only" | |
75 | depends on m | |
76 | depends on ARCH_QCOM | |
dea4bd19 | 77 | depends on NET |
842891be BA |
78 | select QCOM_QMI_HELPERS |
79 | help | |
80 | Build an QMI client sample driver, which demonstrates how to | |
81 | communicate with a remote QRTR service, using QMI encoded messages. | |
82 | ||
779b96d2 OBC |
83 | config SAMPLE_RPMSG_CLIENT |
84 | tristate "Build rpmsg client sample -- loadable modules only" | |
85 | depends on RPMSG && m | |
86 | help | |
87 | Build an rpmsg client sample driver, which demonstrates how | |
88 | to communicate with an AMP-configured remote processor over | |
89 | the rpmsg bus. | |
90 | ||
12cf89b5 | 91 | config SAMPLE_LIVEPATCH |
439e7271 | 92 | tristate "Build live patching samples -- loadable modules only" |
12cf89b5 | 93 | depends on LIVEPATCH && m |
13d1cf7e | 94 | help |
439e7271 | 95 | Build sample live patch demonstrations. |
13d1cf7e | 96 | |
51798222 CH |
97 | config SAMPLE_CONFIGFS |
98 | tristate "Build configfs patching sample -- loadable modules only" | |
99 | depends on CONFIGFS_FS && m | |
100 | help | |
101 | Builds a sample configfs interface. | |
102 | ||
14fbff6b AB |
103 | config SAMPLE_CONNECTOR |
104 | tristate "Build connector sample -- loadable modules only" | |
e949f4c2 | 105 | depends on CONNECTOR && HEADERS_INSTALL && m |
14fbff6b AB |
106 | help |
107 | When enabled, this builds both a sample kernel module for | |
108 | the connector interface and a user space tool to communicate | |
109 | with it. | |
baa293e9 | 110 | See also Documentation/driver-api/connector.rst |
14fbff6b | 111 | |
e949f4c2 MY |
112 | config SAMPLE_HIDRAW |
113 | bool "hidraw sample" | |
114 | depends on HEADERS_INSTALL | |
115 | ||
116 | config SAMPLE_PIDFD | |
117 | bool "pidfd sample" | |
118 | depends on HEADERS_INSTALL | |
119 | ||
f6041c1d | 120 | config SAMPLE_SECCOMP |
7206c124 | 121 | bool "Build seccomp sample code" |
e949f4c2 | 122 | depends on SECCOMP_FILTER && HEADERS_INSTALL |
f6041c1d OJ |
123 | help |
124 | Build samples of seccomp filters using various methods of | |
125 | BPF filter construction. | |
126 | ||
08c1a4ef AW |
127 | config SAMPLE_VFIO_MDEV_MTTY |
128 | tristate "Build VFIO mtty example mediated device sample code -- loadable modules only" | |
129 | depends on VFIO_MDEV_DEVICE && m | |
130 | help | |
131 | Build a virtual tty sample driver for use as a VFIO | |
132 | mediated device | |
133 | ||
d61fc96f GH |
134 | config SAMPLE_VFIO_MDEV_MDPY |
135 | tristate "Build VFIO mdpy example mediated device sample code -- loadable modules only" | |
136 | depends on VFIO_MDEV_DEVICE && m | |
137 | help | |
138 | Build a virtual display sample driver for use as a VFIO | |
139 | mediated device. It is a simple framebuffer and supports | |
140 | the region display interface (VFIO_GFX_PLANE_TYPE_REGION). | |
141 | ||
cacade19 GH |
142 | config SAMPLE_VFIO_MDEV_MDPY_FB |
143 | tristate "Build VFIO mdpy example guest fbdev driver -- loadable module only" | |
144 | depends on FB && m | |
145 | select FB_CFB_FILLRECT | |
146 | select FB_CFB_COPYAREA | |
147 | select FB_CFB_IMAGEBLIT | |
148 | help | |
149 | Guest fbdev driver for the virtual display sample driver. | |
150 | ||
a5e6e650 GH |
151 | config SAMPLE_VFIO_MDEV_MBOCHS |
152 | tristate "Build VFIO mdpy example mediated device sample code -- loadable modules only" | |
153 | depends on VFIO_MDEV_DEVICE && m | |
c1abca96 | 154 | select DMA_SHARED_BUFFER |
a5e6e650 GH |
155 | help |
156 | Build a virtual display sample driver for use as a VFIO | |
157 | mediated device. It supports the region display interface | |
158 | (VFIO_GFX_PLANE_TYPE_DMABUF). | |
159 | Emulate enough of qemu stdvga to make bochs-drm.ko happy. | |
160 | That is basically the vram memory bar and the bochs dispi | |
161 | interface vbe registers in the mmio register bar. | |
162 | Specifically it does *not* include any legacy vga stuff. | |
163 | Device looks a lot like "qemu -device secondary-vga". | |
164 | ||
9762dc14 CB |
165 | config SAMPLE_ANDROID_BINDERFS |
166 | bool "Build Android binderfs example" | |
167 | depends on CONFIG_ANDROID_BINDERFS | |
168 | help | |
169 | Builds a sample program to illustrate the use of the Android binderfs | |
170 | filesystem. | |
171 | ||
f1b5618e DH |
172 | config SAMPLE_VFS |
173 | bool "Build example programs that use new VFS system calls" | |
e949f4c2 | 174 | depends on HEADERS_INSTALL |
a528d35e | 175 | help |
f1b5618e DH |
176 | Build example userspace programs that use new VFS system calls such |
177 | as mount API and statx(). Note that this is restricted to the x86 | |
178 | arch whilst it accesses system calls that aren't yet in all arches. | |
a528d35e | 179 | |
267c4025 | 180 | endif # SAMPLES |