From: Greg Kroah-Hartman Date: Wed, 10 Mar 2021 18:26:57 +0000 (+0100) Subject: drop queue-5.10/net-ipa-ignore-channel_not_running-errors.patch X-Git-Tag: v4.4.261~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a97b66921291afce2b77dd13b12fcbe764fa2774;p=thirdparty%2Fkernel%2Fstable-queue.git drop queue-5.10/net-ipa-ignore-channel_not_running-errors.patch --- diff --git a/queue-5.10/net-ipa-ignore-channel_not_running-errors.patch b/queue-5.10/net-ipa-ignore-channel_not_running-errors.patch deleted file mode 100644 index d729cb23be4..00000000000 --- a/queue-5.10/net-ipa-ignore-channel_not_running-errors.patch +++ /dev/null @@ -1,71 +0,0 @@ -From d04198090e12b270ac52275cb907e82712efaf74 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Thu, 19 Nov 2020 16:49:26 -0600 -Subject: net: ipa: ignore CHANNEL_NOT_RUNNING errors - -From: Alex Elder - -[ Upstream commit f849afcc8c3b27d7b50827e95b60557f24184df0 ] - -IPA v4.2 has a hardware quirk that requires the AP to allocate GSI -channels for the modem to use. It is recommended that these modem -channels get stopped (with a HALT generic command) by the AP when -its IPA driver gets removed. - -The AP has no way of knowing the current state of a modem channel. -So when the IPA driver issues a HALT command it's possible the -channel is not running, and in that case we get an error indication. -This error simply means we didn't need to stop the channel, so we -can ignore it. - -This patch adds an explanation for this situation, and arranges for -this condition to *not* report an error message. - -Signed-off-by: Alex Elder -Signed-off-by: Jakub Kicinski -Signed-off-by: Sasha Levin ---- - drivers/net/ipa/gsi.c | 24 +++++++++++++++++++++++- - 1 file changed, 23 insertions(+), 1 deletion(-) - -diff --git a/drivers/net/ipa/gsi.c b/drivers/net/ipa/gsi.c -index 2a65efd3e8da..48ee43b89fec 100644 ---- a/drivers/net/ipa/gsi.c -+++ b/drivers/net/ipa/gsi.c -@@ -1052,10 +1052,32 @@ static void gsi_isr_gp_int1(struct gsi *gsi) - u32 result; - u32 val; - -+ /* This interrupt is used to handle completions of the two GENERIC -+ * GSI commands. We use these to allocate and halt channels on -+ * the modem's behalf due to a hardware quirk on IPA v4.2. Once -+ * allocated, the modem "owns" these channels, and as a result we -+ * have no way of knowing the channel's state at any given time. -+ * -+ * It is recommended that we halt the modem channels we allocated -+ * when shutting down, but it's possible the channel isn't running -+ * at the time we issue the HALT command. We'll get an error in -+ * that case, but it's harmless (the channel is already halted). -+ * -+ * For this reason, we silently ignore a CHANNEL_NOT_RUNNING error -+ * if we receive it. -+ */ - val = ioread32(gsi->virt + GSI_CNTXT_SCRATCH_0_OFFSET); - result = u32_get_bits(val, GENERIC_EE_RESULT_FMASK); -- if (result != GENERIC_EE_SUCCESS_FVAL) -+ -+ switch (result) { -+ case GENERIC_EE_SUCCESS_FVAL: -+ case GENERIC_EE_CHANNEL_NOT_RUNNING_FVAL: -+ break; -+ -+ default: - dev_err(gsi->dev, "global INT1 generic result %u\n", result); -+ break; -+ } - - complete(&gsi->completion); - } --- -2.30.1 - diff --git a/queue-5.10/series b/queue-5.10/series index 946ccbfaaad..c8d51bce087 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -10,7 +10,6 @@ bluetooth-btqca-add-valid-le-states-quirk.patch mwifiex-pcie-skip-cancel_work_sync-on-reset-failure-.patch asoc-intel-sof_sdw-add-quirk-for-new-tigerlake-sdca-.patch bus-ti-sysc-implement-gpmc-debug-quirk-to-drop-platf.patch -net-ipa-ignore-channel_not_running-errors.patch platform-x86-acer-wmi-cleanup-acer_cap_foo-defines.patch platform-x86-acer-wmi-cleanup-accelerometer-device-h.patch platform-x86-acer-wmi-add-new-force_caps-module-para.patch