]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
Merge tag 'tty-3.3-rc3' tty-next
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 10 Feb 2012 18:23:43 +0000 (10:23 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 10 Feb 2012 18:25:27 +0000 (10:25 -0800)
This is needed to handle the 8250 file merge mess properly for future
patches.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1  2 
drivers/tty/serial/8250/8250.c
drivers/tty/serial/Kconfig
drivers/tty/serial/Makefile

index 9b7336fcfbb383ea9648cd5ade7f93652ad4b788,b0eb961393245d63009ed115c663f5ea06bfee68..b423d0f962a225e6d93c8bc5fda3cf77c3ea917a
@@@ -45,7 -45,7 +45,7 @@@
  #include "8250.h"
  
  #ifdef CONFIG_SPARC
 -#include "suncore.h"
 +#include "../suncore.h"
  #endif
  
  /*
@@@ -86,13 -86,6 +86,6 @@@ static unsigned int skip_txen_test; /* 
  #define BOTH_EMPTY    (UART_LSR_TEMT | UART_LSR_THRE)
  
  
- /*
-  * We default to IRQ0 for the "no irq" hack.   Some
-  * machine types want others as well - they're free
-  * to redefine this in their header file.
-  */
- #define is_real_interrupt(irq)        ((irq) != 0)
  #ifdef CONFIG_SERIAL_8250_DETECT_IRQ
  #define CONFIG_SERIAL_DETECT_IRQ 1
  #endif
@@@ -1750,7 -1743,7 +1743,7 @@@ static void serial8250_backup_timeout(u
         * Must disable interrupts or else we risk racing with the interrupt
         * based handler.
         */
-       if (is_real_interrupt(up->port.irq)) {
+       if (up->port.irq) {
                ier = serial_in(up, UART_IER);
                serial_out(up, UART_IER, 0);
        }
        if (!(iir & UART_IIR_NO_INT))
                serial8250_tx_chars(up);
  
-       if (is_real_interrupt(up->port.irq))
+       if (up->port.irq)
                serial_out(up, UART_IER, ier);
  
        spin_unlock_irqrestore(&up->port.lock, flags);
@@@ -2028,7 -2021,7 +2021,7 @@@ static int serial8250_startup(struct ua
                serial_outp(up, UART_LCR, 0);
        }
  
-       if (is_real_interrupt(up->port.irq)) {
+       if (up->port.irq) {
                unsigned char iir1;
                /*
                 * Test for UARTs that do not reassert THRE when the
         * hardware interrupt, we use a timer-based system.  The original
         * driver used to do this with IRQ0.
         */
-       if (!is_real_interrupt(up->port.irq)) {
+       if (!up->port.irq) {
                up->timer.data = (unsigned long)up;
                mod_timer(&up->timer, jiffies + uart_poll_timeout(port));
        } else {
  
        spin_lock_irqsave(&up->port.lock, flags);
        if (up->port.flags & UPF_FOURPORT) {
-               if (!is_real_interrupt(up->port.irq))
+               if (!up->port.irq)
                        up->port.mctrl |= TIOCM_OUT1;
        } else
                /*
                 * Most PC uarts need OUT2 raised to enable interrupts.
                 */
-               if (is_real_interrupt(up->port.irq))
+               if (up->port.irq)
                        up->port.mctrl |= TIOCM_OUT2;
  
        serial8250_set_mctrl(&up->port, up->port.mctrl);
@@@ -2223,7 -2216,7 +2216,7 @@@ static void serial8250_shutdown(struct 
  
        del_timer_sync(&up->timer);
        up->timer.function = serial8250_timeout;
-       if (is_real_interrupt(up->port.irq))
+       if (up->port.irq)
                serial_unlink_irq_chain(up);
  }
  
index 2de99248dfaee06329f8a4f49505c9db66f7adf1,6e24a8f5fd2a2f517678311afff626ea157a075b..76e7764488e6b306fc5c7bc7be08e4063874b298
@@@ -5,7 -5,279 +5,7 @@@
  menu "Serial drivers"
        depends on HAS_IOMEM
  
 -#
 -# 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
 -        module will be called 8250.
 -        [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.
 -
 -        You can set that using a kernel command line option such as
 -        "console=uart8250,io,0x3f8,9600n8"
 -        "console=uart8250,mmio,0xff5e0000,115200n8".
 -        and it will switch to normal serial console when the corresponding 
 -        port is ready.
 -        "earlycon=uart8250,io,0x3f8,9600n8"
 -        "earlycon=uart8250,mmio,0xff5e0000,115200n8".
 -        it will not only setup early console.
 -
 -        If unsure, say N.
 -
 -config FIX_EARLYCON_MEM
 -      bool
 -      depends on X86
 -      default y
 -
 -config SERIAL_8250_GSC
 -      tristate
 -      depends on SERIAL_8250 && GSC
 -      default SERIAL_8250
 -
 -config SERIAL_8250_PCI
 -      tristate "8250/16550 PCI device support" if EXPERT
 -      depends on SERIAL_8250 && PCI
 -      default SERIAL_8250
 -      help
 -        This builds standard PCI serial support. You may be able to
 -        disable this feature if you only need legacy serial support.
 -        Saves about 9K.
 -
 -config SERIAL_8250_PNP
 -      tristate "8250/16550 PNP device support" if EXPERT
 -      depends on SERIAL_8250 && PNP
 -      default SERIAL_8250
 -      help
 -        This builds standard PNP serial support. You may be able to
 -        disable this feature if you only need legacy serial support.
 -
 -config SERIAL_8250_FSL
 -      bool
 -      depends on SERIAL_8250_CONSOLE && PPC_UDBG_16550
 -      default PPC
 -
 -config SERIAL_8250_HP300
 -      tristate
 -      depends on SERIAL_8250 && HP300
 -      default SERIAL_8250
 -
 -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
 -      int "Maximum number of 8250/16550 serial ports"
 -      depends on SERIAL_8250
 -      default "4"
 -      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.
 -
 -config SERIAL_8250_RUNTIME_UARTS
 -      int "Number of 8250/16550 serial ports to register at runtime"
 -      depends on SERIAL_8250
 -      range 0 SERIAL_8250_NR_UARTS
 -      default "4"
 -      help
 -        Set this to the maximum number of serial ports you want
 -        the kernel to register at boot time.  This can be overridden
 -        with the module parameter "nr_uarts", or boot-time parameter
 -        8250.nr_uarts
 -
 -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.
 -
 -#
 -# 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
 -        mini-HOWTO, available from <http://www.tldp.org/docs.html#howto>
 -
 -        To compile this driver as a module, choose M here: the module
 -        will be called 8250_boca.
 -
 -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.
 -
 -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.
 -
 -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 :::
 -
 -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.
 -
 -config SERIAL_8250_ACORN
 -      tristate "Acorn expansion card serial port support"
 -      depends on ARCH_ACORN && SERIAL_8250
 -      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.
 -
 -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.
 -
 -config SERIAL_8250_DW
 -      tristate "Support for Synopsys DesignWare 8250 quirks"
 -      depends on SERIAL_8250 && OF
 -      help
 -        Selecting this option will enable handling of the extra features
 -        present in the Synopsys DesignWare APB UART.
 +source "drivers/tty/serial/8250/Kconfig"
  
  comment "Non-8250 serial port support"
  
@@@ -264,6 -536,15 +264,6 @@@ config SERIAL_MAX310
        help
          MAX3107 chip support
  
 -config SERIAL_MAX3107_AAVA
 -      tristate "MAX3107 AAVA platform support"
 -      depends on X86_MRST && SERIAL_MAX3107 && GPIOLIB
 -      select SERIAL_CORE
 -      help
 -        Support for the MAX3107 chip configuration found on the AAVA
 -        platform. Includes the extra initialisation and GPIO support
 -        neded for this device.
 -
  config SERIAL_DZ
        bool "DECstation DZ serial driver"
        depends on MACH_DECSTATION && 32BIT
@@@ -1347,4 -1628,17 +1347,17 @@@ config SERIAL_AR933X_NR_UART
          Set this to the number of serial ports you want the driver
          to support.
  
+ config SERIAL_EFM32_UART
+       tristate "EFM32 UART/USART port."
+       depends on ARCH_EFM32
+       select SERIAL_CORE
+       help
+         This driver support the USART and UART ports on
+         Energy Micro's efm32 SoCs.
+ config SERIAL_EFM32_UART_CONSOLE
+       bool "EFM32 UART/USART console support"
+       depends on SERIAL_EFM32_UART=y
+       select SERIAL_CORE_CONSOLE
  endmenu
index fef32e10c8515a9de39ceab267f6647882c64197,50d279000e79a8618156f5ee4dc357d8baaf8192..7257c5d898ae2d36da427c3f6a9e225f1a0741ae
@@@ -14,9 -14,22 +14,9 @@@ obj-$(CONFIG_SERIAL_SUNZILOG) += sunzil
  obj-$(CONFIG_SERIAL_SUNSU) += sunsu.o
  obj-$(CONFIG_SERIAL_SUNSAB) += sunsab.o
  
 -obj-$(CONFIG_SERIAL_8250) += 8250.o
 -obj-$(CONFIG_SERIAL_8250_PNP) += 8250_pnp.o
 -obj-$(CONFIG_SERIAL_8250_GSC) += 8250_gsc.o
 -obj-$(CONFIG_SERIAL_8250_PCI) += 8250_pci.o
 -obj-$(CONFIG_SERIAL_8250_HP300) += 8250_hp300.o
 -obj-$(CONFIG_SERIAL_8250_CS) += serial_cs.o
 -obj-$(CONFIG_SERIAL_8250_ACORN) += 8250_acorn.o
 -obj-$(CONFIG_SERIAL_8250_CONSOLE) += 8250_early.o
 -obj-$(CONFIG_SERIAL_8250_FOURPORT) += 8250_fourport.o
 -obj-$(CONFIG_SERIAL_8250_ACCENT) += 8250_accent.o
 -obj-$(CONFIG_SERIAL_8250_BOCA) += 8250_boca.o
 -obj-$(CONFIG_SERIAL_8250_EXAR_ST16C554) += 8250_exar_st16c554.o
 -obj-$(CONFIG_SERIAL_8250_HUB6) += 8250_hub6.o
 -obj-$(CONFIG_SERIAL_8250_MCA) += 8250_mca.o
 -obj-$(CONFIG_SERIAL_8250_FSL) += 8250_fsl.o
 -obj-$(CONFIG_SERIAL_8250_DW) += 8250_dw.o
 +# Now bring in any enabled 8250/16450/16550 type drivers.
 +obj-$(CONFIG_SERIAL_8250) += 8250/
 +
  obj-$(CONFIG_SERIAL_AMBA_PL010) += amba-pl010.o
  obj-$(CONFIG_SERIAL_AMBA_PL011) += amba-pl011.o
  obj-$(CONFIG_SERIAL_CLPS711X) += clps711x.o
@@@ -29,6 -42,7 +29,6 @@@ obj-$(CONFIG_SERIAL_BFIN_SPORT) += bfin
  obj-$(CONFIG_SERIAL_SAMSUNG) += samsung.o
  obj-$(CONFIG_SERIAL_MAX3100) += max3100.o
  obj-$(CONFIG_SERIAL_MAX3107) += max3107.o
 -obj-$(CONFIG_SERIAL_MAX3107_AAVA) += max3107-aava.o
  obj-$(CONFIG_SERIAL_IP22_ZILOG) += ip22zilog.o
  obj-$(CONFIG_SERIAL_MUX) += mux.o
  obj-$(CONFIG_SERIAL_68328) += 68328serial.o
@@@ -61,12 -75,12 +61,12 @@@ obj-$(CONFIG_SERIAL_OF_PLATFORM) += of_
  obj-$(CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL) += nwpserial.o
  obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o
  obj-$(CONFIG_SERIAL_OMAP) += omap-serial.o
+ obj-$(CONFIG_SERIAL_ALTERA_UART) += altera_uart.o
  obj-$(CONFIG_KGDB_SERIAL_CONSOLE) += kgdboc.o
  obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
  obj-$(CONFIG_SERIAL_TIMBERDALE)       += timbuart.o
  obj-$(CONFIG_SERIAL_GRLIB_GAISLER_APBUART) += apbuart.o
  obj-$(CONFIG_SERIAL_ALTERA_JTAGUART) += altera_jtaguart.o
- obj-$(CONFIG_SERIAL_ALTERA_UART) += altera_uart.o
  obj-$(CONFIG_SERIAL_VT8500) += vt8500_serial.o
  obj-$(CONFIG_SERIAL_MRST_MAX3110)     += mrst_max3110.o
  obj-$(CONFIG_SERIAL_MFD_HSU)  += mfd.o
@@@ -78,3 -92,4 +78,4 @@@ obj-$(CONFIG_SERIAL_LANTIQ)   += lantiq.
  obj-$(CONFIG_SERIAL_XILINX_PS_UART) += xilinx_uartps.o
  obj-$(CONFIG_SERIAL_SIRFSOC) += sirfsoc_uart.o
  obj-$(CONFIG_SERIAL_AR933X)   += ar933x_uart.o
+ obj-$(CONFIG_SERIAL_EFM32_UART) += efm32-uart.o