From nobody Sat Jul 25 05:17:28 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 75B723BB136 for ; Fri, 17 Jul 2026 11:26:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784287595; cv=none; b=Ujd6ESdU3TVbRZO/WsbrsGPkDOZrWgCVAmmrPE51j3gAgV0Hun6ubSNSfymQGSEeNbDBuHkwW4TXqNONH08rmsOouwOcCXEeUQF9lUF3M44y41STijmoHLQcJV4n9knaSXfxG9DS1Sw1pGzIt2fsGLeb+hY4hmVSfUQnhrc/A8A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784287595; c=relaxed/simple; bh=7DHD6sF6jdqNF7o3/oZNHxjqqzN4sJ5d0KCyGYiKKiU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=HxQf6Yxn6DEkxz4NWFhqjWERd7hksxu0wGAqXP1lNeeZsSQboOmVRYWyPvsdOx91pl4SUdbMjm26oa1i0kHON7/VWbbBCWnHs0AC1ckTYyayEFKo0pwFqvgPq4BM2g0YvOkDG7lnjXLLRlUVDOnPCiVqjJ26MjxaZyXovpakz4k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=XmYtCBdA; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=JnBLa9j8; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="XmYtCBdA"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="JnBLa9j8" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 66HASn9e1515824 for ; Fri, 17 Jul 2026 11:26:26 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=qcppdkim1; bh=1DCmfAQlPKoWgymsulNwEO u0w3/DzpAA9VDwyawz6Hw=; b=XmYtCBdArzM1aCC4aHxzPa4wBPD/cmrMBd1k0R TrqA2mrhiIjUioopjgbySq12HJMmWw1EWHXk4NS2zS2fpDVnJy0vcTBDAZFmIvbj G1jm9NY/ZCO1fOlpRtARje1C1kJMWziyI5yyahYlQ0SEaK/oYvwHx6xt+m302sL7 H08TBDZ/DaT9mDvGjgTs0lNiQyLopx+9TPntPTGJyH8d4vU2Q/J5usFaYrtcCPa8 Nmg1MFmtX/iQ7wmGEcY+RcaG0b4KL+r8ajmq1N9/m1cfMlwOfCpAH5SVszvXguEP TxvLK4GSu07WfX22FyGbrTpyVv/S7RqAyBFl1j22VkpxCXIg== Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4fff9gs2s9-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Fri, 17 Jul 2026 11:26:26 +0000 (GMT) Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-2ccb6823efcso70412335ad.0 for ; Fri, 17 Jul 2026 04:26:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1784287586; x=1784892386; darn=vger.kernel.org; h=cc:to:message-id:content-transfer-encoding:content-type :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to:content-type; bh=1DCmfAQlPKoWgymsulNwEOu0w3/DzpAA9VDwyawz6Hw=; b=JnBLa9j8XuI3izdtuIT0XN5iYyYdUSAJjHWKEd8BB4hIUk82B8MuAwv/oi6OPD59Kb lEhdFw0zyJ3zJogDGaj2ANMSbnHgLtHEtQlZ5KEtO4sh80isEwr7Of25gjjCDlDnK/xp AhGxlNrAvQEmDd969ONGAG5yFA4WMSkO6DqrxSHC2EgVERLObho26aPGqge+IEJXBYjs h1M9ZoSZsQznQRsxOZlkg4P5i9Kur74ex8DYWAoSUFVGlbKcgucT4Bac3EUL/bwCHO0L 1wcUVxVJkpzDEvk/YPmt4gsV3t6SlvzkuLGvz2JNr10GHRRj65irHSypXBuonOTKoORO 15qw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784287586; x=1784892386; h=cc:to:message-id:content-transfer-encoding:content-type :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to:content-type; bh=1DCmfAQlPKoWgymsulNwEOu0w3/DzpAA9VDwyawz6Hw=; b=oFbHehuDf0/2AqJ7lTkqgBafdwVsp4/kXIC2OOIzYwbkSnX8dzuralWWClq2NgdXyP aPdEtk3FgxMUnMByBDXzb5sXgzk7Oquf5KxioQA4hri9GUuAwfNRJKEu6ceFM2RaZiCY NQkv575aZqFdgx35MB1rqiILLWvhCh0NpnWxJ/XOV1edbzW3la3UarpzHB3gWcSD9YPF nm7VZIxyoWmW4ySw/KLMU9G6Dnnsb+EnzVT1rofYEY8n1LG4FXPnZ3fFeAFoObn2F3DL oHrbjwAlPZdI2xWAOguKI4hDekWf4aqiX2C/8qbLhKbyTSNpG3Q+O+pizZ7YvnlACQS9 xYKg== X-Forwarded-Encrypted: i=1; AHgh+RrB9Flv58nneS5n/dAsIm802fTfpqossPIpqeF9x4T55VWyN8aeF0IF2jhH5z5h7olni3eH8bciu51HIzs=@vger.kernel.org X-Gm-Message-State: AOJu0YwtHObyuwFAUWprCVUkOzJPbDL+QwQDmQWPRSAruBn2zdmch5+y UsF6zNUzrlwELvXxTsTIhf9y4c66ZG5+wTP8yeSuwijlY3licLwCG8gqlep/Du0tGR6y9y0HlAs EqV8eSwEAvFXM9LNmLOwP14azCqePTu+WS8rQg3unqX97EUG8V619g242MyftiAn8aY0= X-Gm-Gg: AfdE7cmFma9IShBe9+WuVv/TFi/AvakkyOwrv2mOsxGnNB/W37np2kb77t0gcLxNSOS cprVWdeZw7PbjIIklAiV8EtFaRZlmK4qEQB0zcvd+wlD7zMwQqhHOXiL9JsaB9I+Vx9BLVuR/Wz fShPs7JlhDjDwc/AgSDoV/YxeCkjIqRk5BbpF7iMkktceQIvFRkGhGJ0GIwScgDB4JzMoveKALm ICaQ9A93VLkcpxmgdELxBif52kEmwPCl1TwBAgxrNhhdemZPGYGvy6wM9uEUdQBVjh+uGbetV3g 8+twkZAlEx7imnxqZn5VU7tr06WGdpr+4xpUsHQXL2PPIqaNuq3NUwHF88u/ZkL8utpTnfKrgkI kUTavwZ/2RhS0GkWDLDfPEXjPPOo= X-Received: by 2002:a17:903:15cf:b0:2ca:c68:c554 with SMTP id d9443c01a7336-2cf34a22678mr21776115ad.38.1784287585569; Fri, 17 Jul 2026 04:26:25 -0700 (PDT) X-Received: by 2002:a17:903:15cf:b0:2ca:c68:c554 with SMTP id d9443c01a7336-2cf34a22678mr21775695ad.38.1784287585013; Fri, 17 Jul 2026 04:26:25 -0700 (PDT) Received: from hu-mahap-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2cf346d9b00sm9179345ad.53.2026.07.17.04.26.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Jul 2026 04:26:24 -0700 (PDT) From: Mahadevan P Date: Fri, 17 Jul 2026 16:56:13 +0530 Subject: [PATCH] drm/msm/dp: add .shutdown to mask HPD IRQ before system shutdown Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260717-dpshutdown-v1-1-b062c2f7dfb1@oss.qualcomm.com> X-B4-Tracking: v=1; b=H4sIAFQRWmoC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDIzMDc0Nz3ZSC4ozSkpT88jxdAxNzS0OjtOQ0M4MkJaCGgqLUtMwKsGHRsbW 1AJrgirBcAAAA X-Change-ID: 20260717-dpshutdown-047912fcf60b To: Rob Clark , Dmitry Baryshkov , Abhinav Kumar , Jessica Zhang , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org, Mahadevan P X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1784287580; l=2608; i=mahadevan.p@oss.qualcomm.com; s=20250923; h=from:subject:message-id; bh=7DHD6sF6jdqNF7o3/oZNHxjqqzN4sJ5d0KCyGYiKKiU=; b=GSf66u+dk25WN+0jwRQaVANoC5putuu0JyPC8zueJU5M6/QUUZyAi8edlsA3tPh0MzbsGUEla gaZ0fAJJFlWCGymLGyF8k8XxxD46LhZCnBu17n+R249nZgpN5x0hxlF X-Developer-Key: i=mahadevan.p@oss.qualcomm.com; a=ed25519; pk=wed9wuAek0VbCYfkANx7ujIG4VY0XfCYrffFKPN2p0Y= X-Proofpoint-Spam-Info: AW1haW4tMjYwNzE3MDExNSBTYWx0ZWRfX0to9dbvq6qTM Cf7bfh59a1N7pJgJQRl6/UzVH7c76GHYE9uEbZJg8IPxgv2L/0KpP1yVAjRTP2qbE02GpaZ6rA4 SypjRAmYECXhyGpmN3OIY6DxOJ8t044= X-Proofpoint-ORIG-GUID: jlsleovyslRKYCLDVgzhgJHic8tJcrlz X-Proofpoint-GUID: jlsleovyslRKYCLDVgzhgJHic8tJcrlz X-Authority-Analysis: v=2.4 cv=TaumcxQh c=1 sm=1 tr=0 ts=6a5a1162 cx=c_pps a=cmESyDAEBpBGqyK7t0alAg==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=ZpdpYltYx_vBUK5n70dp:22 a=EUspDBNiAAAA:8 a=0qqa2dpHJvpZ0q8GZ_YA:9 a=QEXdDO2ut3YA:10 a=1OuFwYUASf3TG4hYMiVC:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzE3MDExNSBTYWx0ZWRfX/gEi8emGuxqD xPkBlUbV9/9XzqR9pE/xZAaRkm4UmrPv7HYtKb/V58EmGMT71Zna2nEr6FCBggjcc+ds0KPqMum 6ikFstJDTWyTyRKEhizo8JGxwyHPUi5ZYIzGl3OW6PyyI+MuRFL2PpeQAEzzFOiwvQgmVXhIHZy w74WO2QqwoXGsGHRh5NLhbRc6YUcMCXZhud3Pq3HUx7bXM16Ow1sZgs0TIJXRsjmHij05mN42pV 70K8cVNNkel9rKBoFMo75veqrUla5xT7ezxBGtoSd9nXCmqqyqHH9l/ci9+RT4pKwIS4buoEz5I 7PrKRMy55LqfqiWlVMHbHCWPO6/WfZ9M70MJam/BA1SYifn8ObVaDAiACRIyc/5uQ8YemNg/G1d KAIzqpdwmMFReqNMkwTMlfqz+0tHv7ROyNtoucKecpEmM+u6mP6zK1Id3zZ9ynaHs4R6LjuuNer P5uGqtUjF7/2IAMnL4g== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-07-17_03,2026-07-15_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 impostorscore=0 clxscore=1011 adultscore=0 phishscore=0 spamscore=0 bulkscore=0 malwarescore=0 suspectscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607170115 On reboot, a late DP hot-plug-detect (HPD) IRQ can fire after apps_smmu has already disabled translation for the display subsystem, causing the HPD thread to kick off a new modeset that drives DPU/DP hardware and DMA through a stale IOMMU mapping. DPU's own .shutdown disables all CRTCs first, but a pending HPD IRQ thread wakes up afterwards, reads the DPCD, and fires an unsolicited hotplug event that triggers a second atomic commit turning the display back on -- right as the IOMMU is disabling translation: systemd-shutdown[1]: Rebooting. msm_dpu: drm_atomic_commit: committing (shutdown disabling CRTCs) arm-smmu 3da0000.iommu: disabling translation msm_dpu: drm_dp_read_dpcd_caps (late HPD IRQ thread wakes up) msm_dpu: drm_sysfs_connector_hotplug_event: DP-1 hotplug event msm_dpu: drm_client_modeset_probe: DP-1 found preferred mode msm_dpu: drm_atomic_commit: committing (unsolicited, re-enables display) dpu_crtc_commit_kickoff: crtc94 first commit arm-smmu 15200000.iommu: disabling translation Mask and flush the IRQ in .shutdown so no HPD event can retrigger a modeset once shutdown has started. Reported on lemans-evk and monaco-evk during reboot stress testing. Assisted-by: Claude:claude-sonnet-5 Signed-off-by: Mahadevan P --- drivers/gpu/drm/msm/dp/dp_display.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/d= p_display.c index dc6f33809ca5..b4fbdeebf952 100644 --- a/drivers/gpu/drm/msm/dp/dp_display.c +++ b/drivers/gpu/drm/msm/dp/dp_display.c @@ -1207,6 +1207,14 @@ static void msm_dp_display_remove(struct platform_de= vice *pdev) platform_set_drvdata(pdev, NULL); } =20 +static void msm_dp_display_shutdown(struct platform_device *pdev) +{ + struct msm_dp_display_private *dp =3D dev_get_dp_display_private(&pdev->d= ev); + + disable_irq(dp->irq); + synchronize_irq(dp->irq); +} + static int msm_dp_pm_runtime_suspend(struct device *dev) { struct msm_dp_display_private *dp =3D dev_get_dp_display_private(dev); @@ -1253,6 +1261,7 @@ static const struct dev_pm_ops msm_dp_pm_ops =3D { static struct platform_driver msm_dp_display_driver =3D { .probe =3D msm_dp_display_probe, .remove =3D msm_dp_display_remove, + .shutdown =3D msm_dp_display_shutdown, .driver =3D { .name =3D "msm-dp-display", .of_match_table =3D msm_dp_dt_match, --- base-commit: 1a1757b76427f6201bfe0bf1bea9f7574f332a93 change-id: 20260717-dpshutdown-047912fcf60b Best regards, --=20 Mahadevan P