]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/rockchip: dw_hdmi_qp: Optimize RK3588 HPD interrupt handling
authorCristian Ciocaltea <cristian.ciocaltea@collabora.com>
Thu, 15 Jan 2026 16:24:44 +0000 (18:24 +0200)
committerHeiko Stuebner <heiko@sntech.de>
Tue, 20 Jan 2026 10:09:35 +0000 (11:09 +0100)
The threaded interrupt handler on RK3588 checks HPD IRQ status before
deciding to continue with interrupt clearing and unmasking.  However,
this is not really necessary, since the hard interrupt handler already
performs the very same verification before waking the handler thread.

Get rid of the redundant verification of the HPD interrupt status in the
threaded interrupt handler.

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patch.msgid.link/20260115-dw-hdmi-qp-hpd-v1-2-e59c166eaa65@collabora.com
drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c

index 831d221bfd0d0038faa33e8a1122e8197f08a253..a8190a6e8978d884c870b79682b950999f804928 100644 (file)
@@ -315,11 +315,7 @@ static irqreturn_t dw_hdmi_qp_rk3588_hardirq(int irq, void *dev_id)
 static irqreturn_t dw_hdmi_qp_rk3588_irq(int irq, void *dev_id)
 {
        struct rockchip_hdmi_qp *hdmi = dev_id;
-       u32 intr_stat, val;
-
-       regmap_read(hdmi->regmap, RK3588_GRF_SOC_STATUS1, &intr_stat);
-       if (!intr_stat)
-               return IRQ_NONE;
+       u32 val;
 
        if (hdmi->port_id)
                val = FIELD_PREP_WM16(RK3588_HDMI1_HPD_INT_CLR, 1);