serial: convert early_uart to earlycon for 8250
[linux-2.6.git] / drivers / serial / Kconfig
1 #
2 # Serial device configuration
3 #
4 # $Id: Kconfig,v 1.11 2004/03/11 18:08:04 lethal Exp $
5 #
6
7 menu "Serial drivers"
8         depends on HAS_IOMEM
9
10 #
11 # The new 8250/16550 serial drivers
12 config SERIAL_8250
13         tristate "8250/16550 and compatible serial support"
14         depends on (BROKEN || !SPARC)
15         select SERIAL_CORE
16         ---help---
17           This selects whether you want to include the driver for the standard
18           serial ports.  The standard answer is Y.  People who might say N
19           here are those that are setting up dedicated Ethernet WWW/FTP
20           servers, or users that have one of the various bus mice instead of a
21           serial mouse and don't intend to use their machine's standard serial
22           port for anything.  (Note that the Cyclades and Stallion multi
23           serial port drivers do not need this driver built in for them to
24           work.)
25
26           To compile this driver as a module, choose M here: the
27           module will be called 8250.
28           [WARNING: Do not compile this driver as a module if you are using
29           non-standard serial ports, since the configuration information will
30           be lost when the driver is unloaded.  This limitation may be lifted
31           in the future.]
32
33           BTW1: If you have a mouseman serial mouse which is not recognized by
34           the X window system, try running gpm first.
35
36           BTW2: If you intend to use a software modem (also called Winmodem)
37           under Linux, forget it.  These modems are crippled and require
38           proprietary drivers which are only available under Windows.
39
40           Most people will say Y or M here, so that they can use serial mice,
41           modems and similar devices connecting to the standard serial ports.
42
43 config SERIAL_8250_CONSOLE
44         bool "Console on 8250/16550 and compatible serial port"
45         depends on SERIAL_8250=y
46         select SERIAL_CORE_CONSOLE
47         ---help---
48           If you say Y here, it will be possible to use a serial port as the
49           system console (the system console is the device which receives all
50           kernel messages and warnings and which allows logins in single user
51           mode). This could be useful if some terminal or printer is connected
52           to that serial port.
53
54           Even if you say Y here, the currently visible virtual console
55           (/dev/tty0) will still be used as the system console by default, but
56           you can alter that using a kernel command line option such as
57           "console=ttyS1". (Try "man bootparam" or see the documentation of
58           your boot loader (grub or lilo or loadlin) about how to pass options
59           to the kernel at boot time.)
60
61           If you don't have a VGA card installed and you say Y here, the
62           kernel will automatically use the first serial line, /dev/ttyS0, as
63           system console.
64
65           you can set that using a kernel command line option such as
66           "console=uart8250,io,0x3f8,9600n8"
67           "console=uart8250,mmio,0xff5e0000,115200n8".
68           and it will switch to normal serial console when correponding port is
69           ready.
70           "earlycon=uart8250,io,0x3f8,9600n8"
71           "earlycon=uart8250,mmio,0xff5e0000,115200n8".
72           it will not only setup early console.
73
74           If unsure, say N.
75
76 config FIX_EARLYCON_MEM
77         bool
78         depends on X86
79         default y
80
81 config SERIAL_8250_GSC
82         tristate
83         depends on SERIAL_8250 && GSC
84         default SERIAL_8250
85
86 config SERIAL_8250_PCI
87         tristate "8250/16550 PCI device support" if EMBEDDED
88         depends on SERIAL_8250 && PCI
89         default SERIAL_8250
90         help
91           Say Y here if you have PCI serial ports.
92
93           To compile this driver as a module, choose M here: the module
94           will be called 8250_pci.
95
96 config SERIAL_8250_PNP
97         tristate "8250/16550 PNP device support" if EMBEDDED
98         depends on SERIAL_8250 && PNP
99         default SERIAL_8250
100         help
101           Say Y here if you have serial ports described by PNPBIOS or ACPI.
102           These are typically ports built into the system board.
103
104           To compile this driver as a module, choose M here: the module
105           will be called 8250_pnp.
106
107 config SERIAL_8250_HP300
108         tristate
109         depends on SERIAL_8250 && HP300
110         default SERIAL_8250
111
112 config SERIAL_8250_CS
113         tristate "8250/16550 PCMCIA device support"
114         depends on PCMCIA && SERIAL_8250
115         ---help---
116           Say Y here to enable support for 16-bit PCMCIA serial devices,
117           including serial port cards, modems, and the modem functions of
118           multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are
119           credit-card size devices often used with laptops.)
120
121           To compile this driver as a module, choose M here: the
122           module will be called serial_cs.
123
124           If unsure, say N.
125
126 config SERIAL_8250_NR_UARTS
127         int "Maximum number of 8250/16550 serial ports"
128         depends on SERIAL_8250
129         default "4"
130         help
131           Set this to the number of serial ports you want the driver
132           to support.  This includes any ports discovered via ACPI or
133           PCI enumeration and any ports that may be added at run-time
134           via hot-plug, or any ISA multi-port serial cards.
135
136 config SERIAL_8250_RUNTIME_UARTS
137         int "Number of 8250/16550 serial ports to register at runtime"
138         depends on SERIAL_8250
139         range 0 SERIAL_8250_NR_UARTS
140         default "4"
141         help
142           Set this to the maximum number of serial ports you want
143           the kernel to register at boot time.  This can be overridden
144           with the module parameter "nr_uarts", or boot-time parameter
145           8250.nr_uarts
146
147 config SERIAL_8250_EXTENDED
148         bool "Extended 8250/16550 serial driver options"
149         depends on SERIAL_8250
150         help
151           If you wish to use any non-standard features of the standard "dumb"
152           driver, say Y here. This includes HUB6 support, shared serial
153           interrupts, special multiport support, support for more than the
154           four COM 1/2/3/4 boards, etc.
155
156           Note that the answer to this question won't directly affect the
157           kernel: saying N will just cause the configurator to skip all
158           the questions about serial driver options. If unsure, say N.
159
160 config SERIAL_8250_MANY_PORTS
161         bool "Support more than 4 legacy serial ports"
162         depends on SERIAL_8250_EXTENDED && !IA64
163         help
164           Say Y here if you have dumb serial boards other than the four
165           standard COM 1/2/3/4 ports. This may happen if you have an AST
166           FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available
167           from <http://www.tldp.org/docs.html#howto>), or other custom
168           serial port hardware which acts similar to standard serial port
169           hardware. If you only use the standard COM 1/2/3/4 ports, you can
170           say N here to save some memory. You can also say Y if you have an
171           "intelligent" multiport card such as Cyclades, Digiboards, etc.
172
173 #
174 # Multi-port serial cards
175 #
176
177 config SERIAL_8250_FOURPORT
178         tristate "Support Fourport cards"
179         depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
180         help
181           Say Y here if you have an AST FourPort serial board.
182
183           To compile this driver as a module, choose M here: the module
184           will be called 8250_fourport.
185
186 config SERIAL_8250_ACCENT
187         tristate "Support Accent cards"
188         depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
189         help
190           Say Y here if you have an Accent Async serial board.
191
192           To compile this driver as a module, choose M here: the module
193           will be called 8250_accent.
194
195 config SERIAL_8250_BOCA
196         tristate "Support Boca cards"
197         depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
198         help
199           Say Y here if you have a Boca serial board.  Please read the Boca
200           mini-HOWTO, available from <http://www.tldp.org/docs.html#howto>
201
202           To compile this driver as a module, choose M here: the module
203           will be called 8250_boca.
204
205 config SERIAL_8250_EXAR_ST16C554
206         tristate "Support Exar ST16C554/554D Quad UART"
207         depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
208         help
209           The Uplogix Envoy TU301 uses this Exar Quad UART.  If you are
210           tinkering with your Envoy TU301, or have a machine with this UART,
211           say Y here.
212
213           To compile this driver as a module, choose M here: the module
214           will be called 8250_exar_st16c554.
215
216 config SERIAL_8250_HUB6
217         tristate "Support Hub6 cards"
218         depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
219         help
220           Say Y here if you have a HUB6 serial board.
221
222           To compile this driver as a module, choose M here: the module
223           will be called 8250_hub6.
224
225 config SERIAL_8250_SHARE_IRQ
226         bool "Support for sharing serial interrupts"
227         depends on SERIAL_8250_EXTENDED
228         help
229           Some serial boards have hardware support which allows multiple dumb
230           serial ports on the same board to share a single IRQ. To enable
231           support for this in the serial driver, say Y here.
232
233 config SERIAL_8250_DETECT_IRQ
234         bool "Autodetect IRQ on standard ports (unsafe)"
235         depends on SERIAL_8250_EXTENDED
236         help
237           Say Y here if you want the kernel to try to guess which IRQ
238           to use for your serial port.
239
240           This is considered unsafe; it is far better to configure the IRQ in
241           a boot script using the setserial command.
242
243           If unsure, say N.
244
245 config SERIAL_8250_RSA
246         bool "Support RSA serial ports"
247         depends on SERIAL_8250_EXTENDED
248         help
249           ::: To be written :::
250
251 config SERIAL_8250_MCA
252         tristate "Support 8250-type ports on MCA buses"
253         depends on SERIAL_8250 != n && MCA
254         help
255           Say Y here if you have a MCA serial ports.
256
257           To compile this driver as a module, choose M here: the module
258           will be called 8250_mca.
259
260 config SERIAL_8250_ACORN
261         tristate "Acorn expansion card serial port support"
262         depends on ARCH_ACORN && SERIAL_8250
263         help
264           If you have an Atomwide Serial card or Serial Port card for an Acorn
265           system, say Y to this option.  The driver can handle 1, 2, or 3 port
266           cards.  If unsure, say N.
267
268 config SERIAL_8250_AU1X00
269         bool "AU1X00 serial port support"
270         depends on SERIAL_8250 != n && SOC_AU1X00
271         help
272           If you have an Au1x00 board and want to use the serial port, say Y
273           to this option.  The driver can handle 1 or 2 serial ports.
274           If unsure, say N.
275
276 config SERIAL_8250_RM9K
277         bool "Support for MIPS RM9xxx integrated serial port"
278         depends on SERIAL_8250 != n && SERIAL_RM9000
279         select SERIAL_8250_SHARE_IRQ
280         help
281           Selecting this option will add support for the integrated serial
282           port hardware found on MIPS RM9122 and similar processors.
283           If unsure, say N.
284
285 comment "Non-8250 serial port support"
286
287 config SERIAL_AMBA_PL010
288         tristate "ARM AMBA PL010 serial port support"
289         depends on ARM_AMBA && (BROKEN || !ARCH_VERSATILE)
290         select SERIAL_CORE
291         help
292           This selects the ARM(R) AMBA(R) PrimeCell PL010 UART.  If you have
293           an Integrator/AP or Integrator/PP2 platform, or if you have a
294           Cirrus Logic EP93xx CPU, say Y or M here.
295
296           If unsure, say N.
297
298 config SERIAL_AMBA_PL010_CONSOLE
299         bool "Support for console on AMBA serial port"
300         depends on SERIAL_AMBA_PL010=y
301         select SERIAL_CORE_CONSOLE
302         ---help---
303           Say Y here if you wish to use an AMBA PrimeCell UART as the system
304           console (the system console is the device which receives all kernel
305           messages and warnings and which allows logins in single user mode).
306
307           Even if you say Y here, the currently visible framebuffer console
308           (/dev/tty0) will still be used as the system console by default, but
309           you can alter that using a kernel command line option such as
310           "console=ttyAM0". (Try "man bootparam" or see the documentation of
311           your boot loader (lilo or loadlin) about how to pass options to the
312           kernel at boot time.)
313
314 config SERIAL_AMBA_PL011
315         tristate "ARM AMBA PL011 serial port support"
316         depends on ARM_AMBA
317         select SERIAL_CORE
318         help
319           This selects the ARM(R) AMBA(R) PrimeCell PL011 UART.  If you have
320           an Integrator/PP2, Integrator/CP or Versatile platform, say Y or M
321           here.
322
323           If unsure, say N.
324
325 config SERIAL_AMBA_PL011_CONSOLE
326         bool "Support for console on AMBA serial port"
327         depends on SERIAL_AMBA_PL011=y
328         select SERIAL_CORE_CONSOLE
329         ---help---
330           Say Y here if you wish to use an AMBA PrimeCell UART as the system
331           console (the system console is the device which receives all kernel
332           messages and warnings and which allows logins in single user mode).
333
334           Even if you say Y here, the currently visible framebuffer console
335           (/dev/tty0) will still be used as the system console by default, but
336           you can alter that using a kernel command line option such as
337           "console=ttyAMA0". (Try "man bootparam" or see the documentation of
338           your boot loader (lilo or loadlin) about how to pass options to the
339           kernel at boot time.)
340
341 config SERIAL_ATMEL
342         bool "AT91 / AT32 on-chip serial port support"
343         depends on (ARM && ARCH_AT91) || AVR32
344         select SERIAL_CORE
345         help
346           This enables the driver for the on-chip UARTs of the Atmel
347           AT91 and AT32 processors.
348
349 config SERIAL_ATMEL_CONSOLE
350         bool "Support for console on AT91 / AT32 serial port"
351         depends on SERIAL_ATMEL=y
352         select SERIAL_CORE_CONSOLE
353         help
354           Say Y here if you wish to use an on-chip UART on a Atmel
355           AT91 or AT32 processor as the system console (the system
356           console is the device which receives all kernel messages and
357           warnings and which allows logins in single user mode).
358
359 config SERIAL_ATMEL_TTYAT
360         bool "Install as device ttyATn instead of ttySn"
361         depends on SERIAL_ATMEL=y
362         help
363           Say Y here if you wish to have the internal AT91 / AT32 UARTs
364           appear as /dev/ttyATn (major 204, minor starting at 154)
365           instead of the normal /dev/ttySn (major 4, minor starting at
366           64). This is necessary if you also want other UARTs, such as
367           external 8250/16C550 compatible UARTs.
368           The ttySn nodes are legally reserved for the 8250 serial driver
369           but are often misused by other serial drivers.
370
371           To use this, you should create suitable ttyATn device nodes in
372           /dev/, and pass "console=ttyATn" to the kernel.
373
374           Say Y if you have an external 8250/16C550 UART.  If unsure, say N.
375
376 config SERIAL_KS8695
377         bool "Micrel KS8695 (Centaur) serial port support"
378         depends on ARCH_KS8695
379         select SERIAL_CORE
380         help
381           This selects the Micrel Centaur KS8695 UART.  Say Y here.
382
383 config SERIAL_KS8695_CONSOLE
384         bool "Support for console on KS8695 (Centaur) serial port"
385         depends on SERIAL_KS8695=y
386         select SERIAL_CORE_CONSOLE
387         help
388           Say Y here if you wish to use a KS8695 (Centaur) UART as the
389           system console (the system console is the device which
390           receives all kernel messages and warnings and which allows
391           logins in single user mode).
392
393 config SERIAL_CLPS711X
394         tristate "CLPS711X serial port support"
395         depends on ARM && ARCH_CLPS711X
396         select SERIAL_CORE
397         help
398           ::: To be written :::
399
400 config SERIAL_CLPS711X_CONSOLE
401         bool "Support for console on CLPS711X serial port"
402         depends on SERIAL_CLPS711X=y
403         select SERIAL_CORE_CONSOLE
404         help
405           Even if you say Y here, the currently visible virtual console
406           (/dev/tty0) will still be used as the system console by default, but
407           you can alter that using a kernel command line option such as
408           "console=ttyCL1". (Try "man bootparam" or see the documentation of
409           your boot loader (lilo or loadlin) about how to pass options to the
410           kernel at boot time.)
411
412 config SERIAL_S3C2410
413         tristate "Samsung S3C2410/S3C2440/S3C2442/S3C2412 Serial port support"
414         depends on ARM && ARCH_S3C2410
415         select SERIAL_CORE
416         help
417           Support for the on-chip UARTs on the Samsung S3C24XX series CPUs,
418           providing /dev/ttySAC0, 1 and 2 (note, some machines may not
419           provide all of these ports, depending on how the serial port
420           pins are configured.
421
422           Currently this driver supports the UARTS on the S3C2410, S3C2440,
423           S3C2442, S3C2412 and S3C2413 CPUs.
424
425 config SERIAL_S3C2410_CONSOLE
426         bool "Support for console on S3C2410 serial port"
427         depends on SERIAL_S3C2410=y
428         select SERIAL_CORE_CONSOLE
429         help
430           Allow selection of the S3C24XX on-board serial ports for use as
431           an virtual console.
432
433           Even if you say Y here, the currently visible virtual console
434           (/dev/tty0) will still be used as the system console by default, but
435           you can alter that using a kernel command line option such as
436           "console=ttySACx". (Try "man bootparam" or see the documentation of
437           your boot loader about how to pass options to the kernel at
438           boot time.)
439
440 config SERIAL_DZ
441         bool "DECstation DZ serial driver"
442         depends on MACH_DECSTATION && 32BIT
443         select SERIAL_CORE
444         help
445           DZ11-family serial controllers for VAXstations, including the
446           DC7085, M7814, and M7819.
447
448 config SERIAL_DZ_CONSOLE
449         bool "Support console on DECstation DZ serial driver"
450         depends on SERIAL_DZ=y
451         select SERIAL_CORE_CONSOLE
452         help
453           If you say Y here, it will be possible to use a serial port as the
454           system console (the system console is the device which receives all
455           kernel messages and warnings and which allows logins in single user
456           mode).  Note that the firmware uses ttyS0 as the serial console on
457           the Maxine and ttyS2 on the others.
458
459           If unsure, say Y.
460
461 config SERIAL_21285
462         tristate "DC21285 serial port support"
463         depends on ARM && FOOTBRIDGE
464         select SERIAL_CORE
465         help
466           If you have a machine based on a 21285 (Footbridge) StrongARM(R)/
467           PCI bridge you can enable its onboard serial port by enabling this
468           option.
469
470 config SERIAL_21285_CONSOLE
471         bool "Console on DC21285 serial port"
472         depends on SERIAL_21285=y
473         select SERIAL_CORE_CONSOLE
474         help
475           If you have enabled the serial port on the 21285 footbridge you can
476           make it the console by answering Y to this option.
477
478           Even if you say Y here, the currently visible virtual console
479           (/dev/tty0) will still be used as the system console by default, but
480           you can alter that using a kernel command line option such as
481           "console=ttyFB". (Try "man bootparam" or see the documentation of
482           your boot loader (lilo or loadlin) about how to pass options to the
483           kernel at boot time.)
484
485 config SERIAL_MPSC
486         bool "Marvell MPSC serial port support"
487         depends on PPC32 && MV64X60
488         select SERIAL_CORE
489         help
490           Say Y here if you want to use the Marvell MPSC serial controller.
491
492 config SERIAL_MPSC_CONSOLE
493         bool "Support for console on Marvell MPSC serial port"
494         depends on SERIAL_MPSC
495         select SERIAL_CORE_CONSOLE
496         help
497           Say Y here if you want to support a serial console on a Marvell MPSC.
498
499 config SERIAL_PXA
500         bool "PXA serial port support"
501         depends on ARM && ARCH_PXA
502         select SERIAL_CORE
503         help
504           If you have a machine based on an Intel XScale PXA2xx CPU you
505           can enable its onboard serial ports by enabling this option.
506
507 config SERIAL_PXA_CONSOLE
508         bool "Console on PXA serial port"
509         depends on SERIAL_PXA
510         select SERIAL_CORE_CONSOLE
511         help
512           If you have enabled the serial port on the Intel XScale PXA
513           CPU you can make it the console by answering Y to this option.
514
515           Even if you say Y here, the currently visible virtual console
516           (/dev/tty0) will still be used as the system console by default, but
517           you can alter that using a kernel command line option such as
518           "console=ttySA0". (Try "man bootparam" or see the documentation of
519           your boot loader (lilo or loadlin) about how to pass options to the
520           kernel at boot time.)
521
522 config SERIAL_SA1100
523         bool "SA1100 serial port support"
524         depends on ARM && ARCH_SA1100
525         select SERIAL_CORE
526         help
527           If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
528           can enable its onboard serial port by enabling this option.
529           Please read <file:Documentation/arm/SA1100/serial_UART> for further
530           info.
531
532 config SERIAL_SA1100_CONSOLE
533         bool "Console on SA1100 serial port"
534         depends on SERIAL_SA1100
535         select SERIAL_CORE_CONSOLE
536         help
537           If you have enabled the serial port on the SA1100/SA1110 StrongARM
538           CPU you can make it the console by answering Y to this option.
539
540           Even if you say Y here, the currently visible virtual console
541           (/dev/tty0) will still be used as the system console by default, but
542           you can alter that using a kernel command line option such as
543           "console=ttySA0". (Try "man bootparam" or see the documentation of
544           your boot loader (lilo or loadlin) about how to pass options to the
545           kernel at boot time.)
546
547 config SERIAL_BFIN
548         tristate "Blackfin serial port support"
549         depends on BFIN
550         select SERIAL_CORE
551         select SERIAL_BFIN_UART0 if (BF531 || BF532 || BF533 || BF561)
552         help
553           Add support for the built-in UARTs on the Blackfin.
554
555           To compile this driver as a module, choose M here: the
556           module will be called bfin_5xx.
557
558 config SERIAL_BFIN_CONSOLE
559         bool "Console on Blackfin serial port"
560         depends on SERIAL_BFIN
561         select SERIAL_CORE_CONSOLE
562
563 choice
564         prompt "UART Mode"
565         depends on SERIAL_BFIN
566         default SERIAL_BFIN_DMA
567         help
568           This driver supports the built-in serial ports of the Blackfin family
569           of CPUs
570
571 config SERIAL_BFIN_DMA
572         bool "DMA mode"
573         depends on DMA_UNCACHED_1M && !KGDB_UART
574         help
575           This driver works under DMA mode. If this option is selected, the
576           blackfin simple dma driver is also enabled.
577
578 config SERIAL_BFIN_PIO
579         bool "PIO mode"
580         help
581           This driver works under PIO mode.
582
583 endchoice
584
585 config SERIAL_BFIN_UART0
586         bool "Enable UART0"
587         depends on SERIAL_BFIN
588         help
589           Enable UART0
590
591 config BFIN_UART0_CTSRTS
592         bool "Enable UART0 hardware flow control"
593         depends on SERIAL_BFIN_UART0
594         help
595           Enable hardware flow control in the driver. Using GPIO emulate the CTS/RTS
596           signal.
597
598 config UART0_CTS_PIN
599         int "UART0 CTS pin"
600         depends on BFIN_UART0_CTSRTS
601         default 23
602         help
603           The default pin is GPIO_GP7.
604           Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.
605
606 config UART0_RTS_PIN
607         int "UART0 RTS pin"
608         depends on BFIN_UART0_CTSRTS
609         default 22
610         help
611           The default pin is GPIO_GP6.
612           Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.
613
614 config SERIAL_BFIN_UART1
615         bool "Enable UART1"
616         depends on SERIAL_BFIN && (BF534 || BF536 || BF537 || BF54x)
617         help
618           Enable UART1
619
620 config BFIN_UART1_CTSRTS
621         bool "Enable UART1 hardware flow control"
622         depends on SERIAL_BFIN_UART1
623         help
624           Enable hardware flow control in the driver. Using GPIO emulate the CTS/RTS
625           signal.
626
627 config UART1_CTS_PIN
628         int "UART1 CTS pin"
629         depends on BFIN_UART1_CTSRTS && (BF53x || BF561)
630         default -1
631         help
632           Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.
633
634 config UART1_RTS_PIN
635         int "UART1 RTS pin"
636         depends on BFIN_UART1_CTSRTS && (BF53x || BF561)
637         default -1
638         help
639           Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.
640
641 config SERIAL_BFIN_UART2
642         bool "Enable UART2"
643         depends on SERIAL_BFIN && (BF54x)
644         help
645           Enable UART2
646
647 config BFIN_UART2_CTSRTS
648         bool "Enable UART2 hardware flow control"
649         depends on SERIAL_BFIN_UART2
650         help
651           Enable hardware flow control in the driver. Using GPIO emulate the CTS/RTS
652           signal.
653
654 config UART2_CTS_PIN
655         int "UART2 CTS pin"
656         depends on BFIN_UART2_CTSRTS
657         default -1
658         help
659           Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.
660
661 config UART2_RTS_PIN
662         int "UART2 RTS pin"
663         depends on BFIN_UART2_CTSRTS
664         default -1
665         help
666           Refer to ./include/asm-blackfin/gpio.h to see the GPIO map.
667
668 config SERIAL_BFIN_UART3
669         bool "Enable UART3"
670         depends on SERIAL_BFIN && (BF54x)
671         help
672           Enable UART3
673
674 config BFIN_UART3_CTSRTS
675         bool "Enable UART3 hardware flow control"
676         depends on SERIAL_BFIN_UART3
677         help
678           Enable hardware flow control in the driver. Using GPIO emulate the CTS/RTS
679           signal.
680
681 config SERIAL_IMX
682         bool "IMX serial port support"
683         depends on ARM && ARCH_IMX
684         select SERIAL_CORE
685         help
686           If you have a machine based on a Motorola IMX CPU you
687           can enable its onboard serial port by enabling this option.
688
689 config SERIAL_IMX_CONSOLE
690         bool "Console on IMX serial port"
691         depends on SERIAL_IMX
692         select SERIAL_CORE_CONSOLE
693         help
694           If you have enabled the serial port on the Motorola IMX
695           CPU you can make it the console by answering Y to this option.
696
697           Even if you say Y here, the currently visible virtual console
698           (/dev/tty0) will still be used as the system console by default, but
699           you can alter that using a kernel command line option such as
700           "console=ttySA0". (Try "man bootparam" or see the documentation of
701           your boot loader (lilo or loadlin) about how to pass options to the
702           kernel at boot time.)
703
704 config SERIAL_UARTLITE
705         tristate "Xilinx uartlite serial port support"
706         depends on PPC32
707         select SERIAL_CORE
708         help
709           Say Y here if you want to use the Xilinx uartlite serial controller.
710
711           To compile this driver as a module, choose M here: the
712           module will be called uartlite.ko.
713
714 config SERIAL_UARTLITE_CONSOLE
715         bool "Support for console on Xilinx uartlite serial port"
716         depends on SERIAL_UARTLITE=y
717         select SERIAL_CORE_CONSOLE
718         help
719           Say Y here if you wish to use a Xilinx uartlite as the system
720           console (the system console is the device which receives all kernel
721           messages and warnings and which allows logins in single user mode).
722
723 config SERIAL_SUNCORE
724         bool
725         depends on SPARC
726         select SERIAL_CORE
727         select SERIAL_CORE_CONSOLE
728         default y
729
730 config SERIAL_SUNZILOG
731         tristate "Sun Zilog8530 serial support"
732         depends on SPARC
733         help
734           This driver supports the Zilog8530 serial ports found on many Sparc
735           systems.  Say Y or M if you want to be able to these serial ports.
736
737 config SERIAL_SUNZILOG_CONSOLE
738         bool "Console on Sun Zilog8530 serial port"
739         depends on SERIAL_SUNZILOG=y
740         help
741           If you would like to be able to use the Zilog8530 serial port
742           on your Sparc system as the console, you can do so by answering
743           Y to this option.
744
745 config SERIAL_SUNSU
746         tristate "Sun SU serial support"
747         depends on SPARC && PCI
748         help
749           This driver supports the 8250 serial ports that run the keyboard and
750           mouse on (PCI) UltraSPARC systems.  Say Y or M if you want to be able
751           to these serial ports.
752
753 config SERIAL_SUNSU_CONSOLE
754         bool "Console on Sun SU serial port"
755         depends on SERIAL_SUNSU=y
756         help
757           If you would like to be able to use the SU serial port
758           on your Sparc system as the console, you can do so by answering
759           Y to this option.
760
761 config SERIAL_MUX
762         tristate "Serial MUX support"
763         depends on GSC
764         select SERIAL_CORE
765         default y
766         ---help---
767           Saying Y here will enable the hardware MUX serial driver for
768           the Nova, K class systems and D class with a 'remote control card'.
769           The hardware MUX is not 8250/16550 compatible therefore the
770           /dev/ttyB0 device is shared between the Serial MUX and the PDC
771           software console. The following steps need to be completed to use
772           the Serial MUX:
773
774             1. create the device entry (mknod /dev/ttyB0 c 11 0)
775             2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
776             3. Add device ttyB0 to /etc/securetty (if you want to log on as
777                  root on this console.)
778             4. Change the kernel command console parameter to: console=ttyB0
779
780 config SERIAL_MUX_CONSOLE
781         bool "Support for console on serial MUX"
782         depends on SERIAL_MUX
783         select SERIAL_CORE_CONSOLE
784         default y
785
786 config PDC_CONSOLE
787         bool "PDC software console support"
788         depends on PARISC && !SERIAL_MUX && VT
789         default n
790         help
791           Saying Y here will enable the software based PDC console to be 
792           used as the system console.  This is useful for machines in 
793           which the hardware based console has not been written yet.  The
794           following steps must be competed to use the PDC console:
795
796             1. create the device entry (mknod /dev/ttyB0 c 11 0)
797             2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
798             3. Add device ttyB0 to /etc/securetty (if you want to log on as
799                  root on this console.)
800             4. Change the kernel command console parameter to: console=ttyB0
801
802 config SERIAL_SUNSAB
803         tristate "Sun Siemens SAB82532 serial support"
804         depends on SPARC && PCI
805         help
806           This driver supports the Siemens SAB82532 DUSCC serial ports on newer
807           (PCI) UltraSPARC systems.  Say Y or M if you want to be able to these
808           serial ports.
809
810 config SERIAL_SUNSAB_CONSOLE
811         bool "Console on Sun Siemens SAB82532 serial port"
812         depends on SERIAL_SUNSAB=y
813         help
814           If you would like to be able to use the SAB82532 serial port
815           on your Sparc system as the console, you can do so by answering
816           Y to this option.
817
818 config SERIAL_SUNHV
819         bool "Sun4v Hypervisor Console support"
820         depends on SPARC64
821         help
822           This driver supports the console device found on SUN4V Sparc
823           systems.  Say Y if you want to be able to use this device.
824
825 config SERIAL_IP22_ZILOG
826         tristate "IP22 Zilog8530 serial support"
827         depends on SGI_IP22
828         select SERIAL_CORE
829         help
830           This driver supports the Zilog8530 serial ports found on SGI IP22
831           systems.  Say Y or M if you want to be able to these serial ports.
832
833 config SERIAL_IP22_ZILOG_CONSOLE
834         bool "Console on IP22 Zilog8530 serial port"
835         depends on SERIAL_IP22_ZILOG=y
836         select SERIAL_CORE_CONSOLE
837
838 config V850E_UART
839         bool "NEC V850E on-chip UART support"
840         depends on V850E_MA1 || V850E_ME2 || V850E_TEG || V850E2_ANNA || V850E_AS85EP1
841         select SERIAL_CORE
842         default y
843
844 config V850E_UARTB
845         bool
846         depends on V850E_UART && V850E_ME2
847         default y
848
849 config V850E_UART_CONSOLE
850         bool "Use NEC V850E on-chip UART for console"
851         depends on V850E_UART
852         select SERIAL_CORE_CONSOLE
853
854 config SERIAL_SH_SCI
855         tristate "SuperH SCI(F) serial port support"
856         depends on SUPERH || H8300
857         select SERIAL_CORE
858
859 config SERIAL_SH_SCI_NR_UARTS
860         int "Maximum number of SCI(F) serial ports"
861         depends on SERIAL_SH_SCI
862         default "2"
863
864 config SERIAL_SH_SCI_CONSOLE
865         bool "Support for console on SuperH SCI(F)"
866         depends on SERIAL_SH_SCI=y
867         select SERIAL_CORE_CONSOLE
868
869 config SERIAL_PNX8XXX
870         bool "Enable PNX8XXX SoCs' UART Support"
871         depends on MIPS && SOC_PNX8550
872         select SERIAL_CORE
873         help
874           If you have a MIPS-based Philips SoC such as PNX8550 or PNX8330
875           and you want to use serial ports, say Y.  Otherwise, say N.
876
877 config SERIAL_PNX8XXX_CONSOLE
878         bool "Enable PNX8XX0 serial console"
879         depends on SERIAL_PNX8XXX
880         select SERIAL_CORE_CONSOLE
881         help
882           If you have a MIPS-based Philips SoC such as PNX8550 or PNX8330
883           and you want to use serial console, say Y. Otherwise, say N.
884
885 config SERIAL_CORE
886         tristate
887
888 config SERIAL_CORE_CONSOLE
889         bool
890
891 config SERIAL_68328
892         bool "68328 serial support"
893         depends on M68328 || M68EZ328 || M68VZ328
894         help
895           This driver supports the built-in serial port of the Motorola 68328
896           (standard, EZ and VZ varieties).
897
898 config SERIAL_68328_RTS_CTS
899         bool "Support RTS/CTS on 68328 serial port"
900         depends on SERIAL_68328
901
902 config SERIAL_COLDFIRE
903         bool "ColdFire serial support"
904         depends on COLDFIRE
905         help
906           This driver supports the built-in serial ports of the Motorola ColdFire
907           family of CPUs.
908
909 config SERIAL_68360_SMC
910         bool "68360 SMC uart support"
911         depends on M68360
912         help
913           This driver supports the SMC serial ports of the Motorola 68360 CPU.
914
915 config SERIAL_68360_SCC
916         bool "68360 SCC uart support"
917         depends on M68360
918         help
919           This driver supports the SCC serial ports of the Motorola 68360 CPU.
920
921 config SERIAL_68360
922         bool
923         depends on SERIAL_68360_SMC || SERIAL_68360_SCC
924         default y
925
926 config SERIAL_PMACZILOG
927         tristate "PowerMac z85c30 ESCC support"
928         depends on PPC_OF && PPC_PMAC
929         select SERIAL_CORE
930         help
931           This driver supports the Zilog z85C30 serial ports found on
932           PowerMac machines.
933           Say Y or M if you want to be able to these serial ports.
934
935 config SERIAL_PMACZILOG_CONSOLE
936         bool "Console on PowerMac z85c30 serial port"
937         depends on SERIAL_PMACZILOG=y
938         select SERIAL_CORE_CONSOLE
939         help
940           If you would like to be able to use the z85c30 serial port
941           on your PowerMac as the console, you can do so by answering
942           Y to this option.
943
944 config SERIAL_LH7A40X
945         tristate "Sharp LH7A40X embedded UART support"
946         depends on ARM && ARCH_LH7A40X
947         select SERIAL_CORE
948         help
949           This enables support for the three on-board UARTs of the
950           Sharp LH7A40X series CPUs.  Choose Y or M.
951
952 config SERIAL_LH7A40X_CONSOLE
953         bool "Support for console on Sharp LH7A40X serial port"
954         depends on SERIAL_LH7A40X=y
955         select SERIAL_CORE_CONSOLE
956         help
957           Say Y here if you wish to use one of the serial ports as the
958           system console--the system console is the device which
959           receives all kernel messages and warnings and which allows
960           logins in single user mode.
961
962           Even if you say Y here, the currently visible framebuffer console
963           (/dev/tty0) will still be used as the default system console, but
964           you can alter that using a kernel command line, for example
965           "console=ttyAM1".
966
967 config SERIAL_CPM
968         tristate "CPM SCC/SMC serial port support"
969         depends on CPM2 || 8xx
970         select SERIAL_CORE
971         help
972           This driver supports the SCC and SMC serial ports on Motorola 
973           embedded PowerPC that contain a CPM1 (8xx) or CPM2 (8xxx)
974
975 config SERIAL_CPM_CONSOLE
976         bool "Support for console on CPM SCC/SMC serial port"
977         depends on SERIAL_CPM=y
978         select SERIAL_CORE_CONSOLE
979         help
980           Say Y here if you wish to use a SCC or SMC CPM UART as the system
981           console (the system console is the device which receives all kernel
982           messages and warnings and which allows logins in single user mode).
983
984           Even if you say Y here, the currently visible framebuffer console
985           (/dev/tty0) will still be used as the system console by default, but
986           you can alter that using a kernel command line option such as
987           "console=ttyCPM0". (Try "man bootparam" or see the documentation of
988           your boot loader (lilo or loadlin) about how to pass options to the
989           kernel at boot time.)
990
991 config SERIAL_CPM_SCC1
992         bool "Support for SCC1 serial port"
993         depends on SERIAL_CPM=y
994         help
995           Select this option to use SCC1 as a serial port
996
997 config SERIAL_CPM_SCC2
998         bool "Support for SCC2 serial port"
999         depends on SERIAL_CPM=y
1000         help
1001           Select this option to use SCC2 as a serial port
1002
1003 config SERIAL_CPM_SCC3
1004         bool "Support for SCC3 serial port"
1005         depends on SERIAL_CPM=y
1006         help
1007           Select this option to use SCC3 as a serial port
1008
1009 config SERIAL_CPM_SCC4
1010         bool "Support for SCC4 serial port"
1011         depends on SERIAL_CPM=y
1012         help
1013           Select this option to use SCC4 as a serial port
1014
1015 config SERIAL_CPM_SMC1
1016         bool "Support for SMC1 serial port"
1017         depends on SERIAL_CPM=y
1018         help
1019           Select this option to use SMC1 as a serial port
1020
1021 config SERIAL_CPM_SMC2
1022         bool "Support for SMC2 serial port"
1023         depends on SERIAL_CPM=y
1024         help
1025           Select this option to use SMC2 as a serial port
1026
1027 config SERIAL_SGI_L1_CONSOLE
1028         bool "SGI Altix L1 serial console support"
1029         depends on IA64_GENERIC || IA64_SGI_SN2
1030         select SERIAL_CORE
1031         select SERIAL_CORE_CONSOLE
1032         help
1033                 If you have an SGI Altix and you would like to use the system
1034                 controller serial port as your console (you want this!),
1035                 say Y.  Otherwise, say N.
1036
1037 config SERIAL_MPC52xx
1038         tristate "Freescale MPC52xx family PSC serial support"
1039         depends on PPC_MPC52xx
1040         select SERIAL_CORE
1041         help
1042           This drivers support the MPC52xx PSC serial ports. If you would
1043           like to use them, you must answer Y or M to this option. Not that
1044           for use as console, it must be included in kernel and not as a
1045           module.
1046
1047 config SERIAL_MPC52xx_CONSOLE
1048         bool "Console on a Freescale MPC52xx family PSC serial port"
1049         depends on SERIAL_MPC52xx=y
1050         select SERIAL_CORE_CONSOLE
1051         help
1052           Select this options if you'd like to use one of the PSC serial port
1053           of the Freescale MPC52xx family as a console.
1054
1055 config SERIAL_MPC52xx_CONSOLE_BAUD
1056         int "Freescale MPC52xx family PSC serial port baud"
1057         depends on SERIAL_MPC52xx_CONSOLE=y
1058         default "9600"
1059         help
1060           Select the MPC52xx console baud rate.
1061           This value is only used if the bootloader doesn't pass in the
1062           console baudrate
1063
1064 config SERIAL_ICOM
1065         tristate "IBM Multiport Serial Adapter"
1066         depends on PCI && (PPC_ISERIES || PPC_PSERIES)
1067         select SERIAL_CORE
1068         select FW_LOADER
1069         help
1070           This driver is for a family of multiport serial adapters
1071           including 2 port RVX, 2 port internal modem, 4 port internal
1072           modem and a split 1 port RVX and 1 port internal modem.
1073
1074           This driver can also be built as a module.  If so, the module
1075           will be called icom.
1076
1077 config SERIAL_M32R_SIO
1078         bool "M32R SIO I/F"
1079         depends on M32R
1080         default y
1081         select SERIAL_CORE
1082         help
1083           Say Y here if you want to use the M32R serial controller.
1084
1085 config SERIAL_M32R_SIO_CONSOLE
1086         bool "use SIO console"
1087         depends on SERIAL_M32R_SIO=y
1088         select SERIAL_CORE_CONSOLE
1089         help
1090           Say Y here if you want to support a serial console.
1091
1092           If you use an M3T-M32700UT or an OPSPUT platform,
1093           please say also y for SERIAL_M32R_PLDSIO.
1094
1095 config SERIAL_M32R_PLDSIO
1096         bool "M32R SIO I/F on a PLD"
1097         depends on SERIAL_M32R_SIO=y && (PLAT_OPSPUT || PLAT_USRV || PLAT_M32700UT)
1098         default n
1099         help
1100           Say Y here if you want to use the M32R serial controller
1101           on a PLD (Programmable Logic Device).
1102
1103           If you use an M3T-M32700UT or an OPSPUT platform,
1104           please say Y.
1105
1106 config SERIAL_TXX9
1107         bool "TMPTX39XX/49XX SIO support"
1108         depends on HAS_TXX9_SERIAL
1109         select SERIAL_CORE
1110         default y
1111
1112 config HAS_TXX9_SERIAL
1113         bool
1114
1115 config SERIAL_TXX9_NR_UARTS
1116         int "Maximum number of TMPTX39XX/49XX SIO ports"
1117         depends on SERIAL_TXX9
1118         default "6"
1119
1120 config SERIAL_TXX9_CONSOLE
1121         bool "TMPTX39XX/49XX SIO Console support"
1122         depends on SERIAL_TXX9=y
1123         select SERIAL_CORE_CONSOLE
1124
1125 config SERIAL_TXX9_STDSERIAL
1126         bool "TX39XX/49XX SIO act as standard serial"
1127         depends on !SERIAL_8250 && SERIAL_TXX9
1128
1129 config SERIAL_VR41XX
1130         tristate "NEC VR4100 series Serial Interface Unit support"
1131         depends on CPU_VR41XX
1132         select SERIAL_CORE
1133         help
1134           If you have a NEC VR4100 series processor and you want to use
1135           Serial Interface Unit(SIU) or Debug Serial Interface Unit(DSIU)
1136           (not include VR4111/VR4121 DSIU), say Y.  Otherwise, say N.
1137
1138 config SERIAL_VR41XX_CONSOLE
1139         bool "Enable NEC VR4100 series Serial Interface Unit console"
1140         depends on SERIAL_VR41XX
1141         select SERIAL_CORE_CONSOLE
1142         help
1143           If you have a NEC VR4100 series processor and you want to use
1144           a console on a serial port, say Y.  Otherwise, say N.
1145
1146 config SERIAL_JSM
1147         tristate "Digi International NEO PCI Support"
1148         depends on PCI
1149         select SERIAL_CORE
1150         help
1151           This is a driver for Digi International's Neo series
1152           of cards which provide multiple serial ports. You would need
1153           something like this to connect more than two modems to your Linux
1154           box, for instance in order to become a dial-in server. This driver
1155           supports PCI boards only.
1156
1157           If you have a card like this, say Y here, otherwise say N.
1158
1159           To compile this driver as a module, choose M here: the
1160           module will be called jsm.
1161
1162 config SERIAL_SGI_IOC4
1163         tristate "SGI IOC4 controller serial support"
1164         depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC4
1165         select SERIAL_CORE
1166         help
1167                 If you have an SGI Altix with an IOC4 based Base IO card
1168                 and wish to use the serial ports on this card, say Y.
1169                 Otherwise, say N.
1170
1171 config SERIAL_SGI_IOC3
1172         tristate "SGI Altix IOC3 serial support"
1173         depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC3
1174         select SERIAL_CORE
1175         help
1176           If you have an SGI Altix with an IOC3 serial card,
1177           say Y or M.  Otherwise, say N.
1178
1179 config SERIAL_NETX
1180         bool "NetX serial port support"
1181         depends on ARM && ARCH_NETX
1182         select SERIAL_CORE
1183         help
1184           If you have a machine based on a Hilscher NetX SoC you
1185           can enable its onboard serial port by enabling this option.
1186
1187           To compile this driver as a module, choose M here: the
1188           module will be called netx-serial.
1189
1190 config SERIAL_NETX_CONSOLE
1191         bool "Console on NetX serial port"
1192         depends on SERIAL_NETX
1193         select SERIAL_CORE_CONSOLE
1194         help
1195           If you have enabled the serial port on the Motorola IMX
1196           CPU you can make it the console by answering Y to this option.
1197
1198 config SERIAL_OF_PLATFORM
1199         tristate "Serial port on Open Firmware platform bus"
1200         depends on PPC_OF
1201         depends on SERIAL_8250
1202         help
1203           If you have a PowerPC based system that has serial ports
1204           on a platform specific bus, you should enable this option.
1205           Currently, only 8250 compatible ports are supported, but
1206           others can easily be added.
1207
1208 endmenu