Kconfig 45 KB
Newer Older
Linus Torvalds's avatar
Linus Torvalds committed
1
2
3
4
5
#
# Serial device configuration
#

menu "Serial drivers"
6
	depends on HAS_IOMEM
Linus Torvalds's avatar
Linus Torvalds committed
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

#
# The new 8250/16550 serial drivers
config SERIAL_8250
	tristate "8250/16550 and compatible serial support"
	select SERIAL_CORE
	---help---
	  This selects whether you want to include the driver for the standard
	  serial ports.  The standard answer is Y.  People who might say N
	  here are those that are setting up dedicated Ethernet WWW/FTP
	  servers, or users that have one of the various bus mice instead of a
	  serial mouse and don't intend to use their machine's standard serial
	  port for anything.  (Note that the Cyclades and Stallion multi
	  serial port drivers do not need this driver built in for them to
	  work.)

	  To compile this driver as a module, choose M here: the
24
	  module will be called 8250.
Linus Torvalds's avatar
Linus Torvalds committed
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
	  [WARNING: Do not compile this driver as a module if you are using
	  non-standard serial ports, since the configuration information will
	  be lost when the driver is unloaded.  This limitation may be lifted
	  in the future.]

	  BTW1: If you have a mouseman serial mouse which is not recognized by
	  the X window system, try running gpm first.

	  BTW2: If you intend to use a software modem (also called Winmodem)
	  under Linux, forget it.  These modems are crippled and require
	  proprietary drivers which are only available under Windows.

	  Most people will say Y or M here, so that they can use serial mice,
	  modems and similar devices connecting to the standard serial ports.

config SERIAL_8250_CONSOLE
	bool "Console on 8250/16550 and compatible serial port"
	depends on SERIAL_8250=y
	select SERIAL_CORE_CONSOLE
	---help---
	  If you say Y here, it will be possible to use a serial port as the
	  system console (the system console is the device which receives all
	  kernel messages and warnings and which allows logins in single user
	  mode). This could be useful if some terminal or printer is connected
	  to that serial port.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyS1". (Try "man bootparam" or see the documentation of
	  your boot loader (grub or lilo or loadlin) about how to pass options
	  to the kernel at boot time.)

	  If you don't have a VGA card installed and you say Y here, the
	  kernel will automatically use the first serial line, /dev/ttyS0, as
	  system console.

Matt LaPlante's avatar
Matt LaPlante committed
62
	  You can set that using a kernel command line option such as
63
64
	  "console=uart8250,io,0x3f8,9600n8"
	  "console=uart8250,mmio,0xff5e0000,115200n8".
Matt LaPlante's avatar
Matt LaPlante committed
65
66
	  and it will switch to normal serial console when the corresponding 
	  port is ready.
67
68
69
70
	  "earlycon=uart8250,io,0x3f8,9600n8"
	  "earlycon=uart8250,mmio,0xff5e0000,115200n8".
	  it will not only setup early console.

Linus Torvalds's avatar
Linus Torvalds committed
71
72
	  If unsure, say N.

73
74
75
76
77
config FIX_EARLYCON_MEM
	bool
	depends on X86
	default y

78
79
80
81
82
83
84
85
86
87
config SERIAL_8250_GSC
	tristate
	depends on SERIAL_8250 && GSC
	default SERIAL_8250

config SERIAL_8250_PCI
	tristate "8250/16550 PCI device support" if EMBEDDED
	depends on SERIAL_8250 && PCI
	default SERIAL_8250
	help
88
89
90
	  This builds standard PCI serial support. You may be able to
	  disable this feature if you only need legacy serial support.
	  Saves about 9K.
91
92
93
94
95
96

config SERIAL_8250_PNP
	tristate "8250/16550 PNP device support" if EMBEDDED
	depends on SERIAL_8250 && PNP
	default SERIAL_8250
	help
97
98
	  This builds standard PNP serial support. You may be able to
	  disable this feature if you only need legacy serial support.
99
100
101
102
103
104

config SERIAL_8250_HP300
	tristate
	depends on SERIAL_8250 && HP300
	default SERIAL_8250

Linus Torvalds's avatar
Linus Torvalds committed
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
config SERIAL_8250_CS
	tristate "8250/16550 PCMCIA device support"
	depends on PCMCIA && SERIAL_8250
	---help---
	  Say Y here to enable support for 16-bit PCMCIA serial devices,
	  including serial port cards, modems, and the modem functions of
	  multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are
	  credit-card size devices often used with laptops.)

	  To compile this driver as a module, choose M here: the
	  module will be called serial_cs.

	  If unsure, say N.

config SERIAL_8250_NR_UARTS
120
	int "Maximum number of 8250/16550 serial ports"
Linus Torvalds's avatar
Linus Torvalds committed
121
122
	depends on SERIAL_8250
	default "4"
123
124
125
126
127
	help
	  Set this to the number of serial ports you want the driver
	  to support.  This includes any ports discovered via ACPI or
	  PCI enumeration and any ports that may be added at run-time
	  via hot-plug, or any ISA multi-port serial cards.
Linus Torvalds's avatar
Linus Torvalds committed
128

129
130
131
config SERIAL_8250_RUNTIME_UARTS
	int "Number of 8250/16550 serial ports to register at runtime"
	depends on SERIAL_8250
132
	range 0 SERIAL_8250_NR_UARTS
133
134
135
	default "4"
	help
	  Set this to the maximum number of serial ports you want
Matt LaPlante's avatar
Matt LaPlante committed
136
	  the kernel to register at boot time.  This can be overridden
137
138
139
	  with the module parameter "nr_uarts", or boot-time parameter
	  8250.nr_uarts

Linus Torvalds's avatar
Linus Torvalds committed
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
config SERIAL_8250_EXTENDED
	bool "Extended 8250/16550 serial driver options"
	depends on SERIAL_8250
	help
	  If you wish to use any non-standard features of the standard "dumb"
	  driver, say Y here. This includes HUB6 support, shared serial
	  interrupts, special multiport support, support for more than the
	  four COM 1/2/3/4 boards, etc.

	  Note that the answer to this question won't directly affect the
	  kernel: saying N will just cause the configurator to skip all
	  the questions about serial driver options. If unsure, say N.

config SERIAL_8250_MANY_PORTS
	bool "Support more than 4 legacy serial ports"
	depends on SERIAL_8250_EXTENDED && !IA64
	help
	  Say Y here if you have dumb serial boards other than the four
	  standard COM 1/2/3/4 ports. This may happen if you have an AST
	  FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available
	  from <http://www.tldp.org/docs.html#howto>), or other custom
	  serial port hardware which acts similar to standard serial port
	  hardware. If you only use the standard COM 1/2/3/4 ports, you can
	  say N here to save some memory. You can also say Y if you have an
	  "intelligent" multiport card such as Cyclades, Digiboards, etc.

166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
#
# Multi-port serial cards
#

config SERIAL_8250_FOURPORT
	tristate "Support Fourport cards"
	depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
	help
	  Say Y here if you have an AST FourPort serial board.

	  To compile this driver as a module, choose M here: the module
	  will be called 8250_fourport.

config SERIAL_8250_ACCENT
	tristate "Support Accent cards"
	depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
	help
	  Say Y here if you have an Accent Async serial board.

	  To compile this driver as a module, choose M here: the module
	  will be called 8250_accent.

config SERIAL_8250_BOCA
	tristate "Support Boca cards"
	depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
	help
	  Say Y here if you have a Boca serial board.  Please read the Boca
Matt LaPlante's avatar
Matt LaPlante committed
193
	  mini-HOWTO, available from <http://www.tldp.org/docs.html#howto>
194
195
196
197

	  To compile this driver as a module, choose M here: the module
	  will be called 8250_boca.

198
199
200
201
202
203
204
205
206
207
208
config SERIAL_8250_EXAR_ST16C554
	tristate "Support Exar ST16C554/554D Quad UART"
	depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
	help
	  The Uplogix Envoy TU301 uses this Exar Quad UART.  If you are
	  tinkering with your Envoy TU301, or have a machine with this UART,
	  say Y here.

	  To compile this driver as a module, choose M here: the module
	  will be called 8250_exar_st16c554.

209
210
211
212
213
214
215
216
217
config SERIAL_8250_HUB6
	tristate "Support Hub6 cards"
	depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
	help
	  Say Y here if you have a HUB6 serial board.

	  To compile this driver as a module, choose M here: the module
	  will be called 8250_hub6.

218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
config SERIAL_8250_SHARE_IRQ
	bool "Support for sharing serial interrupts"
	depends on SERIAL_8250_EXTENDED
	help
	  Some serial boards have hardware support which allows multiple dumb
	  serial ports on the same board to share a single IRQ. To enable
	  support for this in the serial driver, say Y here.

config SERIAL_8250_DETECT_IRQ
	bool "Autodetect IRQ on standard ports (unsafe)"
	depends on SERIAL_8250_EXTENDED
	help
	  Say Y here if you want the kernel to try to guess which IRQ
	  to use for your serial port.

	  This is considered unsafe; it is far better to configure the IRQ in
	  a boot script using the setserial command.

	  If unsure, say N.

config SERIAL_8250_RSA
	bool "Support RSA serial ports"
	depends on SERIAL_8250_EXTENDED
	help
	  ::: To be written :::

244
245
246
247
248
249
250
251
config SERIAL_8250_MCA
	tristate "Support 8250-type ports on MCA buses"
	depends on SERIAL_8250 != n && MCA
	help
	  Say Y here if you have a MCA serial ports.

	  To compile this driver as a module, choose M here: the module
	  will be called 8250_mca.
Linus Torvalds's avatar
Linus Torvalds committed
252
253
254

config SERIAL_8250_ACORN
	tristate "Acorn expansion card serial port support"
255
	depends on ARCH_ACORN && SERIAL_8250
Linus Torvalds's avatar
Linus Torvalds committed
256
257
258
259
260
	help
	  If you have an Atomwide Serial card or Serial Port card for an Acorn
	  system, say Y to this option.  The driver can handle 1, 2, or 3 port
	  cards.  If unsure, say N.

261
config SERIAL_8250_AU1X00
262
	bool "Au1x00 serial port support"
263
264
	depends on SERIAL_8250 != n && SOC_AU1X00
	help
265
266
267
	  If you have an Au1x00 SOC based board and want to use the serial port,
	  say Y to this option. The driver can handle up to 4 serial ports,
	  depending on the SOC. If unsure, say N.
268

Thomas Koeller's avatar
Thomas Koeller committed
269
270
271
272
273
274
275
276
277
config SERIAL_8250_RM9K
	bool "Support for MIPS RM9xxx integrated serial port"
	depends on SERIAL_8250 != n && SERIAL_RM9000
	select SERIAL_8250_SHARE_IRQ
	help
	  Selecting this option will add support for the integrated serial
	  port hardware found on MIPS RM9122 and similar processors.
	  If unsure, say N.

278
279
comment "Non-8250 serial port support"

Linus Torvalds's avatar
Linus Torvalds committed
280
281
config SERIAL_AMBA_PL010
	tristate "ARM AMBA PL010 serial port support"
282
	depends on ARM_AMBA && (BROKEN || !ARCH_VERSATILE)
Linus Torvalds's avatar
Linus Torvalds committed
283
284
285
	select SERIAL_CORE
	help
	  This selects the ARM(R) AMBA(R) PrimeCell PL010 UART.  If you have
286
287
	  an Integrator/AP or Integrator/PP2 platform, or if you have a
	  Cirrus Logic EP93xx CPU, say Y or M here.
Linus Torvalds's avatar
Linus Torvalds committed
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329

	  If unsure, say N.

config SERIAL_AMBA_PL010_CONSOLE
	bool "Support for console on AMBA serial port"
	depends on SERIAL_AMBA_PL010=y
	select SERIAL_CORE_CONSOLE
	---help---
	  Say Y here if you wish to use an AMBA PrimeCell UART as the system
	  console (the system console is the device which receives all kernel
	  messages and warnings and which allows logins in single user mode).

	  Even if you say Y here, the currently visible framebuffer console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyAM0". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config SERIAL_AMBA_PL011
	tristate "ARM AMBA PL011 serial port support"
	depends on ARM_AMBA
	select SERIAL_CORE
	help
	  This selects the ARM(R) AMBA(R) PrimeCell PL011 UART.  If you have
	  an Integrator/PP2, Integrator/CP or Versatile platform, say Y or M
	  here.

	  If unsure, say N.

config SERIAL_AMBA_PL011_CONSOLE
	bool "Support for console on AMBA serial port"
	depends on SERIAL_AMBA_PL011=y
	select SERIAL_CORE_CONSOLE
	---help---
	  Say Y here if you wish to use an AMBA PrimeCell UART as the system
	  console (the system console is the device which receives all kernel
	  messages and warnings and which allows logins in single user mode).

	  Even if you say Y here, the currently visible framebuffer console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
330
	  "console=ttyAMA0". (Try "man bootparam" or see the documentation of
Linus Torvalds's avatar
Linus Torvalds committed
331
332
333
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
config SERIAL_SB1250_DUART
	tristate "BCM1xxx on-chip DUART serial support"
	depends on SIBYTE_SB1xxx_SOC=y
	select SERIAL_CORE
	default y
	---help---
	  Support for the asynchronous serial interface (DUART) included in
	  the BCM1250 and derived System-On-a-Chip (SOC) devices.  Note that
	  the letter D in DUART stands for "dual", which is how the device
	  is implemented.  Depending on the SOC configuration there may be
	  one or more DUARTs available of which all are handled.

	  If unsure, say Y.  To compile this driver as a module, choose M here:
	  the module will be called sb1250-duart.

config SERIAL_SB1250_DUART_CONSOLE
	bool "Support for console on a BCM1xxx DUART serial port"
	depends on SERIAL_SB1250_DUART=y
	select SERIAL_CORE_CONSOLE
	default y
	---help---
	  If you say Y here, it will be possible to use a serial port as the
	  system console (the system console is the device which receives all
	  kernel messages and warnings and which allows logins in single user
	  mode).

	  If unsure, say Y.

362
363
config SERIAL_ATMEL
	bool "AT91 / AT32 on-chip serial port support"
364
	depends on (ARM && ARCH_AT91) || AVR32
365
366
	select SERIAL_CORE
	help
367
	  This enables the driver for the on-chip UARTs of the Atmel
368
	  AT91 and AT32 processors.
369

370
371
372
config SERIAL_ATMEL_CONSOLE
	bool "Support for console on AT91 / AT32 serial port"
	depends on SERIAL_ATMEL=y
373
374
	select SERIAL_CORE_CONSOLE
	help
375
376
377
378
	  Say Y here if you wish to use an on-chip UART on a Atmel
	  AT91 or AT32 processor as the system console (the system
	  console is the device which receives all kernel messages and
	  warnings and which allows logins in single user mode).
379

Chip Coldwell's avatar
Chip Coldwell committed
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
config SERIAL_ATMEL_PDC
	bool "Support DMA transfers on AT91 / AT32 serial port"
	depends on SERIAL_ATMEL
	default y
	help
	  Say Y here if you wish to use the PDC to do DMA transfers to
	  and from the Atmel AT91 / AT32 serial port. In order to
	  actually use DMA transfers, make sure that the use_dma_tx
	  and use_dma_rx members in the atmel_uart_data struct is set
	  appropriately for each port.

	  Note that break and error handling currently doesn't work
	  properly when DMA is enabled. Make sure that ports where
	  this matters don't use DMA.

395
config SERIAL_ATMEL_TTYAT
396
	bool "Install as device ttyATn instead of ttySn"
397
	depends on SERIAL_ATMEL=y
398
	help
399
400
401
402
403
	  Say Y here if you wish to have the internal AT91 / AT32 UARTs
	  appear as /dev/ttyATn (major 204, minor starting at 154)
	  instead of the normal /dev/ttySn (major 4, minor starting at
	  64). This is necessary if you also want other UARTs, such as
	  external 8250/16C550 compatible UARTs.
404
405
406
407
408
409
410
411
	  The ttySn nodes are legally reserved for the 8250 serial driver
	  but are often misused by other serial drivers.

	  To use this, you should create suitable ttyATn device nodes in
	  /dev/, and pass "console=ttyATn" to the kernel.

	  Say Y if you have an external 8250/16C550 UART.  If unsure, say N.

412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
config SERIAL_KS8695
	bool "Micrel KS8695 (Centaur) serial port support"
	depends on ARCH_KS8695
	select SERIAL_CORE
	help
	  This selects the Micrel Centaur KS8695 UART.  Say Y here.

config SERIAL_KS8695_CONSOLE
	bool "Support for console on KS8695 (Centaur) serial port"
	depends on SERIAL_KS8695=y
	select SERIAL_CORE_CONSOLE
	help
	  Say Y here if you wish to use a KS8695 (Centaur) UART as the
	  system console (the system console is the device which
	  receives all kernel messages and warnings and which allows
	  logins in single user mode).

Linus Torvalds's avatar
Linus Torvalds committed
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
config SERIAL_CLPS711X
	tristate "CLPS711X serial port support"
	depends on ARM && ARCH_CLPS711X
	select SERIAL_CORE
	help
	  ::: To be written :::

config SERIAL_CLPS711X_CONSOLE
	bool "Support for console on CLPS711X serial port"
	depends on SERIAL_CLPS711X=y
	select SERIAL_CORE_CONSOLE
	help
	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyCL1". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

448
449
config SERIAL_SAMSUNG
	tristate "Samsung SoC serial support"
450
	depends on ARM && PLAT_S3C
451
	select SERIAL_CORE
Linus Torvalds's avatar
Linus Torvalds committed
452
	help
453
	  Support for the on-chip UARTs on the Samsung S3C24XX series CPUs,
Linus Torvalds's avatar
Linus Torvalds committed
454
455
456
457
	  providing /dev/ttySAC0, 1 and 2 (note, some machines may not
	  provide all of these ports, depending on how the serial port
	  pins are configured.

458
459
config SERIAL_SAMSUNG_UARTS
	int
460
	depends on ARM && PLAT_S3C
461
462
463
464
465
466
467
	default 2 if ARCH_S3C2400
	default 4 if ARCH_S3C64XX || CPU_S3C2443
	default 3
	help
	  Select the number of available UART ports for the Samsung S3C
	  serial driver
	
468
469
config SERIAL_SAMSUNG_DEBUG
	bool "Samsung SoC serial debug"
470
	depends on SERIAL_SAMSUNG && DEBUG_LL
471
472
473
474
475
476
477
478
479
	help
	  Add support for debugging the serial driver. Since this is
	  generally being used as a console, we use our own output
	  routines that go via the low-level debug printascii()
	  function.

config SERIAL_SAMSUNG_CONSOLE
	bool "Support for console on Samsung SoC serial port"
	depends on SERIAL_SAMSUNG=y
Linus Torvalds's avatar
Linus Torvalds committed
480
481
	select SERIAL_CORE_CONSOLE
	help
482
	  Allow selection of the S3C24XX on-board serial ports for use as
Linus Torvalds's avatar
Linus Torvalds committed
483
484
485
486
487
488
489
490
491
	  an virtual console.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttySACx". (Try "man bootparam" or see the documentation of
	  your boot loader about how to pass options to the kernel at
	  boot time.)

492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
config SERIAL_S3C2400
	tristate "Samsung S3C2410 Serial port support"
	depends on ARM && SERIAL_SAMSUNG && CPU_S3C2400
	default y if CPU_S3C2400
	help
	  Serial port support for the Samsung S3C2400 SoC

config SERIAL_S3C2410
	tristate "Samsung S3C2410 Serial port support"
	depends on SERIAL_SAMSUNG && CPU_S3C2410
	default y if CPU_S3C2410
	help
	  Serial port support for the Samsung S3C2410 SoC

config SERIAL_S3C2412
	tristate "Samsung S3C2412/S3C2413 Serial port support"
	depends on SERIAL_SAMSUNG && CPU_S3C2412
	default y if CPU_S3C2412
	help
	  Serial port support for the Samsung S3C2412 and S3C2413 SoC

config SERIAL_S3C2440
	tristate "Samsung S3C2440/S3C2442 Serial port support"
	depends on SERIAL_SAMSUNG && (CPU_S3C2440 || CPU_S3C2442)
	default y if CPU_S3C2440
	default y if CPU_S3C2442
	help
	  Serial port support for the Samsung S3C2440 and S3C2442 SoC

521
522
523
524
525
526
config SERIAL_S3C24A0
	tristate "Samsung S3C24A0 Serial port support"
	depends on SERIAL_SAMSUNG && CPU_S3C24A0
	default y if CPU_S3C24A0
	help
	  Serial port support for the Samsung S3C24A0 SoC
527

528
529
530
531
532
533
534
535
config SERIAL_S3C6400
	tristate "Samsung S3C6400/S3C6410 Serial port support"
	depends on SERIAL_SAMSUNG && (CPU_S3C600 || CPU_S3C6410)
	default y
	help
	  Serial port support for the Samsung S3C6400 and S3C6410
	  SoCs

536
537
538
539
540
541
542
config SERIAL_MAX3100
	tristate "MAX3100 support"
	depends on SPI
	select SERIAL_CORE
	help
	  MAX3100 chip support

Linus Torvalds's avatar
Linus Torvalds committed
543
544
config SERIAL_DZ
	bool "DECstation DZ serial driver"
545
	depends on MACH_DECSTATION && 32BIT
Linus Torvalds's avatar
Linus Torvalds committed
546
	select SERIAL_CORE
547
548
549
550
	default y
	---help---
	  DZ11-family serial controllers for DECstations and VAXstations,
	  including the DC7085, M7814, and M7819.
Linus Torvalds's avatar
Linus Torvalds committed
551
552
553
554
555

config SERIAL_DZ_CONSOLE
	bool "Support console on DECstation DZ serial driver"
	depends on SERIAL_DZ=y
	select SERIAL_CORE_CONSOLE
556
557
	default y
	---help---
Linus Torvalds's avatar
Linus Torvalds committed
558
559
560
	  If you say Y here, it will be possible to use a serial port as the
	  system console (the system console is the device which receives all
	  kernel messages and warnings and which allows logins in single user
561
562
563
564
	  mode).

	  Note that the firmware uses ttyS3 as the serial console on
	  DECstations that use this driver.
Linus Torvalds's avatar
Linus Torvalds committed
565
566
567

	  If unsure, say Y.

568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
config SERIAL_ZS
	tristate "DECstation Z85C30 serial support"
	depends on MACH_DECSTATION
	select SERIAL_CORE
	default y
	---help---
	  Support for the Zilog 85C350 serial communications controller used
	  for serial ports in newer DECstation systems.  These include the
	  DECsystem 5900 and all models of the DECstation and DECsystem 5000
	  systems except from model 200.

	  If unsure, say Y.  To compile this driver as a module, choose M here:
	  the module will be called zs.

config SERIAL_ZS_CONSOLE
	bool "Support for console on a DECstation Z85C30 serial port"
	depends on SERIAL_ZS=y
	select SERIAL_CORE_CONSOLE
	default y
	---help---
	  If you say Y here, it will be possible to use a serial port as the
	  system console (the system console is the device which receives all
	  kernel messages and warnings and which allows logins in single user
	  mode).

	  Note that the firmware uses ttyS1 as the serial console on the
	  Maxine and ttyS3 on the others using this driver.

	  If unsure, say Y.

Linus Torvalds's avatar
Linus Torvalds committed
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
config SERIAL_21285
	tristate "DC21285 serial port support"
	depends on ARM && FOOTBRIDGE
	select SERIAL_CORE
	help
	  If you have a machine based on a 21285 (Footbridge) StrongARM(R)/
	  PCI bridge you can enable its onboard serial port by enabling this
	  option.

config SERIAL_21285_CONSOLE
	bool "Console on DC21285 serial port"
	depends on SERIAL_21285=y
	select SERIAL_CORE_CONSOLE
	help
	  If you have enabled the serial port on the 21285 footbridge you can
	  make it the console by answering Y to this option.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttyFB". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config SERIAL_MPSC
	bool "Marvell MPSC serial port support"
	depends on PPC32 && MV64X60
	select SERIAL_CORE
	help
	  Say Y here if you want to use the Marvell MPSC serial controller.

config SERIAL_MPSC_CONSOLE
	bool "Support for console on Marvell MPSC serial port"
	depends on SERIAL_MPSC
	select SERIAL_CORE_CONSOLE
	help
	  Say Y here if you want to support a serial console on a Marvell MPSC.

config SERIAL_PXA
	bool "PXA serial port support"
638
	depends on ARCH_PXA || ARCH_MMP
Linus Torvalds's avatar
Linus Torvalds committed
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
	select SERIAL_CORE
	help
	  If you have a machine based on an Intel XScale PXA2xx CPU you
	  can enable its onboard serial ports by enabling this option.

config SERIAL_PXA_CONSOLE
	bool "Console on PXA serial port"
	depends on SERIAL_PXA
	select SERIAL_CORE_CONSOLE
	help
	  If you have enabled the serial port on the Intel XScale PXA
	  CPU you can make it the console by answering Y to this option.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttySA0". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

config SERIAL_SA1100
	bool "SA1100 serial port support"
	depends on ARM && ARCH_SA1100
	select SERIAL_CORE
	help
	  If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
	  can enable its onboard serial port by enabling this option.
	  Please read <file:Documentation/arm/SA1100/serial_UART> for further
	  info.

config SERIAL_SA1100_CONSOLE
	bool "Console on SA1100 serial port"
	depends on SERIAL_SA1100
	select SERIAL_CORE_CONSOLE
	help
	  If you have enabled the serial port on the SA1100/SA1110 StrongARM
	  CPU you can make it the console by answering Y to this option.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttySA0". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

Bryan Wu's avatar
Bryan Wu committed
684
685
config SERIAL_BFIN
	tristate "Blackfin serial port support"
686
	depends on BLACKFIN
Bryan Wu's avatar
Bryan Wu committed
687
688
689
690
691
692
693
694
695
696
	select SERIAL_CORE
	select SERIAL_BFIN_UART0 if (BF531 || BF532 || BF533 || BF561)
	help
	  Add support for the built-in UARTs on the Blackfin.

	  To compile this driver as a module, choose M here: the
	  module will be called bfin_5xx.

config SERIAL_BFIN_CONSOLE
	bool "Console on Blackfin serial port"
697
	depends on SERIAL_BFIN=y
Bryan Wu's avatar
Bryan Wu committed
698
699
700
701
702
703
704
705
706
707
708
709
	select SERIAL_CORE_CONSOLE

choice
	prompt "UART Mode"
	depends on SERIAL_BFIN
	default SERIAL_BFIN_DMA
	help
	  This driver supports the built-in serial ports of the Blackfin family
	  of CPUs

config SERIAL_BFIN_DMA
	bool "DMA mode"
Mike Frysinger's avatar
Mike Frysinger committed
710
	depends on !DMA_UNCACHED_NONE && !KGDB_SERIAL_CONSOLE
Bryan Wu's avatar
Bryan Wu committed
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
	help
	  This driver works under DMA mode. If this option is selected, the
	  blackfin simple dma driver is also enabled.

config SERIAL_BFIN_PIO
	bool "PIO mode"
	help
	  This driver works under PIO mode.

endchoice

config SERIAL_BFIN_UART0
	bool "Enable UART0"
	depends on SERIAL_BFIN
	help
	  Enable UART0

config BFIN_UART0_CTSRTS
	bool "Enable UART0 hardware flow control"
	depends on SERIAL_BFIN_UART0
	help
	  Enable hardware flow control in the driver. Using GPIO emulate the CTS/RTS
	  signal.

config UART0_CTS_PIN
	int "UART0 CTS pin"
Sonic Zhang's avatar
Sonic Zhang committed
737
	depends on BFIN_UART0_CTSRTS && !BF548
Bryan Wu's avatar
Bryan Wu committed
738
739
740
741
742
743
744
	default 23
	help
	  The default pin is GPIO_GP7.
	  Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.

config UART0_RTS_PIN
	int "UART0 RTS pin"
Sonic Zhang's avatar
Sonic Zhang committed
745
	depends on BFIN_UART0_CTSRTS && !BF548
Bryan Wu's avatar
Bryan Wu committed
746
747
748
749
750
751
752
	default 22
	help
	  The default pin is GPIO_GP6.
	  Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.

config SERIAL_BFIN_UART1
	bool "Enable UART1"
753
	depends on SERIAL_BFIN && (!BF531 && !BF532 && !BF533 && !BF561)
Bryan Wu's avatar
Bryan Wu committed
754
755
756
757
758
759
760
761
762
763
764
765
	help
	  Enable UART1

config BFIN_UART1_CTSRTS
	bool "Enable UART1 hardware flow control"
	depends on SERIAL_BFIN_UART1
	help
	  Enable hardware flow control in the driver. Using GPIO emulate the CTS/RTS
	  signal.

config UART1_CTS_PIN
	int "UART1 CTS pin"
Sonic Zhang's avatar
Sonic Zhang committed
766
	depends on BFIN_UART1_CTSRTS && !BF548
Bryan Wu's avatar
Bryan Wu committed
767
768
769
770
771
772
	default -1
	help
	  Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.

config UART1_RTS_PIN
	int "UART1 RTS pin"
Sonic Zhang's avatar
Sonic Zhang committed
773
	depends on BFIN_UART1_CTSRTS && !BF548
Bryan Wu's avatar
Bryan Wu committed
774
775
776
777
	default -1
	help
	  Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.

778
779
config SERIAL_BFIN_UART2
	bool "Enable UART2"
780
	depends on SERIAL_BFIN && (BF54x || BF538 || BF539)
781
782
783
784
785
786
787
788
789
790
791
792
	help
	  Enable UART2

config BFIN_UART2_CTSRTS
	bool "Enable UART2 hardware flow control"
	depends on SERIAL_BFIN_UART2
	help
	  Enable hardware flow control in the driver. Using GPIO emulate the CTS/RTS
	  signal.

config UART2_CTS_PIN
	int "UART2 CTS pin"
Sonic Zhang's avatar
Sonic Zhang committed
793
	depends on BFIN_UART2_CTSRTS && !BF548
794
795
796
797
798
799
	default -1
	help
	  Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.

config UART2_RTS_PIN
	int "UART2 RTS pin"
Sonic Zhang's avatar
Sonic Zhang committed
800
	depends on BFIN_UART2_CTSRTS && !BF548
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
	default -1
	help
	  Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.

config SERIAL_BFIN_UART3
	bool "Enable UART3"
	depends on SERIAL_BFIN && (BF54x)
	help
	  Enable UART3

config BFIN_UART3_CTSRTS
	bool "Enable UART3 hardware flow control"
	depends on SERIAL_BFIN_UART3
	help
	  Enable hardware flow control in the driver. Using GPIO emulate the CTS/RTS
	  signal.

Sonic Zhang's avatar
Sonic Zhang committed
818
819
820
821
822
823
824
825
826
827
828
829
830
831
config UART3_CTS_PIN
	int "UART3 CTS pin"
	depends on BFIN_UART3_CTSRTS && !BF548
	default -1
	help
	  Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.

config UART3_RTS_PIN
	int "UART3 RTS pin"
	depends on BFIN_UART3_CTSRTS && !BF548
	default -1
	help
	  Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.

Linus Torvalds's avatar
Linus Torvalds committed
832
833
config SERIAL_IMX
	bool "IMX serial port support"
834
	depends on ARM && (ARCH_IMX || ARCH_MXC)
Linus Torvalds's avatar
Linus Torvalds committed
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
	select SERIAL_CORE
	help
	  If you have a machine based on a Motorola IMX CPU you
	  can enable its onboard serial port by enabling this option.

config SERIAL_IMX_CONSOLE
	bool "Console on IMX serial port"
	depends on SERIAL_IMX
	select SERIAL_CORE_CONSOLE
	help
	  If you have enabled the serial port on the Motorola IMX
	  CPU you can make it the console by answering Y to this option.

	  Even if you say Y here, the currently visible virtual console
	  (/dev/tty0) will still be used as the system console by default, but
	  you can alter that using a kernel command line option such as
	  "console=ttySA0". (Try "man bootparam" or see the documentation of
	  your boot loader (lilo or loadlin) about how to pass options to the
	  kernel at boot time.)

855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
config SERIAL_UARTLITE
	tristate "Xilinx uartlite serial port support"
	depends on PPC32
	select SERIAL_CORE
	help
	  Say Y here if you want to use the Xilinx uartlite serial controller.

	  To compile this driver as a module, choose M here: the
	  module will be called uartlite.ko.

config SERIAL_UARTLITE_CONSOLE
	bool "Support for console on Xilinx uartlite serial port"
	depends on SERIAL_UARTLITE=y
	select SERIAL_CORE_CONSOLE
	help
	  Say Y here if you wish to use a Xilinx uartlite as the system
	  console (the system console is the device which receives all kernel
	  messages and warnings and which allows logins in single user mode).

Linus Torvalds's avatar
Linus Torvalds committed
874
875
config SERIAL_SUNCORE
	bool
876
	depends on SPARC
Linus Torvalds's avatar
Linus Torvalds committed
877
878
879
880
881
882
	select SERIAL_CORE
	select SERIAL_CORE_CONSOLE
	default y

config SERIAL_SUNZILOG
	tristate "Sun Zilog8530 serial support"
883
	depends on SPARC
Linus Torvalds's avatar
Linus Torvalds committed
884
885
886
887
888
889
890
891
892
893
894
895
896
897
	help
	  This driver supports the Zilog8530 serial ports found on many Sparc
	  systems.  Say Y or M if you want to be able to these serial ports.

config SERIAL_SUNZILOG_CONSOLE
	bool "Console on Sun Zilog8530 serial port"
	depends on SERIAL_SUNZILOG=y
	help
	  If you would like to be able to use the Zilog8530 serial port
	  on your Sparc system as the console, you can do so by answering
	  Y to this option.

config SERIAL_SUNSU
	tristate "Sun SU serial support"
898
	depends on SPARC && PCI
Linus Torvalds's avatar
Linus Torvalds committed
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
	help
	  This driver supports the 8250 serial ports that run the keyboard and
	  mouse on (PCI) UltraSPARC systems.  Say Y or M if you want to be able
	  to these serial ports.

config SERIAL_SUNSU_CONSOLE
	bool "Console on Sun SU serial port"
	depends on SERIAL_SUNSU=y
	help
	  If you would like to be able to use the SU serial port
	  on your Sparc system as the console, you can do so by answering
	  Y to this option.

config SERIAL_MUX
	tristate "Serial MUX support"
914
	depends on GSC
Linus Torvalds's avatar
Linus Torvalds committed
915
916
917
918
	select SERIAL_CORE
	default y
	---help---
	  Saying Y here will enable the hardware MUX serial driver for
919
920
921
922
923
	  the Nova, K class systems and D class with a 'remote control card'.
	  The hardware MUX is not 8250/16550 compatible therefore the
	  /dev/ttyB0 device is shared between the Serial MUX and the PDC
	  software console. The following steps need to be completed to use
	  the Serial MUX:
Linus Torvalds's avatar
Linus Torvalds committed
924
925
926
927
928
929
930
931

	    1. create the device entry (mknod /dev/ttyB0 c 11 0)
	    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
	    3. Add device ttyB0 to /etc/securetty (if you want to log on as
		 root on this console.)
	    4. Change the kernel command console parameter to: console=ttyB0

config SERIAL_MUX_CONSOLE
932
933
	bool "Support for console on serial MUX"
	depends on SERIAL_MUX=y
Linus Torvalds's avatar
Linus Torvalds committed
934
	select SERIAL_CORE_CONSOLE
935
	default y
Linus Torvalds's avatar
Linus Torvalds committed
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954

config PDC_CONSOLE
	bool "PDC software console support"
	depends on PARISC && !SERIAL_MUX && VT
	default n
	help
	  Saying Y here will enable the software based PDC console to be 
	  used as the system console.  This is useful for machines in 
	  which the hardware based console has not been written yet.  The
	  following steps must be competed to use the PDC console:

	    1. create the device entry (mknod /dev/ttyB0 c 11 0)
	    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
	    3. Add device ttyB0 to /etc/securetty (if you want to log on as
		 root on this console.)
	    4. Change the kernel command console parameter to: console=ttyB0

config SERIAL_SUNSAB
	tristate "Sun Siemens SAB82532 serial support"
955
	depends on SPARC && PCI
Linus Torvalds's avatar
Linus Torvalds committed
956
957
958
959
960
961
962
963
964
965
966
967
968
	help
	  This driver supports the Siemens SAB82532 DUSCC serial ports on newer
	  (PCI) UltraSPARC systems.  Say Y or M if you want to be able to these
	  serial ports.

config SERIAL_SUNSAB_CONSOLE
	bool "Console on Sun Siemens SAB82532 serial port"
	depends on SERIAL_SUNSAB=y
	help
	  If you would like to be able to use the SAB82532 serial port
	  on your Sparc system as the console, you can do so by answering
	  Y to this option.

969
970
971
972
973
974
975
config SERIAL_SUNHV
	bool "Sun4v Hypervisor Console support"
	depends on SPARC64
	help
	  This driver supports the console device found on SUN4V Sparc
	  systems.  Say Y if you want to be able to use this device.

Linus Torvalds's avatar
Linus Torvalds committed
976
config SERIAL_IP22_ZILOG
977
978
	tristate "SGI Zilog8530 serial support"
	depends on SGI_HAS_ZILOG
Linus Torvalds's avatar
Linus Torvalds committed
979
980
	select SERIAL_CORE
	help
981
	  This driver supports the Zilog8530 serial ports found on SGI
Linus Torvalds's avatar
Linus Torvalds committed
982
983
984
	  systems.  Say Y or M if you want to be able to these serial ports.

config SERIAL_IP22_ZILOG_CONSOLE
985
	bool "Console on SGI Zilog8530 serial port"
Linus Torvalds's avatar
Linus Torvalds committed
986
987
988
989
	depends on SERIAL_IP22_ZILOG=y
	select SERIAL_CORE_CONSOLE

config SERIAL_SH_SCI
990
	tristate "SuperH SCI(F) serial port support"
Linus Torvalds's avatar
Linus Torvalds committed
991
992
993
	depends on SUPERH || H8300
	select SERIAL_CORE

994
995
996
997
998
config SERIAL_SH_SCI_NR_UARTS
	int "Maximum number of SCI(F) serial ports"
	depends on SERIAL_SH_SCI
	default "2"

Linus Torvalds's avatar
Linus Torvalds committed
999
config SERIAL_SH_SCI_CONSOLE
1000
	bool "Support for console on SuperH SCI(F)"