From: Greg Kroah-Hartman Date: Wed, 12 May 2021 12:33:38 +0000 (+0200) Subject: drop queue-4.9/serial-stm32-fix-tx_empty-condition.patch X-Git-Tag: v5.4.119~13 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=60f41c3358ff98eb51494c62ad0cf0e262e8214f;p=thirdparty%2Fkernel%2Fstable-queue.git drop queue-4.9/serial-stm32-fix-tx_empty-condition.patch --- diff --git a/queue-4.9/serial-stm32-fix-tx_empty-condition.patch b/queue-4.9/serial-stm32-fix-tx_empty-condition.patch deleted file mode 100644 index 7ffd6c792d9..00000000000 --- a/queue-4.9/serial-stm32-fix-tx_empty-condition.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 2d843653785d83e84dd658e7ca9643ae0a42aaa5 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Thu, 4 Mar 2021 17:23:07 +0100 -Subject: serial: stm32: fix tx_empty condition - -From: Erwan Le Ray - -[ Upstream commit 3db1d52466dc11dca4e47ef12a6e6e97f846af62 ] - -In "tx_empty", we should poll TC bit in both DMA and PIO modes (instead of -TXE) to check transmission data register has been transmitted independently -of the FIFO mode. TC indicates that both transmit register and shift -register are empty. When shift register is empty, tx_empty should return -TIOCSER_TEMT instead of TC value. - -Cleans the USART_CR_TC TCCF register define (transmission complete clear -flag) as it is duplicate of USART_ICR_TCCF. - -Fixes: 48a6092fb41f ("serial: stm32-usart: Add STM32 USART Driver") -Signed-off-by: Erwan Le Ray -Link: https://lore.kernel.org/r/20210304162308.8984-13-erwan.leray@foss.st.com -Signed-off-by: Greg Kroah-Hartman -Signed-off-by: Sasha Levin ---- - drivers/tty/serial/stm32-usart.c | 5 ++++- - drivers/tty/serial/stm32-usart.h | 3 --- - 2 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/drivers/tty/serial/stm32-usart.c b/drivers/tty/serial/stm32-usart.c -index f325019887b2..25a92bf4067d 100644 ---- a/drivers/tty/serial/stm32-usart.c -+++ b/drivers/tty/serial/stm32-usart.c -@@ -355,7 +355,10 @@ static unsigned int stm32_tx_empty(struct uart_port *port) - struct stm32_port *stm32_port = to_stm32_port(port); - struct stm32_usart_offsets *ofs = &stm32_port->info->ofs; - -- return readl_relaxed(port->membase + ofs->isr) & USART_SR_TXE; -+ if (readl_relaxed(port->membase + ofs->isr) & USART_SR_TC) -+ return TIOCSER_TEMT; -+ -+ return 0; - } - - static void stm32_set_mctrl(struct uart_port *port, unsigned int mctrl) -diff --git a/drivers/tty/serial/stm32-usart.h b/drivers/tty/serial/stm32-usart.h -index cd97ceb76e4f..377d510d77bc 100644 ---- a/drivers/tty/serial/stm32-usart.h -+++ b/drivers/tty/serial/stm32-usart.h -@@ -99,9 +99,6 @@ struct stm32_usart_info stm32f7_info = { - /* Dummy bits */ - #define USART_SR_DUMMY_RX BIT(16) - --/* USART_ICR (F7) */ --#define USART_CR_TC BIT(6) -- - /* USART_DR */ - #define USART_DR_MASK GENMASK(8, 0) - --- -2.30.2 - diff --git a/queue-4.9/series b/queue-4.9/series index 88f6ced0637..eab825e32c4 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -94,7 +94,6 @@ memory-gpmc-fix-out-of-bounds-read-and-dereference-o.patch arm-dts-exynos-correct-pmic-interrupt-trigger-level-.patch arm-dts-exynos-correct-pmic-interrupt-trigger-level-.patch-28317 serial-stm32-fix-incorrect-characters-on-console.patch -serial-stm32-fix-tx_empty-condition.patch usb-gadget-pch_udc-replace-cpu_to_le32-by-lower_32_b.patch usb-gadget-pch_udc-check-if-driver-is-present-before.patch usb-gadget-pch_udc-check-for-dma-mapping-error.patch