From 71b2b32f98d5f359818458334fc4109c16a926ee Mon Sep 17 00:00:00 2001 From: John Audia Date: Sun, 1 Nov 2020 11:37:10 -0500 Subject: kernel: bump 5.4 to 5.4.74 Removed upstreamed patches: mvebu/patches-5.4 409-phy-marvell-comphy-Convert-internal-SMCC-firmware-re.patch All modifications made by update_kernel.sh Build system: x86_64 Build-tested: ipq806x/R7800, ath79/generic, bcm27xx/bcm2711, x86_64 Run-tested: ipq806x/R7800, x86_64, lantiq/Easybox 904 xDSL No dmesg regressions, everything functional Signed-off-by: John Audia Tested-by: Curtis Deptuck [x86_64 build/run] [added lantiq test report] Signed-off-by: Adrian Schmutzler --- ..._pl011-Don-t-use-DT-aliases-for-numbering.patch | 2 +- .../950-0032-amba_pl011-Round-input-clock-up.patch | 10 +- ...pl011-Insert-mb-for-correct-FIFO-handling.patch | 2 +- ...l011-Add-cts-event-workaround-DT-property.patch | 2 +- ...ba-pl011-Make-TX-optimisation-conditional.patch | 10 +- ...97-tty-amba-pl011-Add-un-throttle-support.patch | 4 +- ...ba-pl011-Avoid-rare-write-when-full-error.patch | 2 +- .../generic/hack-5.4/901-debloat_sock_diag.patch | 2 +- .../linux/generic/hack-5.4/902-debloat_proc.patch | 2 +- ...-comphy-Convert-internal-SMCC-firmware-re.patch | 106 --------------------- 10 files changed, 18 insertions(+), 124 deletions(-) delete mode 100644 target/linux/mvebu/patches-5.4/409-phy-marvell-comphy-Convert-internal-SMCC-firmware-re.patch (limited to 'target') diff --git a/target/linux/bcm27xx/patches-5.4/950-0031-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch b/target/linux/bcm27xx/patches-5.4/950-0031-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch index e89250df04..79212447fa 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0031-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0031-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch @@ -14,7 +14,7 @@ use the same logic. --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -2575,7 +2575,12 @@ static int pl011_setup_port(struct devic +@@ -2578,7 +2578,12 @@ static int pl011_setup_port(struct devic if (IS_ERR(base)) return PTR_ERR(base); diff --git a/target/linux/bcm27xx/patches-5.4/950-0032-amba_pl011-Round-input-clock-up.patch b/target/linux/bcm27xx/patches-5.4/950-0032-amba_pl011-Round-input-clock-up.patch index fec36493b3..912ff563c7 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0032-amba_pl011-Round-input-clock-up.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0032-amba_pl011-Round-input-clock-up.patch @@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1650,6 +1650,23 @@ static void pl011_put_poll_char(struct u +@@ -1653,6 +1653,23 @@ static void pl011_put_poll_char(struct u #endif /* CONFIG_CONSOLE_POLL */ @@ -50,7 +50,7 @@ Signed-off-by: Phil Elwell static int pl011_hwinit(struct uart_port *port) { struct uart_amba_port *uap = -@@ -1666,7 +1683,7 @@ static int pl011_hwinit(struct uart_port +@@ -1669,7 +1686,7 @@ static int pl011_hwinit(struct uart_port if (retval) return retval; @@ -59,7 +59,7 @@ Signed-off-by: Phil Elwell /* Clear pending error and receive interrupts */ pl011_write(UART011_OEIS | UART011_BEIS | UART011_PEIS | -@@ -2321,7 +2338,7 @@ static int pl011_console_setup(struct co +@@ -2324,7 +2341,7 @@ static int pl011_console_setup(struct co plat->init(); } @@ -68,7 +68,7 @@ Signed-off-by: Phil Elwell if (uap->vendor->fixed_options) { baud = uap->fixed_baud; -@@ -2506,6 +2523,7 @@ static struct uart_driver amba_reg = { +@@ -2509,6 +2526,7 @@ static struct uart_driver amba_reg = { .cons = AMBA_CONSOLE, }; @@ -76,7 +76,7 @@ Signed-off-by: Phil Elwell static int pl011_probe_dt_alias(int index, struct device *dev) { struct device_node *np; -@@ -2537,6 +2555,7 @@ static int pl011_probe_dt_alias(int inde +@@ -2540,6 +2558,7 @@ static int pl011_probe_dt_alias(int inde return ret; } diff --git a/target/linux/bcm27xx/patches-5.4/950-0033-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch b/target/linux/bcm27xx/patches-5.4/950-0033-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch index f545ab1db0..b07096b5e1 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0033-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0033-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1383,6 +1383,7 @@ static bool pl011_tx_char(struct uart_am +@@ -1386,6 +1386,7 @@ static bool pl011_tx_char(struct uart_am return false; /* unable to transmit character */ pl011_write(c, uap, REG_DR); diff --git a/target/linux/bcm27xx/patches-5.4/950-0034-amba_pl011-Add-cts-event-workaround-DT-property.patch b/target/linux/bcm27xx/patches-5.4/950-0034-amba_pl011-Add-cts-event-workaround-DT-property.patch index 4c4cbb13c5..df8e9aba78 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0034-amba_pl011-Add-cts-event-workaround-DT-property.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0034-amba_pl011-Add-cts-event-workaround-DT-property.patch @@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell - reg --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -2662,6 +2662,11 @@ static int pl011_probe(struct amba_devic +@@ -2665,6 +2665,11 @@ static int pl011_probe(struct amba_devic if (IS_ERR(uap->clk)) return PTR_ERR(uap->clk); diff --git a/target/linux/bcm27xx/patches-5.4/950-0266-tty-amba-pl011-Make-TX-optimisation-conditional.patch b/target/linux/bcm27xx/patches-5.4/950-0266-tty-amba-pl011-Make-TX-optimisation-conditional.patch index 9214bda206..58829c9e92 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0266-tty-amba-pl011-Make-TX-optimisation-conditional.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0266-tty-amba-pl011-Make-TX-optimisation-conditional.patch @@ -42,7 +42,7 @@ Signed-off-by: Phil Elwell #ifdef CONFIG_DMA_ENGINE /* DMA stuff */ bool using_tx_dma; -@@ -813,6 +814,7 @@ __acquires(&uap->port.lock) +@@ -816,6 +817,7 @@ __acquires(&uap->port.lock) if (!uap->using_tx_dma) return; @@ -50,7 +50,7 @@ Signed-off-by: Phil Elwell dmaengine_terminate_async(uap->dmatx.chan); if (uap->dmatx.queued) { -@@ -939,6 +941,7 @@ static void pl011_dma_rx_chars(struct ua +@@ -942,6 +944,7 @@ static void pl011_dma_rx_chars(struct ua fifotaken = pl011_fifo_to_tty(uap); } @@ -58,7 +58,7 @@ Signed-off-by: Phil Elwell spin_unlock(&uap->port.lock); dev_vdbg(uap->port.dev, "Took %d chars from DMA buffer and %d chars from the FIFO\n", -@@ -1347,6 +1350,7 @@ __acquires(&uap->port.lock) +@@ -1350,6 +1353,7 @@ __acquires(&uap->port.lock) { pl011_fifo_to_tty(uap); @@ -66,7 +66,7 @@ Signed-off-by: Phil Elwell spin_unlock(&uap->port.lock); tty_flip_buffer_push(&uap->port.state->port); /* -@@ -1482,6 +1486,7 @@ static irqreturn_t pl011_int(int irq, vo +@@ -1485,6 +1489,7 @@ static irqreturn_t pl011_int(int irq, vo int handled = 0; spin_lock_irqsave(&uap->port.lock, flags); @@ -74,7 +74,7 @@ Signed-off-by: Phil Elwell status = pl011_read(uap, REG_RIS) & uap->im; if (status) { do { -@@ -1501,7 +1506,7 @@ static irqreturn_t pl011_int(int irq, vo +@@ -1504,7 +1509,7 @@ static irqreturn_t pl011_int(int irq, vo UART011_CTSMIS|UART011_RIMIS)) pl011_modem_status(uap); if (status & UART011_TXIS) diff --git a/target/linux/bcm27xx/patches-5.4/950-0397-tty-amba-pl011-Add-un-throttle-support.patch b/target/linux/bcm27xx/patches-5.4/950-0397-tty-amba-pl011-Add-un-throttle-support.patch index 7777e2df96..ced0bf2b79 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0397-tty-amba-pl011-Add-un-throttle-support.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0397-tty-amba-pl011-Add-un-throttle-support.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1323,6 +1323,32 @@ static void pl011_start_tx(struct uart_p +@@ -1326,6 +1326,32 @@ static void pl011_start_tx(struct uart_p pl011_start_tx_pio(uap); } @@ -50,7 +50,7 @@ Signed-off-by: Phil Elwell static void pl011_stop_rx(struct uart_port *port) { struct uart_amba_port *uap = -@@ -2164,6 +2190,8 @@ static const struct uart_ops amba_pl011_ +@@ -2167,6 +2193,8 @@ static const struct uart_ops amba_pl011_ .stop_tx = pl011_stop_tx, .start_tx = pl011_start_tx, .stop_rx = pl011_stop_rx, diff --git a/target/linux/bcm27xx/patches-5.4/950-0407-tty-amba-pl011-Avoid-rare-write-when-full-error.patch b/target/linux/bcm27xx/patches-5.4/950-0407-tty-amba-pl011-Avoid-rare-write-when-full-error.patch index b2b27f258f..6283b83e17 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0407-tty-amba-pl011-Avoid-rare-write-when-full-error.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0407-tty-amba-pl011-Avoid-rare-write-when-full-error.patch @@ -29,7 +29,7 @@ Signed-off-by: Phil Elwell --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1444,6 +1444,10 @@ static bool pl011_tx_chars(struct uart_a +@@ -1447,6 +1447,10 @@ static bool pl011_tx_chars(struct uart_a if (likely(from_irq) && count-- == 0) break; diff --git a/target/linux/generic/hack-5.4/901-debloat_sock_diag.patch b/target/linux/generic/hack-5.4/901-debloat_sock_diag.patch index e97c26a858..7c9046c6e3 100644 --- a/target/linux/generic/hack-5.4/901-debloat_sock_diag.patch +++ b/target/linux/generic/hack-5.4/901-debloat_sock_diag.patch @@ -69,7 +69,7 @@ Signed-off-by: Felix Fietkau struct dst_entry *__sk_dst_check(struct sock *sk, u32 cookie) { struct dst_entry *dst = __sk_dst_get(sk); -@@ -1743,9 +1756,11 @@ static void __sk_free(struct sock *sk) +@@ -1742,9 +1755,11 @@ static void __sk_free(struct sock *sk) if (likely(sk->sk_net_refcnt)) sock_inuse_add(sock_net(sk), -1); diff --git a/target/linux/generic/hack-5.4/902-debloat_proc.patch b/target/linux/generic/hack-5.4/902-debloat_proc.patch index 7c9d01f2bf..d9febbada8 100644 --- a/target/linux/generic/hack-5.4/902-debloat_proc.patch +++ b/target/linux/generic/hack-5.4/902-debloat_proc.patch @@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -3630,6 +3630,8 @@ static __net_initdata struct pernet_oper +@@ -3629,6 +3629,8 @@ static __net_initdata struct pernet_oper static int __init proto_init(void) { diff --git a/target/linux/mvebu/patches-5.4/409-phy-marvell-comphy-Convert-internal-SMCC-firmware-re.patch b/target/linux/mvebu/patches-5.4/409-phy-marvell-comphy-Convert-internal-SMCC-firmware-re.patch deleted file mode 100644 index d496d672e5..0000000000 --- a/target/linux/mvebu/patches-5.4/409-phy-marvell-comphy-Convert-internal-SMCC-firmware-re.patch +++ /dev/null @@ -1,106 +0,0 @@ -From ea17a0f153af2cd890e4ce517130dcccaa428c13 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Pali=20Roh=C3=A1r?= -Date: Wed, 2 Sep 2020 16:43:43 +0200 -Subject: [PATCH] phy: marvell: comphy: Convert internal SMCC firmware return - codes to errno -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Driver ->power_on and ->power_off callbacks leaks internal SMCC firmware -return codes to phy caller. This patch converts SMCC error codes to -standard linux errno codes. Include file linux/arm-smccc.h already provides -defines for SMCC error codes, so use them instead of custom driver defines. -Note that return value is signed 32bit, but stored in unsigned long type -with zero padding. - -Tested-by: Tomasz Maciej Nowak -Link: https://lore.kernel.org/r/20200902144344.16684-2-pali@kernel.org -Signed-off-by: Pali Rohár -Signed-off-by: Lorenzo Pieralisi -Reviewed-by: Rob Herring ---- - drivers/phy/marvell/phy-mvebu-a3700-comphy.c | 14 +++++++++++--- - drivers/phy/marvell/phy-mvebu-cp110-comphy.c | 14 +++++++++++--- - 2 files changed, 22 insertions(+), 6 deletions(-) - ---- a/drivers/phy/marvell/phy-mvebu-a3700-comphy.c -+++ b/drivers/phy/marvell/phy-mvebu-a3700-comphy.c -@@ -26,7 +26,6 @@ - #define COMPHY_SIP_POWER_ON 0x82000001 - #define COMPHY_SIP_POWER_OFF 0x82000002 - #define COMPHY_SIP_PLL_LOCK 0x82000003 --#define COMPHY_FW_NOT_SUPPORTED (-1) - - #define COMPHY_FW_MODE_SATA 0x1 - #define COMPHY_FW_MODE_SGMII 0x2 -@@ -112,10 +111,19 @@ static int mvebu_a3700_comphy_smc(unsign - unsigned long mode) - { - struct arm_smccc_res res; -+ s32 ret; - - arm_smccc_smc(function, lane, mode, 0, 0, 0, 0, 0, &res); -+ ret = res.a0; - -- return res.a0; -+ switch (ret) { -+ case SMCCC_RET_SUCCESS: -+ return 0; -+ case SMCCC_RET_NOT_SUPPORTED: -+ return -EOPNOTSUPP; -+ default: -+ return -EINVAL; -+ } - } - - static int mvebu_a3700_comphy_get_fw_mode(int lane, int port, -@@ -220,7 +228,7 @@ static int mvebu_a3700_comphy_power_on(s - } - - ret = mvebu_a3700_comphy_smc(COMPHY_SIP_POWER_ON, lane->id, fw_param); -- if (ret == COMPHY_FW_NOT_SUPPORTED) -+ if (ret == -EOPNOTSUPP) - dev_err(lane->dev, - "unsupported SMC call, try updating your firmware\n"); - ---- a/drivers/phy/marvell/phy-mvebu-cp110-comphy.c -+++ b/drivers/phy/marvell/phy-mvebu-cp110-comphy.c -@@ -123,7 +123,6 @@ - - #define COMPHY_SIP_POWER_ON 0x82000001 - #define COMPHY_SIP_POWER_OFF 0x82000002 --#define COMPHY_FW_NOT_SUPPORTED (-1) - - /* - * A lane is described by the following bitfields: -@@ -273,10 +272,19 @@ static int mvebu_comphy_smc(unsigned lon - unsigned long lane, unsigned long mode) - { - struct arm_smccc_res res; -+ s32 ret; - - arm_smccc_smc(function, phys, lane, mode, 0, 0, 0, 0, &res); -+ ret = res.a0; - -- return res.a0; -+ switch (ret) { -+ case SMCCC_RET_SUCCESS: -+ return 0; -+ case SMCCC_RET_NOT_SUPPORTED: -+ return -EOPNOTSUPP; -+ default: -+ return -EINVAL; -+ } - } - - static int mvebu_comphy_get_mode(bool fw_mode, int lane, int port, -@@ -819,7 +827,7 @@ static int mvebu_comphy_power_on(struct - if (!ret) - return ret; - -- if (ret == COMPHY_FW_NOT_SUPPORTED) -+ if (ret == -EOPNOTSUPP) - dev_err(priv->dev, - "unsupported SMC call, try updating your firmware\n"); - -- cgit v1.2.3