From 63a08824ed770d471e955717a63e2624200d5f18 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 5 Feb 2022 19:09:02 +0100 Subject: [PATCH] 5.10-stable patches added patches: revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec-again.patch revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec.patch --- ...the-device-is-powered-with-cec-again.patch | 49 ++++++++++++ ...-sure-the-device-is-powered-with-cec.patch | 74 +++++++++++++++++++ queue-5.10/series | 2 + 3 files changed, 125 insertions(+) create mode 100644 queue-5.10/revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec-again.patch create mode 100644 queue-5.10/revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec.patch create mode 100644 queue-5.10/series diff --git a/queue-5.10/revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec-again.patch b/queue-5.10/revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec-again.patch new file mode 100644 index 00000000000..ac7ee184f07 --- /dev/null +++ b/queue-5.10/revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec-again.patch @@ -0,0 +1,49 @@ +From b01b0c0b6d266dabd0ae5d223777aa2483c2f385 Mon Sep 17 00:00:00 2001 +From: Greg Kroah-Hartman +Date: Sat, 5 Feb 2022 19:01:29 +0100 +Subject: [PATCH 2/2] Revert "drm/vc4: hdmi: Make sure the device is powered with CEC" again + +This reverts commit 55b10b88ac8654fc2f31518aa349a2e643b37f18 which is +commit 20b0dfa86bef0e80b41b0e5ac38b92f23b6f27f9 upstream. + +It wasn't applied correctly, something went wrong with an attempt to fix +it up again, so just revert the whole thing to be back at a clean state. + +Reported-by: Guenter Roeck +Link: https://lore.kernel.org/r/20220205171238.GA3073350@roeck-us.net +Reported-by: Alexey Khoroshilov +Link: https://lore.kernel.org/r/Yf5lNIJnvhP4ajam@kroah.com +Cc: Dave Stevenson +Cc: Maxime Ripard +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/vc4/vc4_hdmi.c | 10 +--------- + 1 file changed, 1 insertion(+), 9 deletions(-) + +--- a/drivers/gpu/drm/vc4/vc4_hdmi.c ++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c +@@ -1399,14 +1399,8 @@ static int vc4_hdmi_cec_adap_enable(stru + struct vc4_hdmi *vc4_hdmi = cec_get_drvdata(adap); + /* clock period in microseconds */ + const u32 usecs = 1000000 / CEC_CLOCK_FREQ; +- u32 val; +- int ret; +- +- 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); +@@ -1531,8 +1525,6 @@ static int vc4_hdmi_cec_init(struct vc4_ + if (ret < 0) + goto err_delete_cec_adap; + +- pm_runtime_put(&vc4_hdmi->pdev->dev); +- + return 0; + + err_delete_cec_adap: diff --git a/queue-5.10/revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec.patch b/queue-5.10/revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec.patch new file mode 100644 index 00000000000..7a66a1d2931 --- /dev/null +++ b/queue-5.10/revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec.patch @@ -0,0 +1,74 @@ +From cd0c1efaf55de281d89947d453b3c212e5bfd8a6 Mon Sep 17 00:00:00 2001 +From: Greg Kroah-Hartman +Date: Sat, 5 Feb 2022 19:01:20 +0100 +Subject: [PATCH 1/2] Revert "drm/vc4: hdmi: Make sure the device is powered with CEC" + +This reverts commit ac4ba79bb02881ed714adaa89faee601a18bff6d which is +commit 20b0dfa86bef0e80b41b0e5ac38b92f23b6f27f9 upstream. + +It wasn't applied correctly, something went wrong with an attempt to fix +it up again, so just revert the whole thing to be back at a clean state. + +Reported-by: Guenter Roeck +Link: https://lore.kernel.org/r/20220205171238.GA3073350@roeck-us.net +Reported-by: Alexey Khoroshilov +Link: https://lore.kernel.org/r/Yf5lNIJnvhP4ajam@kroah.com +Cc: Dave Stevenson +Cc: Maxime Ripard +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/vc4/vc4_hdmi.c | 27 +++++++++++++-------------- + 1 file changed, 13 insertions(+), 14 deletions(-) + +--- a/drivers/gpu/drm/vc4/vc4_hdmi.c ++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c +@@ -1402,18 +1402,18 @@ static int vc4_hdmi_cec_adap_enable(stru + u32 val; + int ret; + +- if (enable) { +- ret = pm_runtime_resume_and_get(&vc4_hdmi->pdev->dev); +- if (ret) +- return ret; +- +- 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); ++ ret = pm_runtime_resume_and_get(&vc4_hdmi->pdev->dev); ++ if (ret) ++ return ret; ++ ++ 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); + ++ 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); +@@ -1439,10 +1439,7 @@ static int vc4_hdmi_cec_adap_enable(stru + 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; + } + +@@ -1534,6 +1531,8 @@ static int vc4_hdmi_cec_init(struct vc4_ + if (ret < 0) + goto err_delete_cec_adap; + ++ pm_runtime_put(&vc4_hdmi->pdev->dev); ++ + return 0; + + err_delete_cec_adap: diff --git a/queue-5.10/series b/queue-5.10/series new file mode 100644 index 00000000000..cf41096729a --- /dev/null +++ b/queue-5.10/series @@ -0,0 +1,2 @@ +revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec.patch +revert-drm-vc4-hdmi-make-sure-the-device-is-powered-with-cec-again.patch -- 2.47.3