]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Revert "drm/vc4: hdmi: Make sure the device is powered with CEC" again
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 5 Feb 2022 18:01:29 +0000 (19:01 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 5 Feb 2022 18:22:06 +0000 (19:22 +0100)
This reverts commit 9b0d360fd783c711fc1cafa51f3e03bdf8ca5518 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 <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20220205171238.GA3073350@roeck-us.net
Reported-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Link: https://lore.kernel.org/r/Yf5lNIJnvhP4ajam@kroah.com
Cc: Dave Stevenson <dave.stevenson@raspberrypi.com>
Cc: Maxime Ripard <maxime@cerno.tech>
Cc: Michael Stapelberg <michael+drm@stapelberg.ch>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/vc4/vc4_hdmi.c

index 8465914892fad7142bceebe25ed734f6cc34da42..c000946996edb1bc0a41f8b0f2cc1f1906c75acb 100644 (file)
@@ -1736,14 +1736,8 @@ 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;
-
-       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);
@@ -1889,8 +1883,6 @@ static int vc4_hdmi_cec_init(struct vc4_hdmi *vc4_hdmi)
        if (ret < 0)
                goto err_remove_handlers;
 
-       pm_runtime_put(&vc4_hdmi->pdev->dev);
-
        return 0;
 
 err_remove_handlers: