linux-next/drivers/tty/serial
Wolfram Sang 0c9c1ea583 serial: sh-sci: let timeout timer only run when DMA is scheduled
The hrtimer for RXDMA timeout was unconditionally restarted in the RXDMA
complete handler ignoring the fact that setting up DMA may fail and PIO
is used instead. Explicitly stop the timer when DMA is completed and
only restart it when setting up DMA was successful. This makes the
intention of the timer much clearer, the driver easier to understand and
simplifies assumptions about the timer. The latter avoids race
conditions if these assumptions were not met or confused.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Link: https://lore.kernel.org/r/20240506114016.30498-9-wsa+renesas@sang-engineering.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-10 11:48:33 +01:00
..
8250 serial: 8250_pnp: Switch to DEFINE_SIMPLE_DEV_PM_OPS() 2024-05-04 18:09:49 +02:00
jsm tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
21285.c serial: 21285: Use port lock wrappers 2023-09-18 11:18:08 +02:00
altera_jtaguart.c serial: altera_jtaguart: Convert to platform remove callback returning void 2023-11-23 19:12:30 +00:00
altera_uart.c tty/serial: altera_uart: use more informative labels in /proc/interrupts 2024-01-04 16:20:51 +01:00
amba-pl010.c serial: amba-pl010: Use port lock wrappers 2023-09-18 11:18:09 +02:00
amba-pl011.c serial: amba-pl011: move variable into CONFIG_DMA_ENGINE conditional 2024-04-09 17:07:10 +02:00
apbuart.c serial: apbuart: fix console prompt on qemu 2024-01-04 16:21:06 +01:00
apbuart.h
ar933x_uart.c serial: ar933x: Remove unneeded static structure 2024-04-09 17:07:10 +02:00
arc_uart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
atmel_serial.c tty: atmel_serial: use single DMA mapping for RX 2024-04-09 15:28:04 +02:00
atmel_serial.h tty: serial: atmel: Use FIELD_PREP/FIELD_GET 2022-09-22 16:32:25 +02:00
bcm63xx_uart.c serial: bcm63xx: Use uart_prepare_sysrq_char(). 2024-03-02 22:06:20 +01:00
clps711x.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
cpm_uart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
cpm_uart.h serial: cpm_uart: Remove cpm_uart/ subdirectory 2023-08-04 15:08:30 +02:00
digicolor-usart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
dz.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
dz.h
earlycon-riscv-sbi.c tty/serial: Add RISC-V SBI debug console based earlycon 2024-01-10 07:04:04 -08:00
earlycon-semihost.c serial: Rename earlycon semihost driver 2023-01-19 14:58:19 +01:00
earlycon.c earlycon: Let users set the clock frequency 2023-01-19 14:56:44 +01:00
esp32_acm.c serial: esp32_acm: Add explicit platform_device.h include 2023-12-15 14:20:00 +01:00
esp32_uart.c serial: esp32_uart: Use device_get_match_data() 2023-12-15 14:20:00 +01:00
fsl_linflexuart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
fsl_lpuart.c tty: serial: fsl_lpuart: use dev_err_probe for clocks 2024-04-17 13:14:04 +02:00
icom.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
imx_earlycon.c serial: make uart_console_write->putchar()'s character an unsigned char 2022-03-03 15:06:31 +01:00
imx.c serial: imx: Introduce timeout when waiting on transmitter empty 2024-04-17 13:13:57 +02:00
ip22zilog.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
ip22zilog.h
Kconfig serial: sc16is7xx: split into core and I2C/SPI parts (core) 2024-04-11 14:08:08 +02:00
kgdb_nmi.c tty: make tty_operations::write()'s count size_t 2023-08-11 21:12:46 +02:00
kgdboc.c tty: serial: kgdboc: fix mutex locking order for configure_kgdboc() 2023-01-16 16:44:53 +01:00
lantiq.c serial: lantiq: Convert to platform remove callback returning void 2023-11-23 19:12:32 +00:00
liteuart.c serial: liteuart: Convert to platform remove callback returning void 2023-11-23 19:12:32 +00:00
lpc32xx_hs.c serial: lpc32xx_hs: Use uart_prepare_sysrq_char() to handle sysrq. 2024-03-02 22:06:21 +01:00
ma35d1_serial.c serial: ma35d1: Fix spelling mistake "ononsole" -> "console" 2023-12-15 14:23:30 +01:00
Makefile serial: sc16is7xx: split into core and I2C/SPI parts (core) 2024-04-11 14:08:08 +02:00
max310x.c tty: serial: max310x: convert to use maple tree register cache 2024-04-09 16:50:36 +02:00
max3100.c serial: max3100: Convert to_max3100_port() to be static inline 2024-04-11 14:08:40 +02:00
mcf.c drivers/tty/serial: Remove unused function early_mcf_setup 2024-03-02 21:52:35 +01:00
men_z135_uart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
meson_uart.c serial: meson+qcom: don't advance the kfifo twice 2024-04-16 09:05:43 +02:00
milbeaut_usio.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
mpc52xx_uart.c serial: mpc52xx: Convert to platform remove callback returning void 2023-11-23 19:12:32 +00:00
mps2-uart.c serial: mps2-uart: Use port lock wrappers 2023-09-18 11:18:12 +02:00
msm_serial.c serial: msm: check dma_map_sg() return value properly 2024-04-20 07:58:42 +02:00
mux.c tty: serial: use uart_port_tx_limited() 2022-11-03 03:32:40 +01:00
mvebu-uart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
mxs-auart.c Merge 6.9-rc5 into tty-next 2024-04-23 13:24:45 +02:00
omap-serial.c serial: omap: remove redundant assignment to variable tmout 2024-04-11 14:08:36 +02:00
owl-uart.c serial: owl: Use uart_prepare_sysrq_char() to handle sysrq. 2024-03-02 22:06:21 +01:00
pch_uart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
pic32_uart.c serial: pic32_uart: Replace of_gpio.h by proper one 2024-04-09 15:48:43 +02:00
pmac_zilog.c Merge 6.9-rc5 into tty-next 2024-04-23 13:24:45 +02:00
pmac_zilog.h serial: pmac_zilog: remove unused uart_pmac_port::termios_cache 2022-05-19 18:23:19 +02:00
pxa.c serial: pxa: Use uart_prepare_sysrq_char(). 2024-03-02 22:06:21 +01:00
qcom_geni_serial.c serial: meson+qcom: don't advance the kfifo twice 2024-04-16 09:05:43 +02:00
rda-uart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
rp2.c tty: rp2: remove unused rp2_uart_port::ignore_rx 2023-11-23 19:16:03 +00:00
sa1100.c serial: sa1100: Convert to platform remove callback returning void 2023-11-23 19:12:33 +00:00
samsung_tty.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
sb1250-duart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
sc16is7xx_i2c.c serial: sc16is7xx: split into core and I2C/SPI parts (sc16is7xx_regcfg) 2024-04-11 14:08:08 +02:00
sc16is7xx_spi.c serial: sc16is7xx: split into core and I2C/SPI parts (sc16is7xx_regcfg) 2024-04-11 14:08:08 +02:00
sc16is7xx.c serial: sc16is7xx: split into core and I2C/SPI parts (sc16is7xx_regcfg) 2024-04-11 14:08:08 +02:00
sc16is7xx.h serial: sc16is7xx: split into core and I2C/SPI parts (sc16is7xx_regcfg) 2024-04-11 14:08:08 +02:00
sccnxp.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
serial_base_bus.c serial: core: Fix ifdef for serial base console functions 2024-04-13 12:44:03 +02:00
serial_base.h Merge 6.9-rc5 into tty-next 2024-04-23 13:24:45 +02:00
serial_core.c serial: core: Call device_set_awake_path() for console port 2024-05-04 18:11:58 +02:00
serial_ctrl.c serial: core: Start managing serial controllers to enable runtime PM 2023-05-31 10:46:59 +01:00
serial_mctrl_gpio.c serial: mctrl_gpio: Use port lock wrappers 2023-09-18 11:18:14 +02:00
serial_mctrl_gpio.h serial: mctrl_gpio: add a new API to enable / disable wake_irq 2022-02-08 11:07:16 +01:00
serial_port.c Merge 6.9-rc5 into tty-next 2024-04-23 13:24:45 +02:00
serial_txx9.c serial: txx9: Add missing #include <asm/txx9/generic.h> 2024-01-27 19:05:39 -08:00
serial-tegra.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
sh-sci.c serial: sh-sci: let timeout timer only run when DMA is scheduled 2024-05-10 11:48:33 +01:00
sh-sci.h tty: serial: sh-sci: Add support for tx end interrupt handling 2023-04-20 13:47:33 +02:00
sifive.c serial: sifive: Remove 0 from fu540-c000-uart0 binding. 2024-04-09 15:48:46 +02:00
sprd_serial.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
st-asc.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
stm32-usart.c Merge 6.9-rc5 into tty-next 2024-04-23 13:24:45 +02:00
stm32-usart.h serial: stm32: get FIFO size from hwcfg register 2024-01-27 19:04:11 -08:00
suncore.c
sunhv.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
sunplus-uart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
sunsab.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
sunsab.h
sunsu.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
sunzilog.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
sunzilog.h
tegra-tcu.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
timbuart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
timbuart.h tty: serial: Use the correct style for SPDX License Identifier 2020-03-07 09:52:01 +01:00
uartlite.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
ucc_uart.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
vt8500_serial.c serial: vt8500: Use port lock wrappers 2023-09-18 11:18:16 +02:00
xilinx_uartps.c tty: serial: uartps: Add support for uartps controller reset 2024-05-04 18:11:05 +02:00
zs.c tty: serial: switch from circ_buf to kfifo 2024-04-09 15:28:03 +02:00
zs.h