linux/drivers/tty/serial
Youngmin Nam aba06e9222 serial: samsung: optimize UART rx fifo access routine
This patch optimizes UART rx fifo access routine by reading UART SFR
when necessary. At first, the "fifocnt" variable will be initialized
as Rx FIFO count. So we don't need to access UFSTAT(FIFO status) register
every time to check FIFO count because we know that count with "fifocnt".
After all data were read out from Rx FIFO, the "fifocnt" will be set as 0.
Lastly, UFSTAT will be accessed again to check whether the data remains
by any chance.

Signed-off-by: Youngmin Nam <ym0914@gmail.com>
Reviewed-by: Jung-Ick Guack <ji.guack@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-03-07 16:11:14 -08:00
..
8250 tty: serial: 8250: add MOXA Smartio MUE boards support 2016-03-07 16:11:14 -08:00
cpm_uart tty: serial: cpm_uart: Fix module autoload for OF platform driver 2015-10-04 19:09:21 +01:00
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 serial: altera_uart: Use of_property_read_u32 instead of open-coding it 2015-10-04 17:47:49 +01:00
amba-pl010.c
amba-pl011.c serial: pl011: add mark/space parity support 2016-03-07 16:11:14 -08:00
amba-pl011.h tty: amba-pl011: clean up LCR register offsets 2015-12-13 19:59:48 -08:00
apbuart.c tty: serial: apbuart: Fix module autoload for OF platform driver 2015-10-04 19:09:21 +01:00
apbuart.h
ar933x_uart.c
arc_uart.c earlycon: Use common framework for earlycon declarations 2016-02-06 22:07:37 -08:00
atmel_serial.c tty/serial: at91: fix bad offset for UART timeout register 2016-03-07 16:11:14 -08:00
bcm63xx_uart.c serial/bcm63xx_uart: Deinline wait_for_xmitr, save 374 bytes 2015-12-13 19:59:48 -08: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: Fix bad usage of IS_ERR_VALUE 2016-02-14 17:39:36 -08:00
crisv10.c tty: Remove ASYNC_CLOSING 2016-01-28 14:19:12 -08: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 serial: fsl_lpuart: add earlycon support 2015-10-17 21:18:30 -07:00
icom.c tty: Remove unused SERIAL_DO_RESTART define 2015-12-13 19:59:48 -08:00
icom.h
ifx6x60.c serial: ifx6x60: avoid uninitialized variable use 2016-03-07 16:11:14 -08:00
ifx6x60.h
imx.c serial: imx: Fix suspend / resume. 2016-02-06 22:53:43 -08:00
ioc3_serial.c
ioc4_serial.c
ip22zilog.c
ip22zilog.h
Kconfig serial: mvebu-uart: initial support for Armada-3700 serial port 2016-03-07 16:11:14 -08:00
kgdb_nmi.c
kgdboc.c
lantiq.c
lpc32xx_hs.c tty: serial: lpc32xx_hs: fix handling platform_get_irq result 2015-10-04 19:09:21 +01:00
m32r_sio_reg.h
m32r_sio.c TTY: serial/m32r_sio, remove unused members 2016-02-06 22:16:58 -08:00
Makefile serial: mvebu-uart: initial support for Armada-3700 serial port 2016-03-07 16:11:14 -08:00
max310x.c gpio: change member .dev to .parent 2015-11-19 09:24:35 +01: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: Add support for XTAL clock input 2016-02-14 17:39:36 -08:00
mpc52xx_uart.c tty: serial: constify psc_ops structs 2016-02-06 22:31:47 -08:00
mpsc.c TTY: serial/mpsc, remove unused fields 2016-02-06 22:16:21 -08:00
msm_serial.c earlycon: Use common framework for earlycon declarations 2016-02-06 22:07:37 -08:00
msm_serial.h tty: serial: msm: Add RX DMA support 2015-10-04 19:15:17 +01: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: initial support for Armada-3700 serial port 2016-03-07 16:11:14 -08:00
mxs-auart.c serial: mctrl-gpio: rename init function 2015-10-04 18:46:43 +01: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
pmac_zilog.c
pmac_zilog.h
pnx8xxx_uart.c
pxa.c serial/pxa: Deinline wait_for_xmitr, save 165 bytes 2015-12-13 19:59:48 -08:00
rp2.c
sa1100.c
samsung.c serial: samsung: optimize UART rx fifo access routine 2016-03-07 16:11:14 -08:00
samsung.h
sb1250-duart.c
sc16is7xx.c Revert "sc16is7xx: implemented get_mctrl" 2016-03-07 16:10:08 -08:00
sccnxp.c
serial_core.c serial: core: remove baud_rates when serial console setup 2016-02-06 22:54:55 -08: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: Add missing module license 2016-03-07 16:11:14 -08:00
serial_mctrl_gpio.h serial: fix mctrl helper functions 2015-10-17 21:21:07 -07:00
serial_txx9.c
serial-tegra.c serial: tegra: Add helper function for handling RX buffer 2015-10-17 21:07:57 -07:00
sh-sci.c serial: sh-sci: Remove redundant instances of EARLYCON_DECLARE() 2016-03-07 16:11:14 -08:00
sh-sci.h serial: sh-sci: Add more Serial Mode Register documentation 2016-02-06 22:54:55 -08:00
sirfsoc_uart.c
sirfsoc_uart.h
sn_console.c
sprd_serial.c earlycon: Use common framework for earlycon declarations 2016-02-06 22:07:37 -08:00
st-asc.c tty/serial: st-asc: drop the use of IRQF_NO_SUSPEND 2015-10-04 19:11:05 +01:00
stm32-usart.c tty/serial: st-asc: drop the use of IRQF_NO_SUSPEND 2015-10-04 19:11:05 +01:00
suncore.c
sunhv.c tty/serial: Skip 'NULL' char after console break when sysrq enabled 2015-12-24 12:13:37 -05: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: Configure for rising edge irq trigger. 2016-03-07 16:11:14 -08:00
ucc_uart.c QE: Move QE from arch/powerpc to drivers/soc 2015-12-22 17:12:56 -06:00
vr41xx_siu.c
vt8500_serial.c serial/vt8500_serial: Deinline wait_for_xmitr, save 165 bytes 2015-12-13 19:59:48 -08:00
xilinx_uartps.c serial: xuartps: Enable OF earlycon support 2016-03-07 16:11:14 -08:00
zs.c serial: zs: Fix a transmit lockup in console output 2016-02-06 23:13:30 -08:00
zs.h