linux/drivers/tty/serial
Robert Baldyga b543c301c2 serial: samsung: add DMA support for RX
Add RX DMA transfers support for samsung serial driver. It's enabled
when DMA controller for RX channel is specified in device-tree.

DMA transactions are started when number of bytes in RX FIFO reaches
trigger level, otherwise PIO mode is used. DMA transfer size is always
PAGE_SIZE which can cause large latency when smaller data amount is
transferred, so we always terminate DMA transaction on RX timeout
interrupt. Timeout interval is set to 64 frame times.

Based on previous work of Sylwester Nawrocki and Lukasz Czerwinski.

Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-01-09 14:25:39 -08:00
..
8250 tty: serial: 8250: drop owner assignment from platform_drivers 2015-01-09 14:16:47 -08:00
cpm_uart Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
jsm serial: jsm: Fix unnecessary space before function ptr arguments 2014-11-25 17:06:38 -08:00
21285.c serial: treewide: Remove empty implementations of enable_ms() 2014-07-09 17:29:38 -07:00
68328serial.c
altera_jtaguart.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
altera_uart.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
amba-pl010.c serial: Test/disable MSIs if switching from N_PPS 2014-11-06 14:57:27 -08:00
amba-pl011.c serial: pl011: Add device tree support for RX DMA polling 2014-11-07 08:35:56 -08:00
apbuart.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
apbuart.h
ar933x_uart.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
arc_uart.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
atmel_serial.c tty/serial: at91: fix typo and indentation 2015-01-09 14:20:49 -08:00
bcm63xx_uart.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
bfin_sport_uart.c tty: pr_warning->pr_warn and logging neatening 2014-11-25 17:06:38 -08:00
bfin_sport_uart.h
bfin_uart.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
clps711x.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
crisv10.c cris: Remove obsolete ASYNC_SPLIT_TERMIOS behavior 2014-11-05 20:18:30 -08:00
crisv10.h cris: Remove obsolete ASYNC_SPLIT_TERMIOS behavior 2014-11-05 20:18:30 -08:00
dz.c serial: treewide: Remove empty implementations of enable_ms() 2014-07-09 17:29:38 -07:00
dz.h
earlycon-arm-semihost.c tty/serial: add arm/arm64 semihosting earlycon 2014-04-24 16:32:27 -07:00
earlycon.c tty/serial: earlycon: Fix print for implied MMIO case 2014-11-05 19:45:52 -08:00
efm32-uart.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
fsl_lpuart.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
icom.c serial: icom: fix error return code 2014-11-25 17:06:39 -08:00
icom.h
ifx6x60.c
ifx6x60.h
imx.c serial: imx: Support sw flow control in DMA mode 2015-01-09 14:23:59 -08:00
ioc3_serial.c serial: treewide: Remove empty implementations of enable_ms() 2014-07-09 17:29:38 -07:00
ioc4_serial.c serial: treewide: Remove empty implementations of enable_ms() 2014-07-09 17:29:38 -07:00
ip22zilog.c serial: use container_of to resolve uart_ip22zilog_port from uart_port 2014-11-05 19:20:52 -08:00
ip22zilog.h
Kconfig TTY/Serial driver patches for 3.19-rc1 2014-12-14 15:23:32 -08:00
kgdb_nmi.c serial: kgdb_nmi: No CON_ENABLED by default 2014-09-08 16:26:07 -07:00
kgdboc.c
lantiq.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
lpc32xx_hs.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
m32r_sio_reg.h
m32r_sio.c serial: use container_of to resolve uart_sio_port from uart_port 2014-11-05 19:20:52 -08:00
m32r_sio.h
Makefile ARM: meson: serial: add MesonX SoC on-chip uart driver 2014-09-08 16:12:40 -07:00
max310x.c drivers/max310: Use the rs485 functions on serial_core 2014-11-06 15:00:15 -08:00
max3100.c
mcf.c serial: mcf: fix no driver name in probe output 2015-01-09 14:06:57 -08:00
men_z135_uart.c tty: serial: men_z135_uart: Add terminating entry for men_z135_ids 2014-11-25 17:06:38 -08:00
meson_uart.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
mfd.c More ACPI and power management updates for 3.19-rc1 2014-12-18 20:28:33 -08:00
mpc52xx_uart.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
mpsc.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
mrst_max3110.c tty: pr_warning->pr_warn and logging neatening 2014-11-25 17:06:38 -08:00
mrst_max3110.h
msm_serial_hs.c More ACPI and power management updates for 3.19-rc1 2014-12-18 20:28:33 -08:00
msm_serial.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
msm_serial.h tty: serial: msm: Support sysrq on uartDM devices 2014-11-06 14:57:22 -08:00
msm_smd_tty.c
mux.c serial: treewide: Remove empty implementations of enable_ms() 2014-07-09 17:29:38 -07:00
mxs-auart.c serial: mxs-auart: Use devm_request_irq() 2015-01-09 14:12:27 -08:00
netx-serial.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
nwpserial.c serial: Fix build failure caused by missing header file 2014-09-08 16:17:45 -07:00
of_serial.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
omap-serial.c trivial fixes for omap-serial 2015-01-09 14:10:46 -08:00
pch_uart.c pch_uart: don't hardcode PCI slot to get DMA device 2014-08-01 16:04:21 -07:00
pmac_zilog.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
pmac_zilog.h
pnx8xxx_uart.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
pxa.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
rp2.c tty: remove DEFINE_PCI_DEVICE_TABLE macro 2013-12-08 17:09:07 -08:00
sa1100.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
samsung.c serial: samsung: add DMA support for RX 2015-01-09 14:25:39 -08:00
samsung.h serial: samsung: add DMA support for RX 2015-01-09 14:25:39 -08:00
sb1250-duart.c serial: Fix IGNBRK handling 2014-06-19 13:04:52 -07:00
sc16is7xx.c serial/sc16is7xx: Use the rs485 functions on serial_core 2014-11-06 14:59:21 -08:00
sccnxp.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
serial_core.c serial: core: Add big-endian iotype 2014-11-25 17:06:40 -08:00
serial_ks8695.c serial: Fix IGNBRK handling 2014-06-19 13:04:52 -07:00
serial_mctrl_gpio.c serial: mctrl_gpio: use gpiod_set_array function 2014-12-02 14:25:42 +01:00
serial_mctrl_gpio.h tty/serial: Add GPIOLIB helpers for controlling modem lines 2014-05-28 12:49:14 -07:00
serial_txx9.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
serial-tegra.c serial: tegra: clean up tty-flag assignments 2014-11-25 17:06:39 -08:00
sh-sci.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
sh-sci.h serial: sh-sci: Move overrun_bit and error_mask fields out of pdata 2013-12-24 11:17:48 +09:00
sirfsoc_uart.c serial: sirf: rename marco to atlas7 2015-01-09 14:17:59 -08:00
sirfsoc_uart.h serial: sirf: rename marco to atlas7 2015-01-09 14:17:59 -08:00
sn_console.c serial: treewide: Remove empty implementations of enable_ms() 2014-07-09 17:29:38 -07:00
st-asc.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
suncore.c
sunhv.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
sunsab.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
sunsab.h
sunsu.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
sunzilog.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
sunzilog.h
tilegx.c serial: treewide: Remove empty implementations of enable_ms() 2014-07-09 17:29:38 -07:00
timbuart.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
timbuart.h
uartlite.c tty: serial: uartlite: Remove .owner field for driver 2014-09-08 16:09:13 -07:00
ucc_uart.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
vr41xx_siu.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
vt8500_serial.c tty: serial: drop owner assignment from platform_drivers 2014-10-20 16:21:45 +02:00
xilinx_uartps.c tty: xuartps: Add support for setting modem control signals 2014-11-06 14:57:27 -08:00
zs.c serial: Fix IGNBRK handling 2014-06-19 13:04:52 -07:00
zs.h