Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp71240pxt; Thu, 5 Aug 2021 18:19:46 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzTO53SnkNxD0Psmwmx0o+mJn5momTNVAdEvDTtjFWhXaXEPgrdf24RF/nceMy6+dJb0bMi X-Received: by 2002:aa7:cd5c:: with SMTP id v28mr10206111edw.305.1628212786271; Thu, 05 Aug 2021 18:19:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628212786; cv=none; d=google.com; s=arc-20160816; b=Z5b+nhtg1cUgQuLQakjeYs/h+PdrotaTNgyxaX46PGf7SopJxjp7IL/FiOTbHd0mgy 6jqI+PeAGRrEJJQkFqwOE3ixuaPr5gzN0uP02LQK3f79N5OYn+HkS+02f4vUp+VSrX1a 21F/5hbkFJ3hAuYtoAjYqLVoxTRmB90B+d+H2Pb2VnS10nVU+/+6at2czDLP/6UmZsOB ig5DVYO1ma3xd6Oatd72zJLGNtiQFrewQTsymLZ3d/DGGQizbk1smhRrjywbAGwGkpQ7 0z4JdwxgWv3FpYuKFKZuPcNkUDuN+3iDdTcfdoQcK25p8+oF8dC+G5fm1oECIwU+uXnY BYzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:dmarc-filter:sender:dkim-signature; bh=ixN/G0wD2Tem26eG8Y4vIh8M91ioKBwKM8eJ2m/0tjo=; b=XMW3eu28+OA8EXeoZMhRyuMVspgiRKyLUGAvqOManXIObKtSfJsTuOiqjcX/DWfhy8 b1MN2PSp2d7N4bQFc1As1KJaDmgwYQ/kYtJte8Jlgpq/TAtB16yEsPC1sTIuLovT8Xto HUhtoSvb4OVYvUwHS2ZuAU9f+54O1CcVBuKdeMRygp1YwBAlWwGW3uDYpux6nr18GWBi c2n6AxnrUxfJaO2GvYm2rdjdkBZzV9J0kHP0QKEXNuOvUu7lGO3tkiFPdUl0HsxZ+lNJ XzDRa+GN9SqEMmSJnn/yYWZOynqR+r3pq7O8GJVnfB01GCmYoSQoJedN2/QTKD3nps/o DKuA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=CxKUuy9j; 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 g4si7848751eds.200.2021.08.05.18.19.20; Thu, 05 Aug 2021 18:19:46 -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; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=CxKUuy9j; 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 S241299AbhHEUqJ (ORCPT + 99 others); Thu, 5 Aug 2021 16:46:09 -0400 Received: from m43-7.mailgun.net ([69.72.43.7]:59116 "EHLO m43-7.mailgun.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241244AbhHEUqH (ORCPT ); Thu, 5 Aug 2021 16:46:07 -0400 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1628196353; h=References: In-Reply-To: Message-Id: Date: Subject: Cc: To: From: Sender; bh=ixN/G0wD2Tem26eG8Y4vIh8M91ioKBwKM8eJ2m/0tjo=; b=CxKUuy9jn7I4S98+Ut6hjLacg6ZGRC1/2OdZO8gyYIjfyK1uNFwEtJLU4ACL0HYNRcTzC4/C WOStK3AFNCWGLoj1X3W9qJVFR2HDTYLwiFvV6/JLeghTTbSQb2wxg+zWAMp9Itbx5WHfGPPR DRKpSUr3K7tNbbqIPpynUE4WcFI= X-Mailgun-Sending-Ip: 69.72.43.7 X-Mailgun-Sid: WyI0MWYwYSIsICJsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnIiwgImJlOWU0YSJd Received: from smtp.codeaurora.org (ec2-35-166-182-171.us-west-2.compute.amazonaws.com [35.166.182.171]) by smtp-out-n03.prod.us-west-2.postgun.com with SMTP id 610c4df68caa8fb7f5945b30 (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Thu, 05 Aug 2021 20:45:42 GMT Sender: khsieh=codeaurora.org@mg.codeaurora.org Received: by smtp.codeaurora.org (Postfix, from userid 1001) id 1BB41C43143; Thu, 5 Aug 2021 20:45:41 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-caf-mail-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=2.0 tests=ALL_TRUSTED,BAYES_00,SPF_FAIL, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from khsieh-linux1.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: khsieh) by smtp.codeaurora.org (Postfix) with ESMTPSA id DFB0EC433F1; Thu, 5 Aug 2021 20:45:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org DFB0EC433F1 Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; spf=fail smtp.mailfrom=khsieh@codeaurora.org From: Kuogee Hsieh To: dri-devel@lists.freedesktop.org, robdclark@gmail.com, sean@poorly.run, swboyd@chromium.org Cc: Kuogee Hsieh , abhinavk@codeaurora.org, aravindh@codeaurora.org, airlied@linux.ie, daniel@ffwll.ch, bjorn.andersson@linaro.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 3/6] drm/msm/dp: reset aux controller after dp_aux_cmd_fifo_tx() failed. Date: Thu, 5 Aug 2021 13:44:52 -0700 Message-Id: <1628196295-7382-4-git-send-email-khsieh@codeaurora.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1628196295-7382-1-git-send-email-khsieh@codeaurora.org> References: <1628196295-7382-1-git-send-email-khsieh@codeaurora.org> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Aux hardware calibration sequence requires resetting the aux controller in order for the new setting to take effect. However resetting the AUX controller will also clear HPD interrupt status which may accidentally cause pending unplug interrupt to get lost. Therefore reset aux controller only when link is in connection state when dp_aux_cmd_fifo_tx() fail. This fixes Link Layer CTS cases 4.2.1.1 and 4.2.1.2. Signed-off-by: Kuogee Hsieh Reviewed-by: Stephen Boyd --- drivers/gpu/drm/msm/dp/dp_aux.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/msm/dp/dp_aux.c b/drivers/gpu/drm/msm/dp/dp_aux.c index 4a3293b..eb40d84 100644 --- a/drivers/gpu/drm/msm/dp/dp_aux.c +++ b/drivers/gpu/drm/msm/dp/dp_aux.c @@ -353,6 +353,9 @@ static ssize_t dp_aux_transfer(struct drm_dp_aux *dp_aux, if (!(aux->retry_cnt % MAX_AUX_RETRIES)) dp_catalog_aux_update_cfg(aux->catalog); } + /* reset aux if link is in connected state */ + if (dp_catalog_link_is_connected(aux->catalog)) + dp_catalog_aux_reset(aux->catalog); } else { aux->retry_cnt = 0; switch (aux->aux_error_num) { -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project