Received: by 2002:a05:6a10:af89:0:0:0:0 with SMTP id iu9csp726635pxb; Fri, 14 Jan 2022 15:07:07 -0800 (PST) X-Google-Smtp-Source: ABdhPJzzA+uH+UzoBXH8aeVnBB06BybchO0Zhw2Y/yIgMOanS7pguMjifdVUn2w29FFjZBjy1C4X X-Received: by 2002:a17:90a:d41:: with SMTP id 1mr22687967pju.196.1642201627515; Fri, 14 Jan 2022 15:07:07 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1642201627; cv=none; d=google.com; s=arc-20160816; b=Azj8Uvr8xo1K1dqHikqkDwS7YtC6TQscQkTfn3tK/61i/ml7VA+n9fUdY36VrVNVLO fMvB/VOFPwTwmvPcctfCMRucl5AcvS+qjnvMPuMnLQG1Gd2b59MCiG1Dn6B9zjrUCTH/ RDZNYrKF++RUC3GbJA1wwQaPV3eq2c4xKcnfPoGmLaRswYdzNYqUtUFg5puNIDwTuQGO uXiDguYwrAJ1+gFKLiX3c/XUaFC7GZeOtYxF6IOjOyU6+fFpT33IhXZSnTMSyOkNNxY7 XklAfJwyFIT8uc3uGiD9URScJrZ5ho4LqKB9fQO3QUDKxrZrJXU9WWsrOX/21x8b2jmz yxDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:user-agent:from :references:in-reply-to:mime-version:dkim-signature; bh=w8eYRN8DvaWrfxZ2Wz3wjJHXZl1sXzUmVItZvQrcpIU=; b=jg2CMQiBfeq04TXYjLsaQxsusP8c4A0E380u4ZYtVDKcYyELbYJy8nwIbwe0jeA7oW iw2uJj9X10DRLWHJpJ5U6kyCNcoU3P5FDIayeI7YfK7/GZ+vY9E8sbsWn5CQWT2oLhBs JFRz4aT9NjOLgmaWpKP26hPIvHRRoumvfQBPnfyGkmRggsmxgl09ySGdCm5UoMHRvbli BZk4YtaMC+o1042H+0PMoExPXsWsrlSXwC0SdfWq2fJQ11kYrCuWZ7MtAe8kjhzw74W+ CC56oJ9u24sng5MTWK0pHq74WThL/xDa7z4U0biXnCprv3cveubC0wrqhxsq6R+E5AS1 msDw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=OKa3qW6W; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t12si1560666plg.257.2022.01.14.15.06.55; Fri, 14 Jan 2022 15:07:07 -0800 (PST) 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; dkim=pass header.i=@chromium.org header.s=google header.b=OKa3qW6W; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240088AbiANUlu (ORCPT + 99 others); Fri, 14 Jan 2022 15:41:50 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51534 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239585AbiANUlt (ORCPT ); Fri, 14 Jan 2022 15:41:49 -0500 Received: from mail-oi1-x232.google.com (mail-oi1-x232.google.com [IPv6:2607:f8b0:4864:20::232]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 80F8AC06173E for ; Fri, 14 Jan 2022 12:41:49 -0800 (PST) Received: by mail-oi1-x232.google.com with SMTP id g205so13858191oif.5 for ; Fri, 14 Jan 2022 12:41:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:in-reply-to:references:from:user-agent:date:message-id :subject:to:cc; bh=w8eYRN8DvaWrfxZ2Wz3wjJHXZl1sXzUmVItZvQrcpIU=; b=OKa3qW6WIsuRKuwVZNQaoh+x0FXafWzSaIVMiOJybsAilmpEY6W3EOaW9x2UgT2rw5 7Z6ixaS6ITqghZ1bGqvYEroKq3/zGqHGcf6lImK8zDJvW3Mf+P2/aLm6KsTE0F3P8quV 5MzfzisWUjGUiPZu535FQWvgGlcTrhsR26KJc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:in-reply-to:references:from :user-agent:date:message-id:subject:to:cc; bh=w8eYRN8DvaWrfxZ2Wz3wjJHXZl1sXzUmVItZvQrcpIU=; b=FcnmKGFvs4b61v1KFRVflD6hqnRpwmSdULJe2E9gIUjxApQzX7Xs36rqK6YsYioEjg 1Pur1H8h3iw5fvdum9SWgnm0DOq85pAEAZ9ppPtAr2OdzTCz08vx27VsR5Fd6htRVSvz 2ZXOLBPuutyMv+CxlCmF9ovQO+iK8gbf3eUvQVOpItSM9ieSOUzxKyH3bwNG5bmprWU8 wWgeCj6fB4FS/rkEetHZ4/q7+e2EGmqlzhM7SxJ3hZD8D/HnRs7D4BG+nSjjgjAgCFHT IDDZImkQnzahMm/zPW1m2nkyS13YaBaasZxhh4+/v7a9ypTv/F+bTy/TLJZs3xTtBUTF ozXg== X-Gm-Message-State: AOAM531ZkJ6aiw86Z7mSvOZXwYqnSDQf/BXqYm7P/6ElNUxmeCDpTHda 3qb08C//yyU0/txmGhkt8jaoN6OzDtatYe6WIuOyeYiVyH0= X-Received: by 2002:aca:4382:: with SMTP id q124mr8893398oia.64.1642192908901; Fri, 14 Jan 2022 12:41:48 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Fri, 14 Jan 2022 14:41:48 -0600 MIME-Version: 1.0 In-Reply-To: <1642182874-27296-2-git-send-email-quic_khsieh@quicinc.com> References: <1642182874-27296-1-git-send-email-quic_khsieh@quicinc.com> <1642182874-27296-2-git-send-email-quic_khsieh@quicinc.com> From: Stephen Boyd User-Agent: alot/0.10 Date: Fri, 14 Jan 2022 14:41:48 -0600 Message-ID: Subject: Re: [PATCH v14 1/4] drm/msm/dp: do not initialize phy until plugin interrupt received To: Kuogee Hsieh , agross@kernel.org, airlied@linux.ie, bjorn.andersson@linaro.org, daniel@ffwll.ch, dmitry.baryshkov@linaro.org, dri-devel@lists.freedesktop.org, robdclark@gmail.com, sean@poorly.run, vkoul@kernel.org Cc: quic_abhinavk@quicinc.com, aravindh@codeaurora.org, quic_sbillaka@quicinc.com, freedreno@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Quoting Kuogee Hsieh (2022-01-14 09:54:31) > diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c > index 7cc4d21..2616f7b 100644 > --- a/drivers/gpu/drm/msm/dp/dp_display.c > +++ b/drivers/gpu/drm/msm/dp/dp_display.c > @@ -372,21 +373,38 @@ static int dp_display_process_hpd_high(struct dp_display_private *dp) > return rc; > } > > -static void dp_display_host_init(struct dp_display_private *dp, int reset) > +static void dp_display_host_phy_init(struct dp_display_private *dp) > { > - bool flip = false; > + DRM_DEBUG_DP("core_init=%d phy_init=%d\n", > + dp->core_initialized, dp->phy_initialized); > > + if (!dp->phy_initialized) { > + dp_ctrl_phy_init(dp->ctrl); > + dp->phy_initialized = true; > + } > +} > + > +static void dp_display_host_phy_exit(struct dp_display_private *dp) > +{ > + DRM_DEBUG_DP("core_init=%d phy_init=%d\n", > + dp->core_initialized, dp->phy_initialized); > + > + if (dp->phy_initialized) { > + dp_ctrl_phy_exit(dp->ctrl); > + dp->phy_initialized = false; > + } > +} > + > +static void dp_display_host_init(struct dp_display_private *dp) > +{ > DRM_DEBUG_DP("core_initialized=%d\n", dp->core_initialized); > if (dp->core_initialized) { Can you remove this if condition too? I don't see how it ever happens. > DRM_DEBUG_DP("DP core already initialized\n"); > return; > } > > - if (dp->usbpd->orientation == ORIENTATION_CC2) > - flip = true; > - > - dp_power_init(dp->power, flip); > - dp_ctrl_host_init(dp->ctrl, flip, reset); > + dp_power_init(dp->power, false); > + dp_ctrl_reset_irq_ctrl(dp->ctrl, true); > dp_aux_init(dp->aux); > dp->core_initialized = true; > }