Received: by 2002:a25:683:0:0:0:0:0 with SMTP id 125csp386546ybg; Mon, 1 Jun 2020 04:08:33 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyQ/BUIIr8kCa+QZrjV6+9G0Ew4NMe/BYGFtVtwOcG0IiiQwIIutwRiNPV/Zz1zaQbxh+H+ X-Received: by 2002:a05:6402:719:: with SMTP id w25mr21300716edx.179.1591009713529; Mon, 01 Jun 2020 04:08:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1591009713; cv=none; d=google.com; s=arc-20160816; b=e1mEDf4LYvXPvyeOtHqwzgwaDtgFz23rSfGipsL+NFMk1KDG8mpm1p7zFQJLVU6D2j qAC4aKgMGi9mxEhW3jkH57WhgIWeY1GktTsqfx431hIO5nEPNvfvNrf8p+nW1Q6RQy5D kuOhpHB5JhcsfdwUJVzfBk+VYIVrig22izAYmcRV3J6Qmq227fiVZZInxmXuXscF+43U MxKO2fi/wIYV3ryDOeb9hzHmj1XBqBzwEHSv5YVisP4CnKpobzgKu6/nmrD9f0bL2bSN Ml6rBMJ+BK8Da9/qMIfhE7c+3ooiBTTJffvyjeL5rT+6OXOwi0tOhgQV+Vlk90GDTezT ogdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from; bh=ZFtNmn9gwwNl9x7WvsOdNqEdT1pOrs6zxxp1NB4BQJI=; b=hee0RAwXH87X8fI0sY+/Q0dS8dl7N4qN1MZ4+2GlxxK3I97AoHCtvBZmM28eedpKzC HihhrYy6sN3UojFZ3vjtgo96QfS6eT57vUNpQ/0riu8gt8jbxOtPgB0/LW5cwVOTdPc8 LY8i+tb1PfO9aI8ZVKJ7nRzjA9c7ZyTgGk8QeksZpTjFglpa4iardmG32pNWg7+sJHzy O048CdDptVA4dM15w9FFaGLG553QXNrejZZooH7p4DY4JbHRomZO6SDMYa0jwHF+6/1U kH5WaKJLu2eiisE+CcQ6Ke2whaszxrchoDNJaw9Yldzu6WhOSw04VcPBatzerNjnOZ13 nHEQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h91si2542257edc.340.2020.06.01.04.08.10; Mon, 01 Jun 2020 04:08:33 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726124AbgFALDv (ORCPT + 99 others); Mon, 1 Jun 2020 07:03:51 -0400 Received: from alexa-out-blr-02.qualcomm.com ([103.229.18.198]:28943 "EHLO alexa-out-blr-02.qualcomm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725788AbgFALDv (ORCPT ); Mon, 1 Jun 2020 07:03:51 -0400 Received: from ironmsg02-blr.qualcomm.com ([10.86.208.131]) by alexa-out-blr-02.qualcomm.com with ESMTP/TLS/AES256-SHA; 01 Jun 2020 16:33:48 +0530 Received: from mkrishn-linux.qualcomm.com ([10.204.66.35]) by ironmsg02-blr.qualcomm.com with ESMTP; 01 Jun 2020 16:33:27 +0530 Received: by mkrishn-linux.qualcomm.com (Postfix, from userid 438394) id C14EF47F4; Mon, 1 Jun 2020 16:33:26 +0530 (IST) From: Krishna Manikandan To: dri-devel@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, devicetree@vger.kernel.org Cc: Krishna Manikandan , linux-kernel@vger.kernel.org, robdclark@gmail.com, seanpaul@chromium.org, hoegsberg@chromium.org, kalyan_t@codeaurora.org, nganji@codeaurora.org, mka@chromium.org Subject: [v2] drm/msm: add shutdown support for display platform_driver Date: Mon, 1 Jun 2020 16:33:22 +0530 Message-Id: <1591009402-681-1-git-send-email-mkrishn@codeaurora.org> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Define shutdown callback for display drm driver, so as to disable all the CRTCS when shutdown notification is received by the driver. This change will turn off the timing engine so that no display transactions are requested while mmu translations are getting disabled during reboot sequence. Signed-off-by: Krishna Manikandan Changes in v2: - Remove NULL check from msm_pdev_shutdown (Stephen Boyd) - Change commit text to reflect when this issue was uncovered (Sai Prakash Ranjan) --- drivers/gpu/drm/msm/msm_drv.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c index e4b750b..94e3963 100644 --- a/drivers/gpu/drm/msm/msm_drv.c +++ b/drivers/gpu/drm/msm/msm_drv.c @@ -1322,6 +1322,13 @@ static int msm_pdev_remove(struct platform_device *pdev) return 0; } +static void msm_pdev_shutdown(struct platform_device *pdev) +{ + struct drm_device *drm = platform_get_drvdata(pdev); + + drm_atomic_helper_shutdown(drm); +} + static const struct of_device_id dt_match[] = { { .compatible = "qcom,mdp4", .data = (void *)KMS_MDP4 }, { .compatible = "qcom,mdss", .data = (void *)KMS_MDP5 }, @@ -1334,6 +1341,7 @@ static int msm_pdev_remove(struct platform_device *pdev) static struct platform_driver msm_platform_driver = { .probe = msm_pdev_probe, .remove = msm_pdev_remove, + .shutdown = msm_pdev_shutdown, .driver = { .name = "msm", .of_match_table = dt_match, -- 1.9.1