diff options
| author | Paul Gortmaker <paul.gortmaker@windriver.com> | 2012-01-05 18:21:43 -0500 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2012-01-24 14:23:59 -0500 |
| commit | 9bef3d4197379a995fa80f81950bbbf8d32e9e8b (patch) | |
| tree | 849d7a9def86d015226fb19b2e513b76f632c8be /drivers/tty/serial | |
| parent | dcd6c92267155e70a94b3927bce681ce74b80d1f (diff) | |
serial: group all the 8250 related code together
The drivers/tty/serial dir is already getting rather busy.
Relocate the 8250 related drivers to their own subdir to
reduce the clutter.
Note that sunsu.c is not included in this move -- it is
8250-like hardware, but it does not use any of the existing
infrastructure -- and does not depend on SERIAL_8250.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/tty/serial')
| -rw-r--r-- | drivers/tty/serial/8250/8250.c (renamed from drivers/tty/serial/8250.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250.h (renamed from drivers/tty/serial/8250.h) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_accent.c (renamed from drivers/tty/serial/8250_accent.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_acorn.c (renamed from drivers/tty/serial/8250_acorn.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_boca.c (renamed from drivers/tty/serial/8250_boca.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_dw.c (renamed from drivers/tty/serial/8250_dw.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_early.c (renamed from drivers/tty/serial/8250_early.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_exar_st16c554.c (renamed from drivers/tty/serial/8250_exar_st16c554.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_fourport.c (renamed from drivers/tty/serial/8250_fourport.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_fsl.c (renamed from drivers/tty/serial/8250_fsl.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_gsc.c (renamed from drivers/tty/serial/8250_gsc.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_hp300.c (renamed from drivers/tty/serial/8250_hp300.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_hub6.c (renamed from drivers/tty/serial/8250_hub6.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_mca.c (renamed from drivers/tty/serial/8250_mca.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_pci.c (renamed from drivers/tty/serial/8250_pci.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/8250_pnp.c (renamed from drivers/tty/serial/8250_pnp.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/Kconfig | 280 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/Makefile | 20 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/m32r_sio.c (renamed from drivers/tty/serial/m32r_sio.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/m32r_sio.h (renamed from drivers/tty/serial/m32r_sio.h) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/m32r_sio_reg.h (renamed from drivers/tty/serial/m32r_sio_reg.h) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/8250/serial_cs.c (renamed from drivers/tty/serial/serial_cs.c) | 0 | ||||
| -rw-r--r-- | drivers/tty/serial/Kconfig | 274 | ||||
| -rw-r--r-- | drivers/tty/serial/Makefile | 19 |
24 files changed, 304 insertions, 289 deletions
diff --git a/drivers/tty/serial/8250.c b/drivers/tty/serial/8250/8250.c index 9f50c4e3c2be..9f50c4e3c2be 100644 --- a/drivers/tty/serial/8250.c +++ b/drivers/tty/serial/8250/8250.c | |||
diff --git a/drivers/tty/serial/8250.h b/drivers/tty/serial/8250/8250.h index ae027be57e25..ae027be57e25 100644 --- a/drivers/tty/serial/8250.h +++ b/drivers/tty/serial/8250/8250.h | |||
diff --git a/drivers/tty/serial/8250_accent.c b/drivers/tty/serial/8250/8250_accent.c index 34b51c651192..34b51c651192 100644 --- a/drivers/tty/serial/8250_accent.c +++ b/drivers/tty/serial/8250/8250_accent.c | |||
diff --git a/drivers/tty/serial/8250_acorn.c b/drivers/tty/serial/8250/8250_acorn.c index b0ce8c56f1a4..b0ce8c56f1a4 100644 --- a/drivers/tty/serial/8250_acorn.c +++ b/drivers/tty/serial/8250/8250_acorn.c | |||
diff --git a/drivers/tty/serial/8250_boca.c b/drivers/tty/serial/8250/8250_boca.c index d125dc107985..d125dc107985 100644 --- a/drivers/tty/serial/8250_boca.c +++ b/drivers/tty/serial/8250/8250_boca.c | |||
diff --git a/drivers/tty/serial/8250_dw.c b/drivers/tty/serial/8250/8250_dw.c index f574eef3075f..f574eef3075f 100644 --- a/drivers/tty/serial/8250_dw.c +++ b/drivers/tty/serial/8250/8250_dw.c | |||
diff --git a/drivers/tty/serial/8250_early.c b/drivers/tty/serial/8250/8250_early.c index eaafb98debed..eaafb98debed 100644 --- a/drivers/tty/serial/8250_early.c +++ b/drivers/tty/serial/8250/8250_early.c | |||
diff --git a/drivers/tty/serial/8250_exar_st16c554.c b/drivers/tty/serial/8250/8250_exar_st16c554.c index bf53aabf9b5e..bf53aabf9b5e 100644 --- a/drivers/tty/serial/8250_exar_st16c554.c +++ b/drivers/tty/serial/8250/8250_exar_st16c554.c | |||
diff --git a/drivers/tty/serial/8250_fourport.c b/drivers/tty/serial/8250/8250_fourport.c index be1582609626..be1582609626 100644 --- a/drivers/tty/serial/8250_fourport.c +++ b/drivers/tty/serial/8250/8250_fourport.c | |||
diff --git a/drivers/tty/serial/8250_fsl.c b/drivers/tty/serial/8250/8250_fsl.c index f4d3c47b88e8..f4d3c47b88e8 100644 --- a/drivers/tty/serial/8250_fsl.c +++ b/drivers/tty/serial/8250/8250_fsl.c | |||
diff --git a/drivers/tty/serial/8250_gsc.c b/drivers/tty/serial/8250/8250_gsc.c index d8c0ffbfa6e3..d8c0ffbfa6e3 100644 --- a/drivers/tty/serial/8250_gsc.c +++ b/drivers/tty/serial/8250/8250_gsc.c | |||
diff --git a/drivers/tty/serial/8250_hp300.c b/drivers/tty/serial/8250/8250_hp300.c index c13438c93012..c13438c93012 100644 --- a/drivers/tty/serial/8250_hp300.c +++ b/drivers/tty/serial/8250/8250_hp300.c | |||
diff --git a/drivers/tty/serial/8250_hub6.c b/drivers/tty/serial/8250/8250_hub6.c index a5c778e83de0..a5c778e83de0 100644 --- a/drivers/tty/serial/8250_hub6.c +++ b/drivers/tty/serial/8250/8250_hub6.c | |||
diff --git a/drivers/tty/serial/8250_mca.c b/drivers/tty/serial/8250/8250_mca.c index d20abf04541e..d20abf04541e 100644 --- a/drivers/tty/serial/8250_mca.c +++ b/drivers/tty/serial/8250/8250_mca.c | |||
diff --git a/drivers/tty/serial/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c index da2b0b0a183f..da2b0b0a183f 100644 --- a/drivers/tty/serial/8250_pci.c +++ b/drivers/tty/serial/8250/8250_pci.c | |||
diff --git a/drivers/tty/serial/8250_pnp.c b/drivers/tty/serial/8250/8250_pnp.c index a2f236510ff1..a2f236510ff1 100644 --- a/drivers/tty/serial/8250_pnp.c +++ b/drivers/tty/serial/8250/8250_pnp.c | |||
diff --git a/drivers/tty/serial/8250/Kconfig b/drivers/tty/serial/8250/Kconfig new file mode 100644 index 000000000000..591f8018e7dd --- /dev/null +++ b/drivers/tty/serial/8250/Kconfig | |||
| @@ -0,0 +1,280 @@ | |||
| 1 | # | ||
| 2 | # The 8250/16550 serial drivers. You shouldn't be in this list unless | ||
| 3 | # you somehow have an implicit or explicit dependency on SERIAL_8250. | ||
| 4 | # | ||
| 5 | |||
| 6 | config SERIAL_8250 | ||
| 7 | tristate "8250/16550 and compatible serial support" | ||
| 8 | select SERIAL_CORE | ||
| 9 | ---help--- | ||
| 10 | This selects whether you want to include the driver for the standard | ||
| 11 | serial ports. The standard answer is Y. People who might say N | ||
| 12 | here are those that are setting up dedicated Ethernet WWW/FTP | ||
| 13 | servers, or users that have one of the various bus mice instead of a | ||
| 14 | serial mouse and don't intend to use their machine's standard serial | ||
| 15 | port for anything. (Note that the Cyclades and Stallion multi | ||
| 16 | serial port drivers do not need this driver built in for them to | ||
| 17 | work.) | ||
| 18 | |||
| 19 | To compile this driver as a module, choose M here: the | ||
| 20 | module will be called 8250. | ||
| 21 | [WARNING: Do not compile this driver as a module if you are using | ||
| 22 | non-standard serial ports, since the configuration information will | ||
| 23 | be lost when the driver is unloaded. This limitation may be lifted | ||
| 24 | in the future.] | ||
| 25 | |||
| 26 | BTW1: If you have a mouseman serial mouse which is not recognized by | ||
| 27 | the X window system, try running gpm first. | ||
| 28 | |||
| 29 | BTW2: If you intend to use a software modem (also called Winmodem) | ||
| 30 | under Linux, forget it. These modems are crippled and require | ||
| 31 | proprietary drivers which are only available under Windows. | ||
| 32 | |||
| 33 | Most people will say Y or M here, so that they can use serial mice, | ||
| 34 | modems and similar devices connecting to the standard serial ports. | ||
| 35 | |||
| 36 | config SERIAL_8250_CONSOLE | ||
| 37 | bool "Console on 8250/16550 and compatible serial port" | ||
| 38 | depends on SERIAL_8250=y | ||
| 39 | select SERIAL_CORE_CONSOLE | ||
| 40 | ---help--- | ||
| 41 | If you say Y here, it will be possible to use a serial port as the | ||
| 42 | system console (the system console is the device which receives all | ||
| 43 | kernel messages and warnings and which allows logins in single user | ||
| 44 | mode). This could be useful if some terminal or printer is connected | ||
| 45 | to that serial port. | ||
| 46 | |||
| 47 | Even if you say Y here, the currently visible virtual console | ||
| 48 | (/dev/tty0) will still be used as the system console by default, but | ||
| 49 | you can alter that using a kernel command line option such as | ||
| 50 | "console=ttyS1". (Try "man bootparam" or see the documentation of | ||
| 51 | your boot loader (grub or lilo or loadlin) about how to pass options | ||
| 52 | to the kernel at boot time.) | ||
| 53 | |||
| 54 | If you don't have a VGA card installed and you say Y here, the | ||
| 55 | kernel will automatically use the first serial line, /dev/ttyS0, as | ||
| 56 | system console. | ||
| 57 | |||
| 58 | You can set that using a kernel command line option such as | ||
| 59 | "console=uart8250,io,0x3f8,9600n8" | ||
| 60 | "console=uart8250,mmio,0xff5e0000,115200n8". | ||
| 61 | and it will switch to normal serial console when the corresponding | ||
| 62 | port is ready. | ||
| 63 | "earlycon=uart8250,io,0x3f8,9600n8" | ||
| 64 | "earlycon=uart8250,mmio,0xff5e0000,115200n8". | ||
| 65 | it will not only setup early console. | ||
| 66 | |||
| 67 | If unsure, say N. | ||
| 68 | |||
| 69 | config FIX_EARLYCON_MEM | ||
| 70 | bool | ||
| 71 | depends on X86 | ||
| 72 | default y | ||
| 73 | |||
| 74 | config SERIAL_8250_GSC | ||
| 75 | tristate | ||
| 76 | depends on SERIAL_8250 && GSC | ||
| 77 | default SERIAL_8250 | ||
| 78 | |||
| 79 | config SERIAL_8250_PCI | ||
| 80 | tristate "8250/16550 PCI device support" if EXPERT | ||
| 81 | depends on SERIAL_8250 && PCI | ||
| 82 | default SERIAL_8250 | ||
| 83 | help | ||
| 84 | This builds standard PCI serial support. You may be able to | ||
| 85 | disable this feature if you only need legacy serial support. | ||
| 86 | Saves about 9K. | ||
| 87 | |||
| 88 | config SERIAL_8250_PNP | ||
| 89 | tristate "8250/16550 PNP device support" if EXPERT | ||
| 90 | depends on SERIAL_8250 && PNP | ||
| 91 | default SERIAL_8250 | ||
| 92 | help | ||
| 93 | This builds standard PNP serial support. You may be able to | ||
| 94 | disable this feature if you only need legacy serial support. | ||
| 95 | |||
| 96 | config SERIAL_8250_HP300 | ||
| 97 | tristate | ||
| 98 | depends on SERIAL_8250 && HP300 | ||
| 99 | default SERIAL_8250 | ||
| 100 | |||
| 101 | config SERIAL_8250_CS | ||
| 102 | tristate "8250/16550 PCMCIA device support" | ||
| 103 | depends on PCMCIA && SERIAL_8250 | ||
| 104 | ---help--- | ||
| 105 | Say Y here to enable support for 16-bit PCMCIA serial devices, | ||
| 106 | including serial port cards, modems, and the modem functions of | ||
| 107 | multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are | ||
| 108 | credit-card size devices often used with laptops.) | ||
| 109 | |||
| 110 | To compile this driver as a module, choose M here: the | ||
| 111 | module will be called serial_cs. | ||
| 112 | |||
| 113 | If unsure, say N. | ||
| 114 | |||
| 115 | config SERIAL_8250_NR_UARTS | ||
| 116 | int "Maximum number of 8250/16550 serial ports" | ||
| 117 | depends on SERIAL_8250 | ||
| 118 | default "4" | ||
| 119 | help | ||
| 120 | Set this to the number of serial ports you want the driver | ||
| 121 | to support. This includes any ports discovered via ACPI or | ||
| 122 | PCI enumeration and any ports that may be added at run-time | ||
| 123 | via hot-plug, or any ISA multi-port serial cards. | ||
| 124 | |||
| 125 | config SERIAL_8250_RUNTIME_UARTS | ||
| 126 | int "Number of 8250/16550 serial ports to register at runtime" | ||
| 127 | depends on SERIAL_8250 | ||
| 128 | range 0 SERIAL_8250_NR_UARTS | ||
| 129 | default "4" | ||
| 130 | help | ||
| 131 | Set this to the maximum number of serial ports you want | ||
| 132 | the kernel to register at boot time. This can be overridden | ||
| 133 | with the module parameter "nr_uarts", or boot-time parameter | ||
| 134 | 8250.nr_uarts | ||
| 135 | |||
| 136 | config SERIAL_8250_EXTENDED | ||
| 137 | bool "Extended 8250/16550 serial driver options" | ||
| 138 | depends on SERIAL_8250 | ||
| 139 | help | ||
| 140 | If you wish to use any non-standard features of the standard "dumb" | ||
| 141 | driver, say Y here. This includes HUB6 support, shared serial | ||
| 142 | interrupts, special multiport support, support for more than the | ||
| 143 | four COM 1/2/3/4 boards, etc. | ||
| 144 | |||
| 145 | Note that the answer to this question won't directly affect the | ||
| 146 | kernel: saying N will just cause the configurator to skip all | ||
| 147 | the questions about serial driver options. If unsure, say N. | ||
| 148 | |||
| 149 | config SERIAL_8250_MANY_PORTS | ||
| 150 | bool "Support more than 4 legacy serial ports" | ||
| 151 | depends on SERIAL_8250_EXTENDED && !IA64 | ||
| 152 | help | ||
| 153 | Say Y here if you have dumb serial boards other than the four | ||
| 154 | standard COM 1/2/3/4 ports. This may happen if you have an AST | ||
| 155 | FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available | ||
| 156 | from <http://www.tldp.org/docs.html#howto>), or other custom | ||
| 157 | serial port hardware which acts similar to standard serial port | ||
| 158 | hardware. If you only use the standard COM 1/2/3/4 ports, you can | ||
| 159 | say N here to save some memory. You can also say Y if you have an | ||
| 160 | "intelligent" multiport card such as Cyclades, Digiboards, etc. | ||
| 161 | |||
| 162 | # | ||
| 163 | # Multi-port serial cards | ||
| 164 | # | ||
| 165 | |||
| 166 | config SERIAL_8250_FOURPORT | ||
| 167 | tristate "Support Fourport cards" | ||
| 168 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 169 | help | ||
| 170 | Say Y here if you have an AST FourPort serial board. | ||
| 171 | |||
| 172 | To compile this driver as a module, choose M here: the module | ||
| 173 | will be called 8250_fourport. | ||
| 174 | |||
| 175 | config SERIAL_8250_ACCENT | ||
| 176 | tristate "Support Accent cards" | ||
| 177 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 178 | help | ||
| 179 | Say Y here if you have an Accent Async serial board. | ||
| 180 | |||
| 181 | To compile this driver as a module, choose M here: the module | ||
| 182 | will be called 8250_accent. | ||
| 183 | |||
| 184 | config SERIAL_8250_BOCA | ||
| 185 | tristate "Support Boca cards" | ||
| 186 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 187 | help | ||
| 188 | Say Y here if you have a Boca serial board. Please read the Boca | ||
| 189 | mini-HOWTO, available from <http://www.tldp.org/docs.html#howto> | ||
| 190 | |||
| 191 | To compile this driver as a module, choose M here: the module | ||
| 192 | will be called 8250_boca. | ||
| 193 | |||
| 194 | config SERIAL_8250_EXAR_ST16C554 | ||
| 195 | tristate "Support Exar ST16C554/554D Quad UART" | ||
| 196 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 197 | help | ||
| 198 | The Uplogix Envoy TU301 uses this Exar Quad UART. If you are | ||
| 199 | tinkering with your Envoy TU301, or have a machine with this UART, | ||
| 200 | say Y here. | ||
| 201 | |||
| 202 | To compile this driver as a module, choose M here: the module | ||
| 203 | will be called 8250_exar_st16c554. | ||
| 204 | |||
| 205 | config SERIAL_8250_HUB6 | ||
| 206 | tristate "Support Hub6 cards" | ||
| 207 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 208 | help | ||
| 209 | Say Y here if you have a HUB6 serial board. | ||
| 210 | |||
| 211 | To compile this driver as a module, choose M here: the module | ||
| 212 | will be called 8250_hub6. | ||
| 213 | |||
| 214 | # | ||
| 215 | # Misc. options/drivers. | ||
| 216 | # | ||
| 217 | |||
| 218 | config SERIAL_8250_SHARE_IRQ | ||
| 219 | bool "Support for sharing serial interrupts" | ||
| 220 | depends on SERIAL_8250_EXTENDED | ||
| 221 | help | ||
| 222 | Some serial boards have hardware support which allows multiple dumb | ||
| 223 | serial ports on the same board to share a single IRQ. To enable | ||
| 224 | support for this in the serial driver, say Y here. | ||
| 225 | |||
| 226 | config SERIAL_8250_DETECT_IRQ | ||
| 227 | bool "Autodetect IRQ on standard ports (unsafe)" | ||
| 228 | depends on SERIAL_8250_EXTENDED | ||
| 229 | help | ||
| 230 | Say Y here if you want the kernel to try to guess which IRQ | ||
| 231 | to use for your serial port. | ||
| 232 | |||
| 233 | This is considered unsafe; it is far better to configure the IRQ in | ||
| 234 | a boot script using the setserial command. | ||
| 235 | |||
| 236 | If unsure, say N. | ||
| 237 | |||
| 238 | config SERIAL_8250_RSA | ||
| 239 | bool "Support RSA serial ports" | ||
| 240 | depends on SERIAL_8250_EXTENDED | ||
| 241 | help | ||
| 242 | ::: To be written ::: | ||
| 243 | |||
| 244 | config SERIAL_8250_MCA | ||
| 245 | tristate "Support 8250-type ports on MCA buses" | ||
| 246 | depends on SERIAL_8250 != n && MCA | ||
| 247 | help | ||
| 248 | Say Y here if you have a MCA serial ports. | ||
| 249 | |||
| 250 | To compile this driver as a module, choose M here: the module | ||
| 251 | will be called 8250_mca. | ||
| 252 | |||
| 253 | config SERIAL_8250_ACORN | ||
| 254 | tristate "Acorn expansion card serial port support" | ||
| 255 | depends on ARCH_ACORN && SERIAL_8250 | ||
| 256 | help | ||
| 257 | If you have an Atomwide Serial card or Serial Port card for an Acorn | ||
| 258 | system, say Y to this option. The driver can handle 1, 2, or 3 port | ||
| 259 | cards. If unsure, say N. | ||
| 260 | |||
| 261 | config SERIAL_8250_RM9K | ||
| 262 | bool "Support for MIPS RM9xxx integrated serial port" | ||
| 263 | depends on SERIAL_8250 != n && SERIAL_RM9000 | ||
| 264 | select SERIAL_8250_SHARE_IRQ | ||
| 265 | help | ||
| 266 | Selecting this option will add support for the integrated serial | ||
| 267 | port hardware found on MIPS RM9122 and similar processors. | ||
| 268 | If unsure, say N. | ||
| 269 | |||
| 270 | config SERIAL_8250_FSL | ||
| 271 | bool | ||
| 272 | depends on SERIAL_8250_CONSOLE && PPC_UDBG_16550 | ||
| 273 | default PPC | ||
| 274 | |||
| 275 | config SERIAL_8250_DW | ||
| 276 | tristate "Support for Synopsys DesignWare 8250 quirks" | ||
| 277 | depends on SERIAL_8250 && OF | ||
| 278 | help | ||
| 279 | Selecting this option will enable handling of the extra features | ||
| 280 | present in the Synopsys DesignWare APB UART. | ||
diff --git a/drivers/tty/serial/8250/Makefile b/drivers/tty/serial/8250/Makefile new file mode 100644 index 000000000000..867bba738908 --- /dev/null +++ b/drivers/tty/serial/8250/Makefile | |||
| @@ -0,0 +1,20 @@ | |||
| 1 | # | ||
| 2 | # Makefile for the 8250 serial device drivers. | ||
| 3 | # | ||
| 4 | |||
| 5 | obj-$(CONFIG_SERIAL_8250) += 8250.o | ||
| 6 | obj-$(CONFIG_SERIAL_8250_PNP) += 8250_pnp.o | ||
| 7 | obj-$(CONFIG_SERIAL_8250_GSC) += 8250_gsc.o | ||
| 8 | obj-$(CONFIG_SERIAL_8250_PCI) += 8250_pci.o | ||
| 9 | obj-$(CONFIG_SERIAL_8250_HP300) += 8250_hp300.o | ||
| 10 | obj-$(CONFIG_SERIAL_8250_CS) += serial_cs.o | ||
| 11 | obj-$(CONFIG_SERIAL_8250_ACORN) += 8250_acorn.o | ||
| 12 | obj-$(CONFIG_SERIAL_8250_CONSOLE) += 8250_early.o | ||
| 13 | obj-$(CONFIG_SERIAL_8250_FOURPORT) += 8250_fourport.o | ||
| 14 | obj-$(CONFIG_SERIAL_8250_ACCENT) += 8250_accent.o | ||
| 15 | obj-$(CONFIG_SERIAL_8250_BOCA) += 8250_boca.o | ||
| 16 | obj-$(CONFIG_SERIAL_8250_EXAR_ST16C554) += 8250_exar_st16c554.o | ||
| 17 | obj-$(CONFIG_SERIAL_8250_HUB6) += 8250_hub6.o | ||
| 18 | obj-$(CONFIG_SERIAL_8250_MCA) += 8250_mca.o | ||
| 19 | obj-$(CONFIG_SERIAL_8250_FSL) += 8250_fsl.o | ||
| 20 | obj-$(CONFIG_SERIAL_8250_DW) += 8250_dw.o | ||
diff --git a/drivers/tty/serial/m32r_sio.c b/drivers/tty/serial/8250/m32r_sio.c index 94a6792bf97b..94a6792bf97b 100644 --- a/drivers/tty/serial/m32r_sio.c +++ b/drivers/tty/serial/8250/m32r_sio.c | |||
diff --git a/drivers/tty/serial/m32r_sio.h b/drivers/tty/serial/8250/m32r_sio.h index e9b7e11793b1..e9b7e11793b1 100644 --- a/drivers/tty/serial/m32r_sio.h +++ b/drivers/tty/serial/8250/m32r_sio.h | |||
diff --git a/drivers/tty/serial/m32r_sio_reg.h b/drivers/tty/serial/8250/m32r_sio_reg.h index 4671473793e3..4671473793e3 100644 --- a/drivers/tty/serial/m32r_sio_reg.h +++ b/drivers/tty/serial/8250/m32r_sio_reg.h | |||
diff --git a/drivers/tty/serial/serial_cs.c b/drivers/tty/serial/8250/serial_cs.c index 86090605a84e..86090605a84e 100644 --- a/drivers/tty/serial/serial_cs.c +++ b/drivers/tty/serial/8250/serial_cs.c | |||
diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig index aca2386c5ef1..0bff23897509 100644 --- a/drivers/tty/serial/Kconfig +++ b/drivers/tty/serial/Kconfig | |||
| @@ -5,279 +5,7 @@ | |||
| 5 | menu "Serial drivers" | 5 | menu "Serial drivers" |
| 6 | depends on HAS_IOMEM | 6 | depends on HAS_IOMEM |
| 7 | 7 | ||
| 8 | # | 8 | source "drivers/tty/serial/8250/Kconfig" |
| 9 | # The new 8250/16550 serial drivers | ||
| 10 | config SERIAL_8250 | ||
| 11 | tristate "8250/16550 and compatible serial support" | ||
| 12 | select SERIAL_CORE | ||
| 13 | ---help--- | ||
| 14 | This selects whether you want to include the driver for the standard | ||
| 15 | serial ports. The standard answer is Y. People who might say N | ||
| 16 | here are those that are setting up dedicated Ethernet WWW/FTP | ||
| 17 | servers, or users that have one of the various bus mice instead of a | ||
| 18 | serial mouse and don't intend to use their machine's standard serial | ||
| 19 | port for anything. (Note that the Cyclades and Stallion multi | ||
| 20 | serial port drivers do not need this driver built in for them to | ||
| 21 | work.) | ||
| 22 | |||
| 23 | To compile this driver as a module, choose M here: the | ||
| 24 | module will be called 8250. | ||
| 25 | [WARNING: Do not compile this driver as a module if you are using | ||
| 26 | non-standard serial ports, since the configuration information will | ||
| 27 | be lost when the driver is unloaded. This limitation may be lifted | ||
| 28 | in the future.] | ||
| 29 | |||
| 30 | BTW1: If you have a mouseman serial mouse which is not recognized by | ||
| 31 | the X window system, try running gpm first. | ||
| 32 | |||
| 33 | BTW2: If you intend to use a software modem (also called Winmodem) | ||
| 34 | under Linux, forget it. These modems are crippled and require | ||
| 35 | proprietary drivers which are only available under Windows. | ||
| 36 | |||
| 37 | Most people will say Y or M here, so that they can use serial mice, | ||
| 38 | modems and similar devices connecting to the standard serial ports. | ||
| 39 | |||
| 40 | config SERIAL_8250_CONSOLE | ||
| 41 | bool "Console on 8250/16550 and compatible serial port" | ||
| 42 | depends on SERIAL_8250=y | ||
| 43 | select SERIAL_CORE_CONSOLE | ||
| 44 | ---help--- | ||
| 45 | If you say Y here, it will be possible to use a serial port as the | ||
| 46 | system console (the system console is the device which receives all | ||
| 47 | kernel messages and warnings and which allows logins in single user | ||
| 48 | mode). This could be useful if some terminal or printer is connected | ||
| 49 | to that serial port. | ||
| 50 | |||
| 51 | Even if you say Y here, the currently visible virtual console | ||
| 52 | (/dev/tty0) will still be used as the system console by default, but | ||
| 53 | you can alter that using a kernel command line option such as | ||
| 54 | "console=ttyS1". (Try "man bootparam" or see the documentation of | ||
| 55 | your boot loader (grub or lilo or loadlin) about how to pass options | ||
| 56 | to the kernel at boot time.) | ||
| 57 | |||
| 58 | If you don't have a VGA card installed and you say Y here, the | ||
| 59 | kernel will automatically use the first serial line, /dev/ttyS0, as | ||
| 60 | system console. | ||
| 61 | |||
| 62 | You can set that using a kernel command line option such as | ||
| 63 | "console=uart8250,io,0x3f8,9600n8" | ||
| 64 | "console=uart8250,mmio,0xff5e0000,115200n8". | ||
| 65 | and it will switch to normal serial console when the corresponding | ||
| 66 | port is ready. | ||
| 67 | "earlycon=uart8250,io,0x3f8,9600n8" | ||
| 68 | "earlycon=uart8250,mmio,0xff5e0000,115200n8". | ||
| 69 | it will not only setup early console. | ||
| 70 | |||
| 71 | If unsure, say N. | ||
| 72 | |||
| 73 | config FIX_EARLYCON_MEM | ||
| 74 | bool | ||
| 75 | depends on X86 | ||
| 76 | default y | ||
| 77 | |||
| 78 | config SERIAL_8250_GSC | ||
| 79 | tristate | ||
| 80 | depends on SERIAL_8250 && GSC | ||
| 81 | default SERIAL_8250 | ||
| 82 | |||
| 83 | config SERIAL_8250_PCI | ||
| 84 | tristate "8250/16550 PCI device support" if EXPERT | ||
| 85 | depends on SERIAL_8250 && PCI | ||
| 86 | default SERIAL_8250 | ||
| 87 | help | ||
| 88 | This builds standard PCI serial support. You may be able to | ||
| 89 | disable this feature if you only need legacy serial support. | ||
| 90 | Saves about 9K. | ||
| 91 | |||
| 92 | config SERIAL_8250_PNP | ||
| 93 | tristate "8250/16550 PNP device support" if EXPERT | ||
| 94 | depends on SERIAL_8250 && PNP | ||
| 95 | default SERIAL_8250 | ||
| 96 | help | ||
| 97 | This builds standard PNP serial support. You may be able to | ||
| 98 | disable this feature if you only need legacy serial support. | ||
| 99 | |||
| 100 | config SERIAL_8250_FSL | ||
| 101 | bool | ||
| 102 | depends on SERIAL_8250_CONSOLE && PPC_UDBG_16550 | ||
| 103 | default PPC | ||
| 104 | |||
| 105 | config SERIAL_8250_HP300 | ||
| 106 | tristate | ||
| 107 | depends on SERIAL_8250 && HP300 | ||
| 108 | default SERIAL_8250 | ||
| 109 | |||
| 110 | config SERIAL_8250_CS | ||
| 111 | tristate "8250/16550 PCMCIA device support" | ||
| 112 | depends on PCMCIA && SERIAL_8250 | ||
| 113 | ---help--- | ||
| 114 | Say Y here to enable support for 16-bit PCMCIA serial devices, | ||
| 115 | including serial port cards, modems, and the modem functions of | ||
| 116 | multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are | ||
| 117 | credit-card size devices often used with laptops.) | ||
| 118 | |||
| 119 | To compile this driver as a module, choose M here: the | ||
| 120 | module will be called serial_cs. | ||
| 121 | |||
| 122 | If unsure, say N. | ||
| 123 | |||
| 124 | config SERIAL_8250_NR_UARTS | ||
| 125 | int "Maximum number of 8250/16550 serial ports" | ||
| 126 | depends on SERIAL_8250 | ||
| 127 | default "4" | ||
| 128 | help | ||
| 129 | Set this to the number of serial ports you want the driver | ||
| 130 | to support. This includes any ports discovered via ACPI or | ||
| 131 | PCI enumeration and any ports that may be added at run-time | ||
| 132 | via hot-plug, or any ISA multi-port serial cards. | ||
| 133 | |||
| 134 | config SERIAL_8250_RUNTIME_UARTS | ||
| 135 | int "Number of 8250/16550 serial ports to register at runtime" | ||
| 136 | depends on SERIAL_8250 | ||
| 137 | range 0 SERIAL_8250_NR_UARTS | ||
| 138 | default "4" | ||
| 139 | help | ||
| 140 | Set this to the maximum number of serial ports you want | ||
| 141 | the kernel to register at boot time. This can be overridden | ||
| 142 | with the module parameter "nr_uarts", or boot-time parameter | ||
| 143 | 8250.nr_uarts | ||
| 144 | |||
| 145 | config SERIAL_8250_EXTENDED | ||
| 146 | bool "Extended 8250/16550 serial driver options" | ||
| 147 | depends on SERIAL_8250 | ||
| 148 | help | ||
| 149 | If you wish to use any non-standard features of the standard "dumb" | ||
| 150 | driver, say Y here. This includes HUB6 support, shared serial | ||
| 151 | interrupts, special multiport support, support for more than the | ||
| 152 | four COM 1/2/3/4 boards, etc. | ||
| 153 | |||
| 154 | Note that the answer to this question won't directly affect the | ||
| 155 | kernel: saying N will just cause the configurator to skip all | ||
| 156 | the questions about serial driver options. If unsure, say N. | ||
| 157 | |||
| 158 | config SERIAL_8250_MANY_PORTS | ||
| 159 | bool "Support more than 4 legacy serial ports" | ||
| 160 | depends on SERIAL_8250_EXTENDED && !IA64 | ||
| 161 | help | ||
| 162 | Say Y here if you have dumb serial boards other than the four | ||
| 163 | standard COM 1/2/3/4 ports. This may happen if you have an AST | ||
| 164 | FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available | ||
| 165 | from <http://www.tldp.org/docs.html#howto>), or other custom | ||
| 166 | serial port hardware which acts similar to standard serial port | ||
| 167 | hardware. If you only use the standard COM 1/2/3/4 ports, you can | ||
| 168 | say N here to save some memory. You can also say Y if you have an | ||
| 169 | "intelligent" multiport card such as Cyclades, Digiboards, etc. | ||
| 170 | |||
| 171 | # | ||
| 172 | # Multi-port serial cards | ||
| 173 | # | ||
| 174 | |||
| 175 | config SERIAL_8250_FOURPORT | ||
| 176 | tristate "Support Fourport cards" | ||
| 177 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 178 | help | ||
| 179 | Say Y here if you have an AST FourPort serial board. | ||
| 180 | |||
| 181 | To compile this driver as a module, choose M here: the module | ||
| 182 | will be called 8250_fourport. | ||
| 183 | |||
| 184 | config SERIAL_8250_ACCENT | ||
| 185 | tristate "Support Accent cards" | ||
| 186 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 187 | help | ||
| 188 | Say Y here if you have an Accent Async serial board. | ||
| 189 | |||
| 190 | To compile this driver as a module, choose M here: the module | ||
| 191 | will be called 8250_accent. | ||
| 192 | |||
| 193 | config SERIAL_8250_BOCA | ||
| 194 | tristate "Support Boca cards" | ||
| 195 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 196 | help | ||
| 197 | Say Y here if you have a Boca serial board. Please read the Boca | ||
| 198 | mini-HOWTO, available from <http://www.tldp.org/docs.html#howto> | ||
| 199 | |||
| 200 | To compile this driver as a module, choose M here: the module | ||
| 201 | will be called 8250_boca. | ||
| 202 | |||
| 203 | config SERIAL_8250_EXAR_ST16C554 | ||
| 204 | tristate "Support Exar ST16C554/554D Quad UART" | ||
| 205 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 206 | help | ||
| 207 | The Uplogix Envoy TU301 uses this Exar Quad UART. If you are | ||
| 208 | tinkering with your Envoy TU301, or have a machine with this UART, | ||
| 209 | say Y here. | ||
| 210 | |||
| 211 | To compile this driver as a module, choose M here: the module | ||
| 212 | will be called 8250_exar_st16c554. | ||
| 213 | |||
| 214 | config SERIAL_8250_HUB6 | ||
| 215 | tristate "Support Hub6 cards" | ||
| 216 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS | ||
| 217 | help | ||
| 218 | Say Y here if you have a HUB6 serial board. | ||
| 219 | |||
| 220 | To compile this driver as a module, choose M here: the module | ||
| 221 | will be called 8250_hub6. | ||
| 222 | |||
| 223 | config SERIAL_8250_SHARE_IRQ | ||
| 224 | bool "Support for sharing serial interrupts" | ||
| 225 | depends on SERIAL_8250_EXTENDED | ||
| 226 | help | ||
| 227 | Some serial boards have hardware support which allows multiple dumb | ||
| 228 | serial ports on the same board to share a single IRQ. To enable | ||
| 229 | support for this in the serial driver, say Y here. | ||
| 230 | |||
| 231 | config SERIAL_8250_DETECT_IRQ | ||
| 232 | bool "Autodetect IRQ on standard ports (unsafe)" | ||
| 233 | depends on SERIAL_8250_EXTENDED | ||
| 234 | help | ||
| 235 | Say Y here if you want the kernel to try to guess which IRQ | ||
| 236 | to use for your serial port. | ||
| 237 | |||
| 238 | This is considered unsafe; it is far better to configure the IRQ in | ||
| 239 | a boot script using the setserial command. | ||
| 240 | |||
| 241 | If unsure, say N. | ||
| 242 | |||
| 243 | config SERIAL_8250_RSA | ||
| 244 | bool "Support RSA serial ports" | ||
| 245 | depends on SERIAL_8250_EXTENDED | ||
| 246 | help | ||
| 247 | ::: To be written ::: | ||
| 248 | |||
| 249 | config SERIAL_8250_MCA | ||
| 250 | tristate "Support 8250-type ports on MCA buses" | ||
| 251 | depends on SERIAL_8250 != n && MCA | ||
| 252 | help | ||
| 253 | Say Y here if you have a MCA serial ports. | ||
| 254 | |||
| 255 | To compile this driver as a module, choose M here: the module | ||
| 256 | will be called 8250_mca. | ||
| 257 | |||
| 258 | config SERIAL_8250_ACORN | ||
| 259 | tristate "Acorn expansion card serial port support" | ||
| 260 | depends on ARCH_ACORN && SERIAL_8250 | ||
| 261 | help | ||
| 262 | If you have an Atomwide Serial card or Serial Port card for an Acorn | ||
| 263 | system, say Y to this option. The driver can handle 1, 2, or 3 port | ||
| 264 | cards. If unsure, say N. | ||
| 265 | |||
| 266 | config SERIAL_8250_RM9K | ||
| 267 | bool "Support for MIPS RM9xxx integrated serial port" | ||
| 268 | depends on SERIAL_8250 != n && SERIAL_RM9000 | ||
| 269 | select SERIAL_8250_SHARE_IRQ | ||
| 270 | help | ||
| 271 | Selecting this option will add support for the integrated serial | ||
| 272 | port hardware found on MIPS RM9122 and similar processors. | ||
| 273 | If unsure, say N. | ||
| 274 | |||
| 275 | config SERIAL_8250_DW | ||
| 276 | tristate "Support for Synopsys DesignWare 8250 quirks" | ||
| 277 | depends on SERIAL_8250 && OF | ||
| 278 | help | ||
| 279 | Selecting this option will enable handling of the extra features | ||
| 280 | present in the Synopsys DesignWare APB UART. | ||
| 281 | 9 | ||
| 282 | comment "Non-8250 serial port support" | 10 | comment "Non-8250 serial port support" |
| 283 | 11 | ||
diff --git a/drivers/tty/serial/Makefile b/drivers/tty/serial/Makefile index f5b01f2ce525..a6d1ac049965 100644 --- a/drivers/tty/serial/Makefile +++ b/drivers/tty/serial/Makefile | |||
| @@ -14,22 +14,9 @@ obj-$(CONFIG_SERIAL_SUNZILOG) += sunzilog.o | |||
| 14 | obj-$(CONFIG_SERIAL_SUNSU) += sunsu.o | 14 | obj-$(CONFIG_SERIAL_SUNSU) += sunsu.o |
| 15 | obj-$(CONFIG_SERIAL_SUNSAB) += sunsab.o | 15 | obj-$(CONFIG_SERIAL_SUNSAB) += sunsab.o |
| 16 | 16 | ||
| 17 | obj-$(CONFIG_SERIAL_8250) += 8250.o | 17 | # Now bring in any enabled 8250/16450/16550 type drivers. |
| 18 | obj-$(CONFIG_SERIAL_8250_PNP) += 8250_pnp.o | 18 | obj-$(CONFIG_SERIAL_8250) += 8250/ |
| 19 | obj-$(CONFIG_SERIAL_8250_GSC) += 8250_gsc.o | 19 | |
| 20 | obj-$(CONFIG_SERIAL_8250_PCI) += 8250_pci.o | ||
| 21 | obj-$(CONFIG_SERIAL_8250_HP300) += 8250_hp300.o | ||
| 22 | obj-$(CONFIG_SERIAL_8250_CS) += serial_cs.o | ||
| 23 | obj-$(CONFIG_SERIAL_8250_ACORN) += 8250_acorn.o | ||
| 24 | obj-$(CONFIG_SERIAL_8250_CONSOLE) += 8250_early.o | ||
| 25 | obj-$(CONFIG_SERIAL_8250_FOURPORT) += 8250_fourport.o | ||
| 26 | obj-$(CONFIG_SERIAL_8250_ACCENT) += 8250_accent.o | ||
| 27 | obj-$(CONFIG_SERIAL_8250_BOCA) += 8250_boca.o | ||
| 28 | obj-$(CONFIG_SERIAL_8250_EXAR_ST16C554) += 8250_exar_st16c554.o | ||
| 29 | obj-$(CONFIG_SERIAL_8250_HUB6) += 8250_hub6.o | ||
| 30 | obj-$(CONFIG_SERIAL_8250_MCA) += 8250_mca.o | ||
| 31 | obj-$(CONFIG_SERIAL_8250_FSL) += 8250_fsl.o | ||
| 32 | obj-$(CONFIG_SERIAL_8250_DW) += 8250_dw.o | ||
| 33 | obj-$(CONFIG_SERIAL_AMBA_PL010) += amba-pl010.o | 20 | obj-$(CONFIG_SERIAL_AMBA_PL010) += amba-pl010.o |
| 34 | obj-$(CONFIG_SERIAL_AMBA_PL011) += amba-pl011.o | 21 | obj-$(CONFIG_SERIAL_AMBA_PL011) += amba-pl011.o |
| 35 | obj-$(CONFIG_SERIAL_CLPS711X) += clps711x.o | 22 | obj-$(CONFIG_SERIAL_CLPS711X) += clps711x.o |
