android_kernel_samsung_univ.../drivers/tty/serial
Chen Hu b4d2c57717 serial: 8250_dw: always set baud rate in dw8250_set_termios
commit dfcab6ba573445c703235ab6c83758eec12d7f28 upstream.

dw8250_set_termios() doesn't set baud rate if the arg "old ktermios" is
NULL. This happens during resume.
Call Trace:
...
[   54.928108] dw8250_set_termios+0x162/0x170
[   54.928114] serial8250_set_termios+0x17/0x20
[   54.928117] uart_change_speed+0x64/0x160
[   54.928119] uart_resume_port
...

So the baud rate is not restored after S3 and breaks the apps who use
UART, for example, console and bluetooth etc.

We address this issue by setting the baud rate irrespective of arg
"old", just like the drivers for other 8250 IPs. This is tested with
Intel Broxton platform.

Signed-off-by: Chen Hu <hu1.chen@intel.com>
Fixes: 4e26b134bd ("serial: 8250_dw: clock rate handling for all ACPI platforms")
Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: stable <stable@vger.kernel.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-08-22 07:48:37 +02:00
..
8250 serial: 8250_dw: always set baud rate in dw8250_set_termios 2018-08-22 07:48:37 +02:00
cpm_uart
jsm
21285.c
68328serial.c
altera_jtaguart.c
altera_uart.c
amba-pl010.c
amba-pl011.c serial: amba-pl011: fix incorrect integer size in pl011_fifo_to_tty() 2015-10-17 21:29:21 -07:00
apbuart.c
apbuart.h
ar933x_uart.c
arc_uart.c serial: arc_uart: Fix out-of-bounds access through DT alias 2018-05-30 07:49:15 +02:00
atmel_serial.c tty/serial: atmel: add new version check for usart 2018-03-18 11:17:53 +01:00
bcm63xx_uart.c bcm63xx_uart: Use the device name when registering an interrupt 2015-11-20 16:19:54 -08:00
bfin_sport_uart.c
bfin_sport_uart.h
bfin_uart.c
clps711x.c
crisv10.c
crisv10.h
digicolor-usart.c
dz.c
dz.h
earlycon-arm-semihost.c
earlycon.c serial: earlycon: Add missing spinlock initialization 2015-12-12 23:05:28 -08:00
efm32-uart.c serial: efm32: Fix parity management in 'efm32_uart_console_get_options()' 2017-06-26 07:13:09 +02:00
etraxfs-uart.c serial: etraxfs-uart: Fix crash 2015-11-20 16:19:54 -08:00
fsl_lpuart.c serial: fsl_lpuart: Fix out-of-bounds access through DT alias 2018-05-30 07:49:15 +02:00
icom.c
icom.h
ifx6x60.c serial: ifx6x60: fix use-after-free on module unload 2017-06-14 13:16:20 +02:00
ifx6x60.h
imx.c serial: imx: Fix out-of-bounds access through serial port index 2018-05-30 07:49:15 +02:00
ioc3_serial.c
ioc4_serial.c
ip22zilog.c
ip22zilog.h
Kconfig serial: fsl_lpuart: Fix earlycon support 2015-11-20 16:19:54 -08:00
kgdb_nmi.c
kgdboc.c
lantiq.c
lpc32xx_hs.c
m32r_sio_reg.h
m32r_sio.c
m32r_sio.h
Makefile
max310x.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
max3100.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
mcf.c
men_z135_uart.c
meson_uart.c
mpc52xx_uart.c
mpsc.c tty: disable unbind for old 74xx based serial/mpsc console port 2015-10-17 21:18:30 -07:00
msm_serial.c tty: serial: msm: Fix module autoload 2017-02-26 11:07:50 +01:00
msm_serial.h
mux.c parisc: serial/mux: Convert to uart_console_device instead of open-coded 2015-10-22 15:44:28 +02:00
mxs-auart.c serial: mxs-auart: Fix out-of-bounds access through serial port index 2018-05-30 07:49:15 +02:00
netx-serial.c
nwpserial.c
of_serial.c
omap-serial.c serial: omap: Fix EFR write on RTS deassertion 2017-11-24 08:32:24 +01:00
pch_uart.c
pmac_zilog.c
pmac_zilog.h
pnx8xxx_uart.c
pxa.c
rp2.c
sa1100.c
samsung.c serial: samsung: fix maxburst parameter for DMA transactions 2018-06-16 09:54:26 +02:00
samsung.h
sb1250-duart.c
sc16is7xx.c sc16is7xx: Drop bogus use of IRQF_ONESHOT 2017-01-09 08:07:49 +01:00
sccnxp.c Fix serial console on SNI RM400 machines 2018-04-13 19:50:17 +02:00
serial_core.c
serial_ks8695.c
serial_mctrl_gpio.c serial: mctrl_gpio: Add missing module license 2018-05-02 07:53:43 -07:00
serial_mctrl_gpio.h serial: fix mctrl helper functions 2015-10-17 21:21:07 -07:00
serial_txx9.c
serial-tegra.c
sh-sci.c serial: sh-sci: Use spin_{try}lock_irqsave instead of open coding version 2018-07-03 11:21:26 +02:00
sh-sci.h
sirfsoc_uart.c
sirfsoc_uart.h
sn_console.c
sprd_serial.c
st-asc.c
stm32-usart.c
suncore.c
sunhv.c sparc64: Migrate hvcons irq to panicked cpu 2017-10-21 17:09:05 +02:00
sunsab.c
sunsab.h
sunsu.c
sunzilog.c
sunzilog.h
tilegx.c
timbuart.c
timbuart.h
uartlite.c
ucc_uart.c QE-UART: add "fsl,t1040-ucc-uart" to of_device_id 2016-06-07 18:14:35 -07:00
vr41xx_siu.c
vt8500_serial.c
xilinx_uartps.c serial: xuartps: Fix out-of-bounds access through DT alias 2018-05-30 07:49:14 +02:00
zs.c
zs.h