1 # SPDX-License-Identifier: GPL-2.0-only
3 bool "Sample kernel code"
5 You can build and test sample kernel code here.
9 config SAMPLE_TRACE_EVENTS
10 tristate "Build trace_events examples -- loadable modules only"
11 depends on EVENT_TRACING && m
13 This build trace event example modules.
15 config SAMPLE_TRACE_PRINTK
16 tristate "Build trace_printk module - tests various trace_printk formats"
17 depends on EVENT_TRACING && m
19 This builds a module that calls trace_printk() and can be used to
20 test various trace_printk() calls from a module.
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
27 This builds an ftrace direct function example
28 that hooks to wake_up_process and prints the parameters.
30 config SAMPLE_TRACE_ARRAY
31 tristate "Build sample module for kernel access to Ftrace instancess"
32 depends on EVENT_TRACING && m
34 This builds a module that demonstrates the use of various APIs to
35 access Ftrace instances from within the kernel.
38 tristate "Build kobject examples"
40 This config option will allow you to build a number of
41 different kobject sample modules showing how to use kobjects,
42 ksets, and ktypes properly.
44 If in doubt, say "N" here.
47 tristate "Build kprobes examples -- loadable modules only"
48 depends on KPROBES && m
50 This build several kprobes example modules.
52 config SAMPLE_KRETPROBES
53 tristate "Build kretprobes example -- loadable modules only"
55 depends on SAMPLE_KPROBES && KRETPROBES
57 config SAMPLE_HW_BREAKPOINT
58 tristate "Build kernel hardware breakpoint examples -- loadable module only"
59 depends on HAVE_HW_BREAKPOINT && m
61 This builds kernel hardware breakpoint example modules.
64 tristate "Build kfifo examples -- loadable modules only"
67 This config option will allow you to build a number of
68 different kfifo sample modules showing how to use the
71 If in doubt, say "N" here.
74 tristate "Build kdb command example -- loadable modules only"
75 depends on KGDB_KDB && m
77 Build an example of how to dynamically add the hello
78 command to the kdb shell.
80 config SAMPLE_QMI_CLIENT
81 tristate "Build qmi client sample -- loadable modules only"
85 select QCOM_QMI_HELPERS
87 Build an QMI client sample driver, which demonstrates how to
88 communicate with a remote QRTR service, using QMI encoded messages.
90 config SAMPLE_RPMSG_CLIENT
91 tristate "Build rpmsg client sample -- loadable modules only"
94 Build an rpmsg client sample driver, which demonstrates how
95 to communicate with an AMP-configured remote processor over
98 config SAMPLE_LIVEPATCH
99 tristate "Build live patching samples -- loadable modules only"
100 depends on LIVEPATCH && m
102 Build sample live patch demonstrations.
104 config SAMPLE_CONFIGFS
105 tristate "Build configfs patching sample -- loadable modules only"
106 depends on CONFIGFS_FS && m
108 Builds a sample configfs interface.
110 config SAMPLE_CONNECTOR
111 tristate "Build connector sample -- loadable modules only"
112 depends on CONNECTOR && HEADERS_INSTALL && m
114 When enabled, this builds both a sample kernel module for
115 the connector interface and a user space tool to communicate
117 See also Documentation/driver-api/connector.rst
121 depends on HEADERS_INSTALL
125 depends on HEADERS_INSTALL
127 config SAMPLE_SECCOMP
128 bool "Build seccomp sample code"
129 depends on SECCOMP_FILTER && HEADERS_INSTALL
131 Build samples of seccomp filters using various methods of
132 BPF filter construction.
134 config SAMPLE_VFIO_MDEV_MTTY
135 tristate "Build VFIO mtty example mediated device sample code -- loadable modules only"
136 depends on VFIO_MDEV_DEVICE && m
138 Build a virtual tty sample driver for use as a VFIO
141 config SAMPLE_VFIO_MDEV_MDPY
142 tristate "Build VFIO mdpy example mediated device sample code -- loadable modules only"
143 depends on VFIO_MDEV_DEVICE && m
145 Build a virtual display sample driver for use as a VFIO
146 mediated device. It is a simple framebuffer and supports
147 the region display interface (VFIO_GFX_PLANE_TYPE_REGION).
149 config SAMPLE_VFIO_MDEV_MDPY_FB
150 tristate "Build VFIO mdpy example guest fbdev driver -- loadable module only"
152 select FB_CFB_FILLRECT
153 select FB_CFB_COPYAREA
154 select FB_CFB_IMAGEBLIT
156 Guest fbdev driver for the virtual display sample driver.
158 config SAMPLE_VFIO_MDEV_MBOCHS
159 tristate "Build VFIO mdpy example mediated device sample code -- loadable modules only"
160 depends on VFIO_MDEV_DEVICE && m
161 select DMA_SHARED_BUFFER
163 Build a virtual display sample driver for use as a VFIO
164 mediated device. It supports the region display interface
165 (VFIO_GFX_PLANE_TYPE_DMABUF).
166 Emulate enough of qemu stdvga to make bochs-drm.ko happy.
167 That is basically the vram memory bar and the bochs dispi
168 interface vbe registers in the mmio register bar.
169 Specifically it does *not* include any legacy vga stuff.
170 Device looks a lot like "qemu -device secondary-vga".
172 config SAMPLE_ANDROID_BINDERFS
173 bool "Build Android binderfs example"
174 depends on CONFIG_ANDROID_BINDERFS
176 Builds a sample program to illustrate the use of the Android binderfs
180 bool "Build example programs that use new VFS system calls"
181 depends on HEADERS_INSTALL
183 Build example userspace programs that use new VFS system calls such
184 as mount API and statx(). Note that this is restricted to the x86
185 arch whilst it accesses system calls that aren't yet in all arches.
187 config SAMPLE_INTEL_MEI
188 bool "Build example program working with intel mei driver"
191 Build a sample program to work with mei device.