blob: 40728491f37b6a46be7e59399c6530263d2d40c1 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Linus Torvalds1da177e2005-04-16 15:20:36 -07002#
3# Character device configuration
4#
5
6menu "Character devices"
7
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -08008source "drivers/tty/Kconfig"
Antonino A. Daplas13ae6642006-06-26 00:27:12 -07009
Rob Ward73f07182014-12-07 15:40:33 +000010config DEVMEM
11 bool "/dev/mem virtual device support"
12 default y
13 help
14 Say Y here if you want to support the /dev/mem device.
15 The /dev/mem device is used to access areas of physical
16 memory.
17 When in doubt, say "Y".
18
Arjan van de Venb781ecb2008-04-29 00:58:34 -070019config DEVKMEM
20 bool "/dev/kmem virtual device support"
Ard Biesheuvel06c35ef2017-06-20 08:59:00 +020021 # On arm64, VMALLOC_START < PAGE_OFFSET, which confuses kmem read/write
22 depends on !ARM64
Arjan van de Venb781ecb2008-04-29 00:58:34 -070023 help
24 Say Y here if you want to support the /dev/kmem device. The
25 /dev/kmem device is rarely used, but can be used for certain
26 kind of kernel debugging operations.
27 When in doubt, say "N".
28
Linus Torvalds1da177e2005-04-16 15:20:36 -070029config SGI_SNSC
30 bool "SGI Altix system controller communication support"
31 depends on (IA64_SGI_SN2 || IA64_GENERIC)
32 help
33 If you have an SGI Altix and you want to enable system
34 controller communication from user space (you want this!),
35 say Y. Otherwise, say N.
36
Bruce Losuree1e19742005-04-25 13:09:41 -070037config SGI_TIOCX
38 bool "SGI TIO CX driver support"
39 depends on (IA64_SGI_SN2 || IA64_GENERIC)
40 help
41 If you have an SGI Altix and you have fpga devices attached
42 to your TIO, say Y here, otherwise say N.
43
44config SGI_MBCS
45 tristate "SGI FPGA Core Services driver support"
Bruce Losureae40aae2005-04-04 13:23:00 -070046 depends on SGI_TIOCX
Bruce Losuree1e19742005-04-25 13:09:41 -070047 help
48 If you have an SGI Altix with an attached SABrick
49 say Y or M here, otherwise say N.
50
Greg Kroah-Hartmanab4382d2011-01-13 12:10:18 -080051source "drivers/tty/serial/Kconfig"
Rob Herringcd6484e2017-02-02 13:48:07 -060052source "drivers/tty/serdev/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -070053
Samo Pogacnik24b4b672010-08-25 20:44:07 +020054config TTY_PRINTK
Takashi Iwaib24313a2014-04-02 14:45:22 +020055 tristate "TTY driver to output user messages via printk"
Joe Millenbach4f73bc42013-01-17 22:44:22 -080056 depends on EXPERT && TTY
Samo Pogacnik24b4b672010-08-25 20:44:07 +020057 default n
58 ---help---
59 If you say Y here, the support for writing user messages (i.e.
60 console messages) via printk is available.
61
62 The feature is useful to inline user messages with kernel
63 messages.
64 In order to use this feature, you should output user messages
65 to /dev/ttyprintk or redirect console to this TTY.
66
67 If unsure, say N.
68
Linus Torvalds1da177e2005-04-16 15:20:36 -070069config PRINTER
70 tristate "Parallel printer support"
71 depends on PARPORT
72 ---help---
73 If you intend to attach a printer to the parallel port of your Linux
74 box (as opposed to using a serial printer; if the connector at the
75 printer has 9 or 25 holes ["female"], then it's serial), say Y.
76 Also read the Printing-HOWTO, available from
77 <http://www.tldp.org/docs.html#howto>.
78
79 It is possible to share one parallel port among several devices
80 (e.g. printer and ZIP drive) and it is safe to compile the
81 corresponding drivers into the kernel.
82
83 To compile this driver as a module, choose M here and read
Mauro Carvalho Chehab5fb94e92018-05-08 15:14:57 -030084 <file:Documentation/admin-guide/parport.rst>. The module will be called lp.
Linus Torvalds1da177e2005-04-16 15:20:36 -070085
86 If you have several parallel ports, you can specify which ports to
87 use with the "lp" kernel command line option. (Try "man bootparam"
88 or see the documentation of your boot loader (lilo or loadlin) about
89 how to pass options to the kernel at boot time.) The syntax of the
90 "lp" command line option can be found in <file:drivers/char/lp.c>.
91
92 If you have more than 8 printers, you need to increase the LP_NO
93 macro in lp.c and the PARPORT_MAX macro in parport.h.
94
95config LP_CONSOLE
96 bool "Support for console on line printer"
97 depends on PRINTER
98 ---help---
99 If you want kernel messages to be printed out as they occur, you
100 can have a console on the printer. This option adds support for
101 doing that; to actually get it to happen you need to pass the
102 option "console=lp0" to the kernel at boot time.
103
104 If the printer is out of paper (or off, or unplugged, or too
105 busy..) the kernel will stall until the printer is ready again.
106 By defining CONSOLE_LP_STRICT to 0 (at your own risk) you
107 can make the kernel continue when this happens,
108 but it'll lose the kernel messages.
109
110 If unsure, say N.
111
112config PPDEV
113 tristate "Support for user-space parallel port device drivers"
114 depends on PARPORT
115 ---help---
116 Saying Y to this adds support for /dev/parport device nodes. This
117 is needed for programs that want portable access to the parallel
118 port, for instance deviceid (which displays Plug-and-Play device
119 IDs).
120
121 This is the parallel port equivalent of SCSI generic support (sg).
122 It is safe to say N to this -- it is not needed for normal printing
123 or parallel port CD-ROM/disk support.
124
125 To compile this driver as a module, choose M here: the
126 module will be called ppdev.
127
128 If unsure, say N.
129
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -0800130source "drivers/tty/hvc/Kconfig"
Mike Frysinger5427bcf2011-02-04 20:45:49 -0500131
Rusty Russell31610432007-10-22 11:03:39 +1000132config VIRTIO_CONSOLE
Christian Borntraeger7721c492008-07-25 12:06:06 -0500133 tristate "Virtio console"
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800134 depends on VIRTIO && TTY
Rusty Russell31610432007-10-22 11:03:39 +1000135 select HVC_DRIVER
Christian Borntraeger7721c492008-07-25 12:06:06 -0500136 help
Juergen Grossecda85e2017-08-16 19:31:57 +0200137 Virtio console for use with hypervisors.
Christian Borntraeger7721c492008-07-25 12:06:06 -0500138
Amit Shahfb08bd22009-12-21 21:36:04 +0530139 Also serves as a general-purpose serial device for data
140 transfer between the guest and host. Character devices at
141 /dev/vportNpn will be created when corresponding ports are
142 found, where N is the device number and n is the port number
143 within that device. If specified by the host, a sysfs
144 attribute called 'name' will be populated with a name for
145 the port which can be used by udev scripts to create a
146 symlink to the device.
Rusty Russell31610432007-10-22 11:03:39 +1000147
Sonny Raofe9e8d52008-07-08 15:45:11 +1000148config IBM_BSR
149 tristate "IBM POWER Barrier Synchronization Register support"
150 depends on PPC_PSERIES
151 help
152 This devices exposes a hardware mechanism for fast synchronization
153 of threads across a large system which avoids bouncing a cacheline
154 between several cores on a system
155
Suraj Jitindar Singh43a1dd92016-06-29 13:38:39 +1000156config POWERNV_OP_PANEL
157 tristate "IBM POWERNV Operator Panel Display support"
158 depends on PPC_POWERNV
159 default m
160 help
161 If you say Y here, a special character device node, /dev/op_panel,
162 will be created which exposes the operator panel display on IBM
163 Power Systems machines with FSPs.
164
165 If you don't require access to the operator panel display from user
166 space, say N.
167
168 If unsure, say M here to build it as a module called powernv-op-panel.
169
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170source "drivers/char/ipmi/Kconfig"
171
Linus Torvalds1da177e2005-04-16 15:20:36 -0700172config DS1620
173 tristate "NetWinder thermometer support"
174 depends on ARCH_NETWINDER
175 help
176 Say Y here to include support for the thermal management hardware
177 found in the NetWinder. This driver allows the user to control the
178 temperature set points and to read the current temperature.
179
180 It is also possible to say M here to build it as a module (ds1620)
181 It is recommended to be used on a NetWinder, but it is not a
182 necessity.
183
184config NWBUTTON
185 tristate "NetWinder Button"
186 depends on ARCH_NETWINDER
187 ---help---
188 If you say Y here and create a character device node /dev/nwbutton
189 with major and minor numbers 10 and 158 ("man mknod"), then every
190 time the orange button is pressed a number of times, the number of
191 times the button was pressed will be written to that device.
192
193 This is most useful for applications, as yet unwritten, which
194 perform actions based on how many times the button is pressed in a
195 row.
196
197 Do not hold the button down for too long, as the driver does not
198 alter the behaviour of the hardware reset circuitry attached to the
199 button; it will still execute a hard reset if the button is held
200 down for longer than approximately five seconds.
201
202 To compile this driver as a module, choose M here: the
203 module will be called nwbutton.
204
205 Most people will answer Y to this question and "Reboot Using Button"
206 below to be able to initiate a system shutdown from the button.
207
208config NWBUTTON_REBOOT
209 bool "Reboot Using Button"
210 depends on NWBUTTON
211 help
212 If you say Y here, then you will be able to initiate a system
213 shutdown and reboot by pressing the orange button a number of times.
214 The number of presses to initiate the shutdown is two by default,
215 but this can be altered by modifying the value of NUM_PRESSES_REBOOT
216 in nwbutton.h and recompiling the driver or, if you compile the
217 driver as a module, you can specify the number of presses at load
218 time with "insmod button reboot_count=<something>".
219
220config NWFLASH
221 tristate "NetWinder flash support"
222 depends on ARCH_NETWINDER
223 ---help---
224 If you say Y here and create a character device /dev/flash with
225 major 10 and minor 160 you can manipulate the flash ROM containing
226 the NetWinder firmware. Be careful as accidentally overwriting the
227 flash contents can render your computer unbootable. On no account
228 allow random users access to this device. :-)
229
230 To compile this driver as a module, choose M here: the
231 module will be called nwflash.
232
233 If you're not sure, say N.
234
Michael Buesch844dd052006-06-26 00:24:59 -0700235source "drivers/char/hw_random/Kconfig"
236
Linus Torvalds1da177e2005-04-16 15:20:36 -0700237config NVRAM
238 tristate "/dev/nvram support"
Alexandre Belloni3ba9fae2018-02-06 23:05:34 +0100239 depends on ATARI || X86 || GENERIC_NVRAM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700240 ---help---
241 If you say Y here and create a character special file /dev/nvram
242 with major number 10 and minor number 144 using mknod ("man mknod"),
243 you get read and write access to the extra bytes of non-volatile
244 memory in the real time clock (RTC), which is contained in every PC
245 and most Ataris. The actual number of bytes varies, depending on the
246 nvram in the system, but is usually 114 (128-14 for the RTC).
247
248 This memory is conventionally called "CMOS RAM" on PCs and "NVRAM"
249 on Ataris. /dev/nvram may be used to view settings there, or to
250 change them (with some utility). It could also be used to frequently
251 save a few bits of very important data that may not be lost over
252 power-off and for which writing to disk is too insecure. Note
253 however that most NVRAM space in a PC belongs to the BIOS and you
254 should NEVER idly tamper with it. See Ralf Brown's interrupt list
255 for a guide to the use of CMOS bytes by your BIOS.
256
257 On Atari machines, /dev/nvram is always configured and does not need
258 to be selected.
259
260 To compile this driver as a module, choose M here: the
261 module will be called nvram.
262
David Brownellc7500902008-04-28 02:11:52 -0700263#
264# These legacy RTC drivers just cause too many conflicts with the generic
265# RTC framework ... let's not even try to coexist any more.
266#
267if RTC_LIB=n
268
Linus Torvalds1da177e2005-04-16 15:20:36 -0700269config RTC
David Brownelle6d2bb22008-06-12 15:21:55 -0700270 tristate "Enhanced Real Time Clock Support (legacy PC RTC driver)"
Arnd Bergmann5ee98ab2016-06-01 16:46:22 +0200271 depends on ALPHA || (MIPS && MACH_LOONGSON64)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700272 ---help---
273 If you say Y here and create a character special file /dev/rtc with
274 major number 10 and minor number 135 using mknod ("man mknod"), you
275 will get access to the real time clock (or hardware clock) built
276 into your computer.
277
278 Every PC has such a clock built in. It can be used to generate
279 signals from as low as 1Hz up to 8192Hz, and can also be used
280 as a 24 hour alarm. It reports status information via the file
281 /proc/driver/rtc and its behaviour is set by various ioctls on
282 /dev/rtc.
283
284 If you run Linux on a multiprocessor machine and said Y to
285 "Symmetric Multi Processing" above, you should say Y here to read
286 and set the RTC in an SMP compatible fashion.
287
288 If you think you have a use for such a device (such as periodic data
289 sampling), then say Y here, and read <file:Documentation/rtc.txt>
290 for details.
291
292 To compile this driver as a module, choose M here: the
293 module will be called rtc.
294
Al Viro22405982007-07-22 00:37:48 -0700295config JS_RTC
296 tristate "Enhanced Real Time Clock Support"
297 depends on SPARC32 && PCI
298 ---help---
299 If you say Y here and create a character special file /dev/rtc with
300 major number 10 and minor number 135 using mknod ("man mknod"), you
301 will get access to the real time clock (or hardware clock) built
302 into your computer.
303
304 Every PC has such a clock built in. It can be used to generate
305 signals from as low as 1Hz up to 8192Hz, and can also be used
306 as a 24 hour alarm. It reports status information via the file
307 /proc/driver/rtc and its behaviour is set by various ioctls on
308 /dev/rtc.
309
310 If you think you have a use for such a device (such as periodic data
311 sampling), then say Y here, and read <file:Documentation/rtc.txt>
312 for details.
313
314 To compile this driver as a module, choose M here: the
315 module will be called js-rtc.
316
Linus Torvalds1da177e2005-04-16 15:20:36 -0700317config EFI_RTC
318 bool "EFI Real Time Clock Services"
319 depends on IA64
320
David Brownellc7500902008-04-28 02:11:52 -0700321endif # RTC_LIB
322
Linus Torvalds1da177e2005-04-16 15:20:36 -0700323config DTLK
324 tristate "Double Talk PC internal speech card support"
Martin Schwidefskyeeca7a32007-05-10 15:45:56 +0200325 depends on ISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700326 help
327 This driver is for the DoubleTalk PC, a speech synthesizer
328 manufactured by RC Systems (<http://www.rcsys.com/>). It is also
329 called the `internal DoubleTalk'.
330
331 To compile this driver as a module, choose M here: the
332 module will be called dtlk.
333
Stephen Neuendorfferef141a02008-02-06 04:24:09 +1100334config XILINX_HWICAP
335 tristate "Xilinx HWICAP Support"
Michal Simek6fa612b2009-05-11 15:49:12 +0200336 depends on XILINX_VIRTEX || MICROBLAZE
Stephen Neuendorfferef141a02008-02-06 04:24:09 +1100337 help
338 This option enables support for Xilinx Internal Configuration
339 Access Port (ICAP) driver. The ICAP is used on Xilinx Virtex
340 FPGA platforms to partially reconfigure the FPGA at runtime.
341
342 If unsure, say N.
343
Linus Torvalds1da177e2005-04-16 15:20:36 -0700344config R3964
345 tristate "Siemens R3964 line discipline"
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800346 depends on TTY
Linus Torvalds1da177e2005-04-16 15:20:36 -0700347 ---help---
348 This driver allows synchronous communication with devices using the
349 Siemens R3964 packet protocol. Unless you are dealing with special
350 hardware like PLCs, you are unlikely to need this.
351
352 To compile this driver as a module, choose M here: the
353 module will be called n_r3964.
354
355 If unsure, say N.
356
357config APPLICOM
358 tristate "Applicom intelligent fieldbus card support"
359 depends on PCI
360 ---help---
361 This driver provides the kernel-side support for the intelligent
362 fieldbus cards made by Applicom International. More information
363 about these cards can be found on the WWW at the address
364 <http://www.applicom-int.com/>, or by email from David Woodhouse
365 <dwmw2@infradead.org>.
366
367 To compile this driver as a module, choose M here: the
368 module will be called applicom.
369
370 If unsure, say N.
371
372config SONYPI
Greg Kroah-Hartman65929212012-09-18 16:14:53 +0100373 tristate "Sony Vaio Programmable I/O Control Device support"
Jean Delvare57dcf022014-03-31 15:15:36 +0200374 depends on X86_32 && PCI && INPUT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700375 ---help---
376 This driver enables access to the Sony Programmable I/O Control
377 Device which can be found in many (all ?) Sony Vaio laptops.
378
379 If you have one of those laptops, read
Carlos Corbacho018a6512008-02-09 01:32:19 +0000380 <file:Documentation/laptops/sonypi.txt>, and say Y or M here.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700381
382 To compile this driver as a module, choose M here: the
383 module will be called sonypi.
384
Yoichi Yuasa09762512007-05-06 14:51:58 -0700385config GPIO_TB0219
386 tristate "TANBAC TB0219 GPIO support"
Robert P. J. Daybef1f402006-12-12 20:04:19 +0100387 depends on TANBAC_TB022X
Yoichi Yuasa584e1232006-06-25 05:49:11 -0700388 select GPIO_VR41XX
Linus Torvalds1da177e2005-04-16 15:20:36 -0700389
Linus Torvalds1da177e2005-04-16 15:20:36 -0700390source "drivers/char/pcmcia/Kconfig"
391
392config MWAVE
393 tristate "ACP Modem (Mwave) support"
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800394 depends on X86 && TTY
Linus Torvalds1da177e2005-04-16 15:20:36 -0700395 select SERIAL_8250
396 ---help---
397 The ACP modem (Mwave) for Linux is a WinModem. It is composed of a
398 kernel driver and a user level application. Together these components
399 support direct attachment to public switched telephone networks (PSTNs)
400 and support selected world wide countries.
401
402 This version of the ACP Modem driver supports the IBM Thinkpad 600E,
403 600, and 770 that include on board ACP modem hardware.
404
405 The modem also supports the standard communications port interface
406 (ttySx) and is compatible with the Hayes AT Command Set.
407
408 The user level application needed to use this driver can be found at
409 the IBM Linux Technology Center (LTC) web site:
410 <http://www.ibm.com/linux/ltc/>.
411
412 If you own one of the above IBM Thinkpads which has the Mwave chipset
413 in it, say Y.
414
415 To compile this driver as a module, choose M here: the
416 module will be called mwave.
417
418config SCx200_GPIO
419 tristate "NatSemi SCx200 GPIO Support"
420 depends on SCx200
Jim Cromie7a8e2a52006-06-27 02:54:27 -0700421 select NSC_GPIO
Linus Torvalds1da177e2005-04-16 15:20:36 -0700422 help
423 Give userspace access to the GPIO pins on the National
424 Semiconductor SCx200 processors.
425
426 If compiled as a module, it will be called scx200_gpio.
427
Jim Cromie7a8e2a52006-06-27 02:54:27 -0700428config PC8736x_GPIO
429 tristate "NatSemi PC8736x GPIO Support"
Al Viro33694652011-08-18 20:11:59 +0100430 depends on X86_32 && !UML
Jim Cromie7a8e2a52006-06-27 02:54:27 -0700431 default SCx200_GPIO # mostly N
432 select NSC_GPIO # needed for support routines
433 help
434 Give userspace access to the GPIO pins on the National
435 Semiconductor PC-8736x (x=[03456]) SuperIO chip. The chip
436 has multiple functional units, inc several managed by
437 hwmon/pc87360 driver. Tested with PC-87366
438
439 If compiled as a module, it will be called pc8736x_gpio.
440
441config NSC_GPIO
442 tristate "NatSemi Base GPIO Support"
Dave Jones699352c2006-06-29 02:24:32 -0700443 depends on X86_32
Jim Cromie7a8e2a52006-06-27 02:54:27 -0700444 # selected by SCx200_GPIO and PC8736x_GPIO
445 # what about 2 selectors differing: m != y
446 help
447 Common support used (and needed) by scx200_gpio and
448 pc8736x_gpio drivers. If those drivers are built as
449 modules, this one will be too, named nsc_gpio
450
Linus Torvalds1da177e2005-04-16 15:20:36 -0700451config RAW_DRIVER
Dave Jonesabd4aa52007-07-15 23:40:49 -0700452 tristate "RAW driver (/dev/raw/rawN)"
David Howells93614012006-09-30 20:45:40 +0200453 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700454 help
Dave Jonesabd4aa52007-07-15 23:40:49 -0700455 The raw driver permits block devices to be bound to /dev/raw/rawN.
456 Once bound, I/O against /dev/raw/rawN uses efficient zero-copy I/O.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700457 See the raw(8) manpage for more details.
458
Dave Jonesabd4aa52007-07-15 23:40:49 -0700459 Applications should preferably open the device (eg /dev/hda1)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700460 with the O_DIRECT flag.
461
Andrew Morton0de502a2005-12-12 00:37:41 -0800462config MAX_RAW_DEVS
Jan Kara0078bff2011-04-29 00:24:29 +0200463 int "Maximum number of RAW devices to support (1-65536)"
Andrew Morton0de502a2005-12-12 00:37:41 -0800464 depends on RAW_DRIVER
Paul Bolle71434792014-02-04 23:23:40 +0100465 range 1 65536
Andrew Morton0de502a2005-12-12 00:37:41 -0800466 default "256"
467 help
468 The maximum number of RAW devices that are supported.
469 Default is 256. Increase this number in case you need lots of
470 raw devices.
471
Linus Torvalds1da177e2005-04-16 15:20:36 -0700472config HPET
473 bool "HPET - High Precision Event Timer" if (X86 || IA64)
474 default n
475 depends on ACPI
476 help
477 If you say Y here, you will have a miscdevice named "/dev/hpet/". Each
478 open selects one of the timers supported by the HPET. The timers are
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100479 non-periodic and/or periodic.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700480
Linus Torvalds1da177e2005-04-16 15:20:36 -0700481config HPET_MMAP
482 bool "Allow mmap of HPET"
483 default y
484 depends on HPET
485 help
486 If you say Y here, user applications will be able to mmap
487 the HPET registers.
488
Prarit Bhargava3d035f52013-11-12 15:08:33 -0800489config HPET_MMAP_DEFAULT
490 bool "Enable HPET MMAP access by default"
491 default y
492 depends on HPET_MMAP
493 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700494 In some hardware implementations, the page containing HPET
495 registers may also contain other things that shouldn't be
Prarit Bhargava3d035f52013-11-12 15:08:33 -0800496 exposed to the user. This option selects the default (if
497 kernel parameter hpet_mmap is not set) user access to the
498 registers for applications that require it.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700499
Linus Torvalds1da177e2005-04-16 15:20:36 -0700500config HANGCHECK_TIMER
501 tristate "Hangcheck timer"
Martin Schwidefskyabf3ea12007-05-10 15:45:59 +0200502 depends on X86 || IA64 || PPC64 || S390
Linus Torvalds1da177e2005-04-16 15:20:36 -0700503 help
504 The hangcheck-timer module detects when the system has gone
505 out to lunch past a certain margin. It can reboot the system
506 or merely print a warning.
507
Dimitri Sivanichfbd8ae12009-09-23 15:57:15 -0700508config UV_MMTIMER
509 tristate "UV_MMTIMER Memory mapped RTC for SGI UV"
510 depends on X86_UV
511 default m
512 help
513 The uv_mmtimer device allows direct userspace access to the
514 UV system timer.
515
Linus Torvalds1da177e2005-04-16 15:20:36 -0700516source "drivers/char/tpm/Kconfig"
517
Mark Gross1a80ba82005-10-30 15:02:55 -0800518config TELCLOCK
Mark Gross03154a22007-03-06 13:58:45 -0800519 tristate "Telecom clock driver for ATCA SBC"
Greg Kroah-Hartman65929212012-09-18 16:14:53 +0100520 depends on X86
Mark Gross1a80ba82005-10-30 15:02:55 -0800521 default n
522 help
Mark Gross03154a22007-03-06 13:58:45 -0800523 The telecom clock device is specific to the MPCBL0010 and MPCBL0050
524 ATCA computers and allows direct userspace access to the
525 configuration of the telecom clock configuration settings. This
526 device is used for hardware synchronization across the ATCA backplane
527 fabric. Upon loading, the driver exports a sysfs directory,
528 /sys/devices/platform/telco_clock, with a number of files for
529 controlling the behavior of this hardware.
Mark Gross1a80ba82005-10-30 15:02:55 -0800530
Russell King4f911d62007-05-08 00:28:17 -0700531config DEVPORT
Max Biresf2cfa582017-01-03 08:18:07 -0800532 bool "/dev/port character device"
Russell King4f911d62007-05-08 00:28:17 -0700533 depends on ISA || PCI
534 default y
Max Biresf2cfa582017-01-03 08:18:07 -0800535 help
536 Say Y here if you want to support the /dev/port device. The /dev/port
537 device is similar to /dev/mem, but for I/O ports.
Russell King4f911d62007-05-08 00:28:17 -0700538
Martin Schwidefsky61d48c22007-05-10 15:46:00 +0200539source "drivers/s390/char/Kconfig"
540
Eli Billauer70519242014-09-09 09:36:04 +0300541source "drivers/char/xillybus/Kconfig"
542
Tom Hromatka873c38a2018-04-26 10:54:08 -0600543config ADI
544 tristate "SPARC Privileged ADI driver"
545 depends on SPARC64
546 default m
547 help
548 SPARC M7 and newer processors utilize ADI (Application Data
549 Integrity) to version and protect memory. This driver provides
550 read/write access to the ADI versions for privileged processes.
551 This feature is also known as MCD (Memory Corruption Detection)
552 and SSM (Silicon Secured Memory). Intended consumers of this
553 driver include crash and makedumpfile.
554
Linus Torvalds1da177e2005-04-16 15:20:36 -0700555endmenu
556
Theodore Ts'o39a88832018-07-17 18:24:27 -0400557config RANDOM_TRUST_CPU
558 bool "Trust the CPU manufacturer to initialize Linux's CRNG"
559 depends on X86 || S390 || PPC
560 default n
561 help
562 Assume that CPU manufacturer (e.g., Intel or AMD for RDSEED or
563 RDRAND, IBM for the S390 and Power PC architectures) is trustworthy
564 for the purposes of initializing Linux's CRNG. Since this is not
565 something that can be independently audited, this amounts to trusting
566 that CPU manufacturer (perhaps with the insistence or mandate
567 of a Nation State's intelligence or law enforcement agencies)
568 has not installed a hidden back door to compromise the CPU's
Kees Cook9b254362018-08-27 14:51:54 -0700569 random number generation facilities. This can also be configured
570 at boot with "random.trust_cpu=on/off".