From: Greg Kroah-Hartman Date: Thu, 5 Aug 2021 19:01:56 +0000 (+0200) Subject: 5.13-stable patches X-Git-Tag: v4.4.279~24 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=73c244264629e7ba9e317aaab9754613c968e656;p=thirdparty%2Fkernel%2Fstable-queue.git 5.13-stable patches added patches: revert-bluetooth-shutdown-controller-after-workqueues-are-flushed-or-cancelled.patch revert-spi-mediatek-fix-fifo-rx-mode.patch --- diff --git a/queue-5.13/revert-bluetooth-shutdown-controller-after-workqueues-are-flushed-or-cancelled.patch b/queue-5.13/revert-bluetooth-shutdown-controller-after-workqueues-are-flushed-or-cancelled.patch new file mode 100644 index 00000000000..091ddf7cc23 --- /dev/null +++ b/queue-5.13/revert-bluetooth-shutdown-controller-after-workqueues-are-flushed-or-cancelled.patch @@ -0,0 +1,55 @@ +From 78eb5695f0139bf453dd43885238994aeb9c09b1 Mon Sep 17 00:00:00 2001 +From: Greg Kroah-Hartman +Date: Thu, 5 Aug 2021 20:58:57 +0200 +Subject: Revert "Bluetooth: Shutdown controller after workqueues are flushed or cancelled" + +From: Greg Kroah-Hartman + +This reverts commit c19a2820df32b94d1d4fb65e96ae36f97dddda56 which is +commit 0ea9fd001a14ebc294f112b0361a4e601551d508 upstream. + +It has been reported to have problems: + https://lore.kernel.org/linux-bluetooth/8735ryk0o7.fsf@baylibre.com/ + +Reported-by: Guenter Roeck +Cc: Kai-Heng Feng +Cc: Marcel Holtmann +Cc: Sasha Levin +Link: https://lore.kernel.org/r/efee3a58-a4d2-af22-0931-e81b877ab539@roeck-us.net +Signed-off-by: Greg Kroah-Hartman +--- + net/bluetooth/hci_core.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +--- a/net/bluetooth/hci_core.c ++++ b/net/bluetooth/hci_core.c +@@ -1721,6 +1721,14 @@ int hci_dev_do_close(struct hci_dev *hde + + BT_DBG("%s %p", hdev->name, hdev); + ++ if (!hci_dev_test_flag(hdev, HCI_UNREGISTER) && ++ !hci_dev_test_flag(hdev, HCI_USER_CHANNEL) && ++ test_bit(HCI_UP, &hdev->flags)) { ++ /* Execute vendor specific shutdown routine */ ++ if (hdev->shutdown) ++ hdev->shutdown(hdev); ++ } ++ + cancel_delayed_work(&hdev->power_off); + + hci_request_cancel_all(hdev); +@@ -1797,14 +1805,6 @@ int hci_dev_do_close(struct hci_dev *hde + clear_bit(HCI_INIT, &hdev->flags); + } + +- if (!hci_dev_test_flag(hdev, HCI_UNREGISTER) && +- !hci_dev_test_flag(hdev, HCI_USER_CHANNEL) && +- test_bit(HCI_UP, &hdev->flags)) { +- /* Execute vendor specific shutdown routine */ +- if (hdev->shutdown) +- hdev->shutdown(hdev); +- } +- + /* flush cmd work */ + flush_work(&hdev->cmd_work); + diff --git a/queue-5.13/revert-spi-mediatek-fix-fifo-rx-mode.patch b/queue-5.13/revert-spi-mediatek-fix-fifo-rx-mode.patch new file mode 100644 index 00000000000..ee6bccb1b64 --- /dev/null +++ b/queue-5.13/revert-spi-mediatek-fix-fifo-rx-mode.patch @@ -0,0 +1,52 @@ +From 568f12594bc88a1b8f9e697c9bf6a3a5b6b6d134 Mon Sep 17 00:00:00 2001 +From: Greg Kroah-Hartman +Date: Thu, 5 Aug 2021 20:53:50 +0200 +Subject: Revert "spi: mediatek: fix fifo rx mode" + +From: Greg Kroah-Hartman + +This reverts commit 09b8cc7810587257e5f82080884001301e1a1ba9 which is +commit 3a70dd2d050331ee4cf5ad9d5c0a32d83ead9a43 upstream. + +It has been found to have problems. + +Reported-by: Guenter Roeck +Cc: Peter Hess +Cc: Frank Wunderlich +Cc: Mark Brown +Cc: Sasha Levin +Link: https://lore.kernel.org/r/efee3a58-a4d2-af22-0931-e81b877ab539@roeck-us.net +Signed-off-by: Greg Kroah-Hartman +--- + drivers/spi/spi-mt65xx.c | 16 +++------------- + 1 file changed, 3 insertions(+), 13 deletions(-) + +--- a/drivers/spi/spi-mt65xx.c ++++ b/drivers/spi/spi-mt65xx.c +@@ -427,23 +427,13 @@ static int mtk_spi_fifo_transfer(struct + mtk_spi_setup_packet(master); + + cnt = xfer->len / 4; +- if (xfer->tx_buf) +- iowrite32_rep(mdata->base + SPI_TX_DATA_REG, xfer->tx_buf, cnt); +- +- if (xfer->rx_buf) +- ioread32_rep(mdata->base + SPI_RX_DATA_REG, xfer->rx_buf, cnt); ++ iowrite32_rep(mdata->base + SPI_TX_DATA_REG, xfer->tx_buf, cnt); + + remainder = xfer->len % 4; + if (remainder > 0) { + reg_val = 0; +- if (xfer->tx_buf) { +- memcpy(®_val, xfer->tx_buf + (cnt * 4), remainder); +- writel(reg_val, mdata->base + SPI_TX_DATA_REG); +- } +- if (xfer->rx_buf) { +- reg_val = readl(mdata->base + SPI_RX_DATA_REG); +- memcpy(xfer->rx_buf + (cnt * 4), ®_val, remainder); +- } ++ memcpy(®_val, xfer->tx_buf + (cnt * 4), remainder); ++ writel(reg_val, mdata->base + SPI_TX_DATA_REG); + } + + mtk_spi_enable_transfer(master); diff --git a/queue-5.13/series b/queue-5.13/series index 57d463c8e26..a58bed914ba 100644 --- a/queue-5.13/series +++ b/queue-5.13/series @@ -29,3 +29,5 @@ drm-amd-display-fix-comparison-error-in-dcn21-dml.patch drm-amd-display-fix-max-vstartup-calculation-for-mod.patch io_uring-never-attempt-iopoll-reissue-from-release-p.patch io_uring-explicitly-catch-any-illegal-async-queue-at.patch +revert-spi-mediatek-fix-fifo-rx-mode.patch +revert-bluetooth-shutdown-controller-after-workqueues-are-flushed-or-cancelled.patch