Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp2527638pxb; Mon, 11 Jan 2021 12:01:18 -0800 (PST) X-Google-Smtp-Source: ABdhPJzqCrFc2FxPcXg9VMjmPqSMW+anP/NdpNKambcE3UtzcBFLbKrzxMikBL1PUBneP7cHERuy X-Received: by 2002:a17:906:30d3:: with SMTP id b19mr738127ejb.538.1610395278480; Mon, 11 Jan 2021 12:01:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610395278; cv=none; d=google.com; s=arc-20160816; b=Y/LoJVd2E06jJ9qhV2uqxY/Pn0ryPXH3wQW/zbafPLV4ZnfQFRvvUgqkLmb/mJ7XT6 WkpfVqhCGZdVakrlRif/x9YoXkf/5Doqe/Dr3d+oGu60OYVAD6EV0CMd/m2XFtpzQiaL UsG8Z+Z1Z+xo7ca1FxeBv6iYBGQnMA0IoJdiSTRYXIJjGcJjHMOia58QPw+NGIohRnMd FjtqaZ7DZRVshvXFF6szoy0Fabwk48aXV/p+gKj4aLNsxrVJ4nHUoIW2N8AaPUKi7z+M beweM4GGCmgipcLAXYGJNUKMIFN+2QglgaMu31o+lM1evOSJkUdWYseOjzZQK/2pFuwT Ld1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:message-id:date:to:cc:from:subject :references:in-reply-to:content-transfer-encoding:mime-version :dkim-signature; bh=x1kEK/qhNdROptR6SyV1mmKseA6+oUbWg4LW5g3LzE0=; b=flZddgP+twnHfqwYQnURnoMCZvuqlugWJ+XekIvz0AK170PKUkZUoxn4TWc5jvyBKy a4/jnprvVgYi0MC/Ebxa0tOb8qYqL83BtpWMpc47qGXMBsBZ3Jp+Ntpj4R1zKTlrkfgh w3xt3Nvprqb9Z/2gPPJFZnBP9RdOD+YVHR6luR8s5QitHzsbt6gziaKD6yzU8juKLhYI wfBr1i+v6yyTojtK3Fvn1bUrNQCX5dV4zrBjTmVbzZTKwGftCRc8F/ZRHAATJClrTnou k76ngcJYblOF6oobPkH4LuaDUk2KjMVZdJISuy5QfKez/D87PbcqDkGQLi+A1PWK90WF qlgg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=hRnDQcZQ; 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 s20si152325ejd.566.2021.01.11.12.00.54; Mon, 11 Jan 2021 12:01:18 -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=hRnDQcZQ; 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 S2391183AbhAKT4B (ORCPT + 99 others); Mon, 11 Jan 2021 14:56:01 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51570 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2391163AbhAKT4B (ORCPT ); Mon, 11 Jan 2021 14:56:01 -0500 Received: from mail-pl1-x62d.google.com (mail-pl1-x62d.google.com [IPv6:2607:f8b0:4864:20::62d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 58281C061795 for ; Mon, 11 Jan 2021 11:55:21 -0800 (PST) Received: by mail-pl1-x62d.google.com with SMTP id y8so56833plp.8 for ; Mon, 11 Jan 2021 11:55:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:content-transfer-encoding:in-reply-to:references :subject:from:cc:to:date:message-id:user-agent; bh=x1kEK/qhNdROptR6SyV1mmKseA6+oUbWg4LW5g3LzE0=; b=hRnDQcZQXrF7xHbgGwWWWW+3sdndqXrcQ+SW4lu0ULqzpK81pHZW3zcA4U8UxHDh/r QPL4v1rIH6LCKv55YiBpMJxl8YhCuB6MSZjjS/p8D0VZ4SNnck2ldoIo26/q1LxeqOlx 64kowb2YDUHl2pAU/Wiz70Ddg5B8xFYlA5Rcg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:content-transfer-encoding :in-reply-to:references:subject:from:cc:to:date:message-id :user-agent; bh=x1kEK/qhNdROptR6SyV1mmKseA6+oUbWg4LW5g3LzE0=; b=ehjvdFbY2+vRR70sZmNi9bkq03zSUm6LWoKDM1M26SSyjLFNmI3EzJL0PSXVIOExvJ p7cYgVcGPoNC0KEQH+73XcwxyTgJqN/YcrDGiYc7R1tA6CDKGIgj4Lw55P2KMB0ChYys Nk3PyemycUXDRRLNOwrfl4fMYDreOBUjwu89zcwqcoCYbbsycxsyzUu9CVUGRrZAldg4 zAiQ/UDbWLbqchBdjZTPrQQd5TcMFv/ThZT7WT5BWVEBYFVzNr2f6+juQMmMnbfYi0hT aoTD1b0NdfGbdA9e0VWaE7FAPoTFmfZPxDmPXCpaApDUVBZyIAvaABzbNFI/eoP8RHdd 7Zcw== X-Gm-Message-State: AOAM531wLDXx1NFB2hkV/+OgUqf1humxcKsdn7M4nFOxy/KwPz+ZPNGa sXewf9vShVAX7eQYtHZr//FYNA== X-Received: by 2002:a17:902:7001:b029:da:bbb6:c7e2 with SMTP id y1-20020a1709027001b02900dabbb6c7e2mr932791plk.50.1610394920963; Mon, 11 Jan 2021 11:55:20 -0800 (PST) Received: from chromium.org ([2620:15c:202:201:3e52:82ff:fe6c:83ab]) by smtp.gmail.com with ESMTPSA id z15sm443642pfn.34.2021.01.11.11.55.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 Jan 2021 11:55:20 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable In-Reply-To: <1610051425-20632-2-git-send-email-khsieh@codeaurora.org> References: <1610051425-20632-1-git-send-email-khsieh@codeaurora.org> <1610051425-20632-2-git-send-email-khsieh@codeaurora.org> Subject: Re: [PATCH 1/2] drm/msm/dp: postpone irq_hpd event during connection pending state From: Stephen Boyd Cc: Kuogee Hsieh , tanmay@codeaurora.org, abhinavk@codeaurora.org, aravindh@codeaurora.org, airlied@linux.ie, daniel@ffwll.ch, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org To: Kuogee Hsieh , dri-devel@lists.freedesktop.org, robdclark@gmail.com, sean@poorly.run Date: Mon, 11 Jan 2021 11:55:18 -0800 Message-ID: <161039491877.3661239.1387205899512360969@swboyd.mtv.corp.google.com> User-Agent: alot/0.9.1 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Quoting Kuogee Hsieh (2021-01-07 12:30:24) > irq_hpd event can only be executed at connected state. Therefore > irq_hpd event should be postponed if it happened at connection > pending state. This patch also make sure both link rate and lane Why does it happen at connection pending state? > are valid before start link training. Can this part about link rate and lane being valid be split off into another patch? >=20 > Signed-off-by: Kuogee Hsieh > --- Any fixes tag? > drivers/gpu/drm/msm/dp/dp_display.c | 7 +++++++ > drivers/gpu/drm/msm/dp/dp_panel.c | 12 +++++++++--- > 2 files changed, 16 insertions(+), 3 deletions(-) >=20 > diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp= /dp_display.c > index 6e971d5..3bc7ed2 100644 > --- a/drivers/gpu/drm/msm/dp/dp_display.c > +++ b/drivers/gpu/drm/msm/dp/dp_display.c > @@ -693,6 +693,13 @@ static int dp_irq_hpd_handle(struct dp_display_priva= te *dp, u32 data) > return 0; > } > =20 > + if (state =3D=3D ST_CONNECT_PENDING) { > + /* wait until ST_CONNECTED */ > + dp_add_event(dp, EV_IRQ_HPD_INT, 0, 1); /* delay =3D 1 */ > + mutex_unlock(&dp->event_mutex); > + return 0; > + } > + > ret =3D dp_display_usbpd_attention_cb(&dp->pdev->dev); > if (ret =3D=3D -ECONNRESET) { /* cable unplugged */ > dp->core_initialized =3D false;