linux/drivers/tty/serial
Andy Shevchenko a13e19cf3d serial: 8250_lpss: split LPSS driver to separate module
The SoCs, such as Intel Braswell, have DesignWare UART IP. Split out the
support of such chips to a separate module which also will be used for Intel
Quark later.

The rationale to have the separate driver to be existing:
- Do not contaminate 8250_pci.c anymore with LPSS related quirks
- All of them are using same DMA engine and they are Designware IP which means
  that in the future we might share the code between 8250_dw.c and 8250_lpss.c
- It reduces the kernel memory footprint on non-X86 machines where 8250_pci.c
  is in use

Besides the split the driver also has been refactored, in particular a) the DMA
and port setup are separate functions, b) the two new structures lpss8250 and
lpss8250_board are introduced to keep necessary data instead of
pciserial_board, c) DMA parameters are passed to the DMA setup via mentioned
custom structure. Most of the changes are done due to the future support of
UART DMA on Intel Quark.

The Intel Quark UART DMA support is based on bits taking from BSP code
published by Intel earlier.

The driver does not use any specific power management. PCI core takes care of
the default behaviour during suspend and resume.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Tested-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-08-31 16:13:30 +02:00
..
8250 serial: 8250_lpss: split LPSS driver to separate module 2016-08-31 16:13:30 +02:00
cpm_uart
jsm tty: serial: jsm_tty: fixed redundant variable issue. 2016-02-07 13:36:09 -08:00
21285.c
altera_jtaguart.c
altera_uart.c
amba-pl010.c
amba-pl011.c tty: amba-pl011: probe ZTE device from AMBA bus with a pseudo-ID 2016-08-31 15:24:23 +02:00
amba-pl011.h tty: amba-pl011: clean up LCR register offsets 2015-12-13 19:59:48 -08:00
apbuart.c
apbuart.h
ar933x_uart.c tree-wide: replace config_enabled() with IS_ENABLED() 2016-08-04 08:50:07 -04:00
arc_uart.c earlycon: Use common framework for earlycon declarations 2016-02-06 22:07:37 -08:00
atmel_serial.c tty/serial: at91: use of_property_read_bool 2016-08-31 15:53:48 +02:00
bcm63xx_uart.c serial/bcm63xx_uart: use correct alias naming 2016-06-25 14:00:06 -07:00
bfin_sport_uart.c
bfin_sport_uart.h
bfin_uart.c serial:bfin-uart:Remove 'struct timeval' 2015-12-13 19:59:48 -08:00
clps711x.c serial: clps711x: Changing the compatibility string to match with the smallest supported chip 2016-07-06 17:38:16 +02:00
crisv10.c tty: Replace ASYNC_INITIALIZED bit and update atomically 2016-04-30 09:26:55 -07:00
crisv10.h
digicolor-usart.c tty/serial: digicolor: Fix bad usage of IS_ERR_VALUE 2016-02-14 17:39:36 -08:00
dz.c
dz.h
earlycon-arm-semihost.c
earlycon.c serial: earlycon: Show the earlycon "driver" in banner 2016-02-06 22:07:37 -08:00
efm32-uart.c
etraxfs-uart.c serial: etraxfs-uart: Fix crash 2015-11-20 16:19:54 -08:00
fsl_lpuart.c tty: serial: fsl_lpuart: Add support for RS-485 2016-08-31 15:48:29 +02:00
icom.c tty: Remove unused SERIAL_DO_RESTART define 2015-12-13 19:59:48 -08:00
icom.h
ifx6x60.c TTY: serial/ifx6x60, initialize more 2016-04-30 09:26:55 -07:00
ifx6x60.h
imx.c serial: imx: Use generic uart-has-rtscts DT property 2016-04-30 09:26:55 -07:00
ioc3_serial.c
ioc4_serial.c
ip22zilog.c
ip22zilog.h
Kconfig serial: Make SERIAL_MPS2_UART depend on ARCH_MPS2 2016-06-25 10:40:33 -07:00
kgdb_nmi.c
kgdboc.c
lantiq.c
lpc32xx_hs.c
m32r_sio_reg.h
m32r_sio.c serial: m32r_sio: make it explicitly non-modular 2016-06-25 14:00:06 -07:00
Makefile TTY and Serial driver update for 4.7-rc1 2016-05-20 20:57:27 -07:00
max310x.c serial: max310x: Assign port line automatically 2016-06-25 13:55:35 -07:00
max3100.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
mcf.c
men_z135_uart.c serial/men_z135_uart: Deinline men_z135_reg_clr, save 176 bytes 2015-12-13 19:59:48 -08:00
meson_uart.c tty: serial: meson: Implement earlycon support 2016-04-30 09:26:55 -07:00
mpc52xx_uart.c tty: serial: constify psc_ops structs 2016-02-06 22:31:47 -08:00
mps2-uart.c serial: mps2-uart: make driver explicitly non-modular 2016-06-25 14:01:57 -07:00
mpsc.c TTY: serial/mpsc, remove unused fields 2016-02-06 22:16:21 -08:00
msm_serial.c tty: serial: msm: fix definition of msm_stop_dma 2016-06-25 10:23:54 -07:00
mux.c parisc: serial/mux: Convert to uart_console_device instead of open-coded 2015-10-22 15:44:28 +02:00
mvebu-uart.c serial: mvebu-uart: free the IRQ in ->shutdown() 2016-06-25 14:00:06 -07:00
mxs-auart.c serial: mxs-auart: Use generic uart-has-rtscts DT property 2016-04-30 09:26:55 -07:00
netx-serial.c
omap-serial.c Merge 4.5-rc4 into tty-next 2016-02-14 14:36:04 -08:00
pch_uart.c
pic32_uart.c serial: pic32_uart: Fix double free of 'sport->irq_fault_name'. 2016-06-25 13:50:53 -07:00
pic32_uart.h serial: pic32_uart: Add PIC32 UART driver 2016-05-13 14:01:56 +02:00
pmac_zilog.c TTY: serial, handle platform_get_irq retval properly 2016-06-25 09:01:52 -07:00
pmac_zilog.h
pnx8xxx_uart.c
pxa.c serial: pxa: make it explicitly non-modular 2016-06-25 14:00:06 -07:00
rp2.c
sa1100.c
samsung.c serial: samsung: Register cpufreq notifier only on S3C24xx 2016-08-31 15:39:58 +02:00
samsung.h serial: samsung: Register cpufreq notifier only on S3C24xx 2016-08-31 15:39:58 +02:00
sb1250-duart.c
sc16is7xx.c sc16is7xx: make sure device is in suspend once probed 2016-08-31 16:05:26 +02:00
sccnxp.c
serial_core.c tty: serial_core: convert uart_close to use tty_port_close 2016-08-31 15:42:28 +02:00
serial_ks8695.c serial: Fix ASYNC_* => UPF_* flags misuse 2016-01-28 14:17:42 -08:00
serial_mctrl_gpio.c serial: mctrl_gpio: enable API usage only for initialized mctrl_gpios struct 2016-06-25 14:30:42 -07:00
serial_mctrl_gpio.h serial: mctrl_gpio: add modem control read routine 2016-06-25 14:30:42 -07:00
serial_txx9.c
serial-tegra.c TTY: serial, handle platform_get_irq retval properly 2016-06-25 09:01:52 -07:00
sh-sci.c serial: sh-sci: Stop transfers in sci_shutdown() 2016-06-26 10:57:13 -07:00
sh-sci.h serial: sh-sci: Clear (H)SCIF timeout and overrun during reset 2016-06-25 09:09:53 -07:00
sirfsoc_uart.c serial: sirf: Use generic uart-has-rtscts DT property 2016-04-30 09:26:55 -07:00
sirfsoc_uart.h serial: sirf: make fifo functions static 2016-06-25 14:01:57 -07:00
sn_console.c
sprd_serial.c remove lots of IS_ERR_VALUE abuses 2016-05-27 15:26:11 -07:00
st-asc.c
stm32-usart.c
suncore.c
sunhv.c sparc: serial: sunhv: fix a double lock bug 2016-07-27 22:54:52 -07:00
sunsab.c
sunsab.h
sunsu.c serial/sunsu: Deinline wait_for_xmitr, save 165 bytes 2015-12-13 19:59:48 -08:00
sunzilog.c
sunzilog.h
tilegx.c
timbuart.c
timbuart.h
uartlite.c serial-uartlite: Constify uartlite_be/uartlite_le 2016-04-30 09:26:55 -07:00
ucc_uart.c QE-UART: add "fsl,t1040-ucc-uart" to of_device_id 2016-05-01 13:55:12 -07:00
vr41xx_siu.c
vt8500_serial.c serial: vt8500_serial: Fix a parameter of find_first_zero_bit. 2016-08-31 15:42:28 +02:00
xilinx_uartps.c tty: xuartps: disable clocks when not used 2016-06-25 13:50:53 -07:00
zs.c serial: zs: Fix a transmit lockup in console output 2016-02-06 23:13:30 -08:00
zs.h