platform-x86-pmc_atom-fix-slp_typx-bitfield-mask.patch
iio-adc-mcp3911-make-use-of-the-sign-bit.patch
usb-dwc3-qcom-add-helper-functions-to-enable-disable.patch
-usb-dwc3-qcom-fix-runtime-pm-wakeup.patch
usb-dwc3-qcom-fix-use-after-free-on-runtime-pm-wakeu.patch
usb-dwc3-qcom-fix-peripheral-and-otg-suspend.patch
bpf-cgroup-fix-kernel-bug-in-purge_effective_progs.patch
+++ /dev/null
-From 86eb3d39a11ea5c5ccd24a89f7e2a88050fb2588 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 4 Aug 2022 17:09:57 +0200
-Subject: usb: dwc3: qcom: fix runtime PM wakeup
-
-From: Johan Hovold <johan+linaro@kernel.org>
-
-[ Upstream commit 6498a96c8c9ce8ae4078e586a607851491e29a33 ]
-
-A device must enable wakeups during runtime suspend regardless of
-whether it is capable and allowed to wake the system up from system
-suspend.
-
-Fixes: 2664deb09306 ("usb: dwc3: qcom: Honor wakeup enabled/disabled state")
-Tested-by: Matthias Kaehlcke <mka@chromium.org>
-Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
-Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
-Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
-Link: https://lore.kernel.org/r/20220804151001.23612-6-johan+linaro@kernel.org
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/usb/dwc3/dwc3-qcom.c | 19 +++++++++++--------
- 1 file changed, 11 insertions(+), 8 deletions(-)
-
-diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
-index 53722a54207a6..d8b47b91ed6f7 100644
---- a/drivers/usb/dwc3/dwc3-qcom.c
-+++ b/drivers/usb/dwc3/dwc3-qcom.c
-@@ -386,7 +386,7 @@ static void dwc3_qcom_enable_interrupts(struct dwc3_qcom *qcom)
- dwc3_qcom_enable_wakeup_irq(qcom->ss_phy_irq, 0);
- }
-
--static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
-+static int dwc3_qcom_suspend(struct dwc3_qcom *qcom, bool wakeup)
- {
- u32 val;
- int i, ret;
-@@ -405,7 +405,7 @@ static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
- if (ret)
- dev_warn(qcom->dev, "failed to disable interconnect: %d\n", ret);
-
-- if (device_may_wakeup(qcom->dev)) {
-+ if (wakeup) {
- qcom->usb2_speed = dwc3_qcom_read_usb2_speed(qcom);
- dwc3_qcom_enable_interrupts(qcom);
- }
-@@ -415,7 +415,7 @@ static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
- return 0;
- }
-
--static int dwc3_qcom_resume(struct dwc3_qcom *qcom)
-+static int dwc3_qcom_resume(struct dwc3_qcom *qcom, bool wakeup)
- {
- int ret;
- int i;
-@@ -423,7 +423,7 @@ static int dwc3_qcom_resume(struct dwc3_qcom *qcom)
- if (!qcom->is_suspended)
- return 0;
-
-- if (device_may_wakeup(qcom->dev))
-+ if (wakeup)
- dwc3_qcom_disable_interrupts(qcom);
-
- for (i = 0; i < qcom->num_clocks; i++) {
-@@ -919,9 +919,11 @@ static int dwc3_qcom_remove(struct platform_device *pdev)
- static int __maybe_unused dwc3_qcom_pm_suspend(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-+ bool wakeup = device_may_wakeup(dev);
- int ret = 0;
-
-- ret = dwc3_qcom_suspend(qcom);
-+
-+ ret = dwc3_qcom_suspend(qcom, wakeup);
- if (!ret)
- qcom->pm_suspended = true;
-
-@@ -931,9 +933,10 @@ static int __maybe_unused dwc3_qcom_pm_suspend(struct device *dev)
- static int __maybe_unused dwc3_qcom_pm_resume(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-+ bool wakeup = device_may_wakeup(dev);
- int ret;
-
-- ret = dwc3_qcom_resume(qcom);
-+ ret = dwc3_qcom_resume(qcom, wakeup);
- if (!ret)
- qcom->pm_suspended = false;
-
-@@ -944,14 +947,14 @@ static int __maybe_unused dwc3_qcom_runtime_suspend(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-
-- return dwc3_qcom_suspend(qcom);
-+ return dwc3_qcom_suspend(qcom, true);
- }
-
- static int __maybe_unused dwc3_qcom_runtime_resume(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-
-- return dwc3_qcom_resume(qcom);
-+ return dwc3_qcom_resume(qcom, true);
- }
-
- static const struct dev_pm_ops dwc3_qcom_dev_pm_ops = {
---
-2.35.1
-
skmsg-fix-wrong-last-sg-check-in-sk_msg_recvmsg.patch
bpf-restrict-bpf_sys_bpf-to-cap_perfmon.patch
usb-dwc3-qcom-add-helper-functions-to-enable-disable.patch
-usb-dwc3-qcom-fix-runtime-pm-wakeup.patch
usb-dwc3-qcom-fix-use-after-free-on-runtime-pm-wakeu.patch
usb-dwc3-qcom-fix-peripheral-and-otg-suspend.patch
bpf-cgroup-fix-kernel-bug-in-purge_effective_progs.patch
+++ /dev/null
-From 6e7e7d9bf670c5626effbddd2bfbab5eed451e01 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 4 Aug 2022 17:09:57 +0200
-Subject: usb: dwc3: qcom: fix runtime PM wakeup
-
-From: Johan Hovold <johan+linaro@kernel.org>
-
-[ Upstream commit 6498a96c8c9ce8ae4078e586a607851491e29a33 ]
-
-A device must enable wakeups during runtime suspend regardless of
-whether it is capable and allowed to wake the system up from system
-suspend.
-
-Fixes: 2664deb09306 ("usb: dwc3: qcom: Honor wakeup enabled/disabled state")
-Tested-by: Matthias Kaehlcke <mka@chromium.org>
-Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
-Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
-Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
-Link: https://lore.kernel.org/r/20220804151001.23612-6-johan+linaro@kernel.org
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/usb/dwc3/dwc3-qcom.c | 19 +++++++++++--------
- 1 file changed, 11 insertions(+), 8 deletions(-)
-
-diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
-index a48b0a6a3f6a4..1a742642211f1 100644
---- a/drivers/usb/dwc3/dwc3-qcom.c
-+++ b/drivers/usb/dwc3/dwc3-qcom.c
-@@ -386,7 +386,7 @@ static void dwc3_qcom_enable_interrupts(struct dwc3_qcom *qcom)
- dwc3_qcom_enable_wakeup_irq(qcom->ss_phy_irq, 0);
- }
-
--static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
-+static int dwc3_qcom_suspend(struct dwc3_qcom *qcom, bool wakeup)
- {
- u32 val;
- int i, ret;
-@@ -405,7 +405,7 @@ static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
- if (ret)
- dev_warn(qcom->dev, "failed to disable interconnect: %d\n", ret);
-
-- if (device_may_wakeup(qcom->dev)) {
-+ if (wakeup) {
- qcom->usb2_speed = dwc3_qcom_read_usb2_speed(qcom);
- dwc3_qcom_enable_interrupts(qcom);
- }
-@@ -415,7 +415,7 @@ static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
- return 0;
- }
-
--static int dwc3_qcom_resume(struct dwc3_qcom *qcom)
-+static int dwc3_qcom_resume(struct dwc3_qcom *qcom, bool wakeup)
- {
- int ret;
- int i;
-@@ -423,7 +423,7 @@ static int dwc3_qcom_resume(struct dwc3_qcom *qcom)
- if (!qcom->is_suspended)
- return 0;
-
-- if (device_may_wakeup(qcom->dev))
-+ if (wakeup)
- dwc3_qcom_disable_interrupts(qcom);
-
- for (i = 0; i < qcom->num_clocks; i++) {
-@@ -924,9 +924,11 @@ static int dwc3_qcom_remove(struct platform_device *pdev)
- static int __maybe_unused dwc3_qcom_pm_suspend(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-+ bool wakeup = device_may_wakeup(dev);
- int ret = 0;
-
-- ret = dwc3_qcom_suspend(qcom);
-+
-+ ret = dwc3_qcom_suspend(qcom, wakeup);
- if (!ret)
- qcom->pm_suspended = true;
-
-@@ -936,9 +938,10 @@ static int __maybe_unused dwc3_qcom_pm_suspend(struct device *dev)
- static int __maybe_unused dwc3_qcom_pm_resume(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-+ bool wakeup = device_may_wakeup(dev);
- int ret;
-
-- ret = dwc3_qcom_resume(qcom);
-+ ret = dwc3_qcom_resume(qcom, wakeup);
- if (!ret)
- qcom->pm_suspended = false;
-
-@@ -949,14 +952,14 @@ static int __maybe_unused dwc3_qcom_runtime_suspend(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-
-- return dwc3_qcom_suspend(qcom);
-+ return dwc3_qcom_suspend(qcom, true);
- }
-
- static int __maybe_unused dwc3_qcom_runtime_resume(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-
-- return dwc3_qcom_resume(qcom);
-+ return dwc3_qcom_resume(qcom, true);
- }
-
- static const struct dev_pm_ops dwc3_qcom_dev_pm_ops = {
---
-2.35.1
-
skmsg-fix-wrong-last-sg-check-in-sk_msg_recvmsg.patch
bpf-restrict-bpf_sys_bpf-to-cap_perfmon.patch
usb-dwc3-qcom-add-helper-functions-to-enable-disable.patch
-usb-dwc3-qcom-fix-runtime-pm-wakeup.patch
usb-dwc3-qcom-fix-use-after-free-on-runtime-pm-wakeu.patch
usb-dwc3-qcom-fix-peripheral-and-otg-suspend.patch
ip_tunnel-respect-tunnel-key-s-flow_flags-in-ip-tunn.patch
+++ /dev/null
-From 456ac35d57d38f91c559bcac202e6676455ca38a Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 4 Aug 2022 17:09:57 +0200
-Subject: usb: dwc3: qcom: fix runtime PM wakeup
-
-From: Johan Hovold <johan+linaro@kernel.org>
-
-[ Upstream commit 6498a96c8c9ce8ae4078e586a607851491e29a33 ]
-
-A device must enable wakeups during runtime suspend regardless of
-whether it is capable and allowed to wake the system up from system
-suspend.
-
-Fixes: 2664deb09306 ("usb: dwc3: qcom: Honor wakeup enabled/disabled state")
-Tested-by: Matthias Kaehlcke <mka@chromium.org>
-Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
-Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
-Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
-Link: https://lore.kernel.org/r/20220804151001.23612-6-johan+linaro@kernel.org
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/usb/dwc3/dwc3-qcom.c | 19 +++++++++++--------
- 1 file changed, 11 insertions(+), 8 deletions(-)
-
-diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
-index be2e3dd364408..19642d0df419c 100644
---- a/drivers/usb/dwc3/dwc3-qcom.c
-+++ b/drivers/usb/dwc3/dwc3-qcom.c
-@@ -386,7 +386,7 @@ static void dwc3_qcom_enable_interrupts(struct dwc3_qcom *qcom)
- dwc3_qcom_enable_wakeup_irq(qcom->ss_phy_irq, 0);
- }
-
--static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
-+static int dwc3_qcom_suspend(struct dwc3_qcom *qcom, bool wakeup)
- {
- u32 val;
- int i, ret;
-@@ -405,7 +405,7 @@ static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
- if (ret)
- dev_warn(qcom->dev, "failed to disable interconnect: %d\n", ret);
-
-- if (device_may_wakeup(qcom->dev)) {
-+ if (wakeup) {
- qcom->usb2_speed = dwc3_qcom_read_usb2_speed(qcom);
- dwc3_qcom_enable_interrupts(qcom);
- }
-@@ -415,7 +415,7 @@ static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
- return 0;
- }
-
--static int dwc3_qcom_resume(struct dwc3_qcom *qcom)
-+static int dwc3_qcom_resume(struct dwc3_qcom *qcom, bool wakeup)
- {
- int ret;
- int i;
-@@ -423,7 +423,7 @@ static int dwc3_qcom_resume(struct dwc3_qcom *qcom)
- if (!qcom->is_suspended)
- return 0;
-
-- if (device_may_wakeup(qcom->dev))
-+ if (wakeup)
- dwc3_qcom_disable_interrupts(qcom);
-
- for (i = 0; i < qcom->num_clocks; i++) {
-@@ -930,9 +930,11 @@ static int dwc3_qcom_remove(struct platform_device *pdev)
- static int __maybe_unused dwc3_qcom_pm_suspend(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-+ bool wakeup = device_may_wakeup(dev);
- int ret = 0;
-
-- ret = dwc3_qcom_suspend(qcom);
-+
-+ ret = dwc3_qcom_suspend(qcom, wakeup);
- if (!ret)
- qcom->pm_suspended = true;
-
-@@ -942,9 +944,10 @@ static int __maybe_unused dwc3_qcom_pm_suspend(struct device *dev)
- static int __maybe_unused dwc3_qcom_pm_resume(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-+ bool wakeup = device_may_wakeup(dev);
- int ret;
-
-- ret = dwc3_qcom_resume(qcom);
-+ ret = dwc3_qcom_resume(qcom, wakeup);
- if (!ret)
- qcom->pm_suspended = false;
-
-@@ -955,14 +958,14 @@ static int __maybe_unused dwc3_qcom_runtime_suspend(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-
-- return dwc3_qcom_suspend(qcom);
-+ return dwc3_qcom_suspend(qcom, true);
- }
-
- static int __maybe_unused dwc3_qcom_runtime_resume(struct device *dev)
- {
- struct dwc3_qcom *qcom = dev_get_drvdata(dev);
-
-- return dwc3_qcom_resume(qcom);
-+ return dwc3_qcom_resume(qcom, true);
- }
-
- static const struct dev_pm_ops dwc3_qcom_dev_pm_ops = {
---
-2.35.1
-