commit:     8930cf42bf0af83ed4dffb6409553c32227df435
Author:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
AuthorDate: Sat Feb  5 19:02:56 2022 +0000
Commit:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Sat Feb  5 19:02:56 2022 +0000
URL:        https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=8930cf42

Linux patch 5.15.21

Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>

 0000_README              |  4 ++++
 1020_linux-5.15.21.patch | 57 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 61 insertions(+)

diff --git a/0000_README b/0000_README
index a24b369c..60575044 100644
--- a/0000_README
+++ b/0000_README
@@ -123,6 +123,10 @@ Patch:  1019_linux-5.15.20.patch
 From:   http://www.kernel.org
 Desc:   Linux 5.15.20
 
+Patch:  1020_linux-5.15.21.patch
+From:   http://www.kernel.org
+Desc:   Linux 5.15.21
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1020_linux-5.15.21.patch b/1020_linux-5.15.21.patch
new file mode 100644
index 00000000..6a938737
--- /dev/null
+++ b/1020_linux-5.15.21.patch
@@ -0,0 +1,57 @@
+diff --git a/Makefile b/Makefile
+index 3643400c15d8c..b4770cdda9b6d 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 5
+ PATCHLEVEL = 15
+-SUBLEVEL = 20
++SUBLEVEL = 21
+ EXTRAVERSION =
+ NAME = Trick or Treat
+ 
+diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
+index 2d532c0fe8191..e880bdd8dcfd2 100644
+--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
+@@ -1735,21 +1735,15 @@ static int vc4_hdmi_cec_adap_enable(struct cec_adapter 
*adap, bool enable)
+       struct vc4_hdmi *vc4_hdmi = cec_get_drvdata(adap);
+       /* clock period in microseconds */
+       const u32 usecs = 1000000 / CEC_CLOCK_FREQ;
+-      u32 val;
+-      int ret;
+-
+-      if (enable) {
+-              ret = pm_runtime_resume_and_get(&vc4_hdmi->pdev->dev);
+-              if (ret)
+-                      return ret;
++      u32 val = HDMI_READ(HDMI_CEC_CNTRL_5);
+ 
+-              val = HDMI_READ(HDMI_CEC_CNTRL_5);
+-              val &= ~(VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET |
+-                       VC4_HDMI_CEC_CNT_TO_4700_US_MASK |
+-                       VC4_HDMI_CEC_CNT_TO_4500_US_MASK);
+-              val |= ((4700 / usecs) << VC4_HDMI_CEC_CNT_TO_4700_US_SHIFT) |
+-                      ((4500 / usecs) << VC4_HDMI_CEC_CNT_TO_4500_US_SHIFT);
++      val &= ~(VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET |
++               VC4_HDMI_CEC_CNT_TO_4700_US_MASK |
++               VC4_HDMI_CEC_CNT_TO_4500_US_MASK);
++      val |= ((4700 / usecs) << VC4_HDMI_CEC_CNT_TO_4700_US_SHIFT) |
++             ((4500 / usecs) << VC4_HDMI_CEC_CNT_TO_4500_US_SHIFT);
+ 
++      if (enable) {
+               HDMI_WRITE(HDMI_CEC_CNTRL_5, val |
+                          VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET);
+               HDMI_WRITE(HDMI_CEC_CNTRL_5, val);
+@@ -1777,10 +1771,7 @@ static int vc4_hdmi_cec_adap_enable(struct cec_adapter 
*adap, bool enable)
+                       HDMI_WRITE(HDMI_CEC_CPU_MASK_SET, VC4_HDMI_CPU_CEC);
+               HDMI_WRITE(HDMI_CEC_CNTRL_5, val |
+                          VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET);
+-
+-              pm_runtime_put(&vc4_hdmi->pdev->dev);
+       }
+-
+       return 0;
+ }
+ 

Reply via email to