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

Linux patch 5.16.7

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

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

diff --git a/0000_README b/0000_README
index 0310fc8f..2af50adb 100644
--- a/0000_README
+++ b/0000_README
@@ -67,6 +67,10 @@ Patch:  1005_linux-5.16.6.patch
 From:   http://www.kernel.org
 Desc:   Linux 5.16.6
 
+Patch:  1006_linux-5.16.7.patch
+From:   http://www.kernel.org
+Desc:   Linux 5.16.7
+
 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/1006_linux-5.16.7.patch b/1006_linux-5.16.7.patch
new file mode 100644
index 00000000..2b9c7f5f
--- /dev/null
+++ b/1006_linux-5.16.7.patch
@@ -0,0 +1,57 @@
+diff --git a/Makefile b/Makefile
+index 2d7b7fe5cbad6..b642e5650c0b1 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 5
+ PATCHLEVEL = 16
+-SUBLEVEL = 6
++SUBLEVEL = 7
+ EXTRAVERSION =
+ NAME = Gobble Gobble
+ 
+diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
+index e6aad838065b9..c000946996edb 100644
+--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
+@@ -1736,21 +1736,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);
+@@ -1778,10 +1772,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