Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp4606692pxt; Wed, 11 Aug 2021 09:39:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJytldZmtrYYDGogmIHg2cdCQmmY7zWHhSgQ5D54y2eN1b2qF03HBkKTJI1X5GTb9RxHZim1 X-Received: by 2002:a17:906:14c8:: with SMTP id y8mr4445682ejc.475.1628699976491; Wed, 11 Aug 2021 09:39:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628699976; cv=none; d=google.com; s=arc-20160816; b=IvvsF7PxjC0EXZ6IDR53rhrYGVEtPcqtWh4dooHHFAugWeVmzUnxkNAEIjaXBghIEt qvmrO6V2TjShjvTii/tNnA10yUEDndKjmhOrhWwNQJQ5QhCCHOj3Wes6T+2Nf/INWRll Y10lEe7trNrb56u8fHwqQzUOA5lIUT8Uk7ocOu4lqRcAH5BK+lmln+TDWGJVwjtuYVN7 0Ihd0w0paVNFzZ6ocOjLxt5RTv6VePSr3i6ZjtM8iuy7Fn2QTrR3ailmfGlJkb3LaYHP ptTpETQe4IVYDYx//lB6kxDaz5UGeqYFyzlTfz0P9fWfSkYpbAhAvYuihvjgO4PIWnMy ZVQg== 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=D+KbWDIaFLb4tWtsZVnTDTkHOsEKc5IDspG016rjGaKyBY+cB2+pYxBCp/jGvQR01R 43XDdJ5qrjxNj87cQU3XUbptFJvR70ZLZUuCyTY35ETHM8yvCJMnrUSf1kDpUrcETnRH FnbTConkUvJE0trqdgh35FXRG9fMq7bpfi8etlZf+RUqNL5Ui9dW0ITwOXyYtYb+oVKO qWe+G6sc9mCcu3DE7XrNmqnVFuKhywCuqbZgTRPu2EhH2Su+cmgiRPGR1UIe2zXPPusJ mKRr76yXtgZn1U0mzkURwc8icrOTbPTj2wIhXQ/TrG0Ds0PryD3lwTqZPICDU/toQJpH NUow== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=m20zgDg7; 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 v22si3557316edb.60.2021.08.11.09.39.12; Wed, 11 Aug 2021 09:39:36 -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=m20zgDg7; 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 S229776AbhHKQgC (ORCPT + 99 others); Wed, 11 Aug 2021 12:36:02 -0400 Received: from m43-7.mailgun.net ([69.72.43.7]:61959 "EHLO m43-7.mailgun.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229535AbhHKQgA (ORCPT ); Wed, 11 Aug 2021 12:36:00 -0400 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1628699736; h=References: In-Reply-To: Message-Id: Date: Subject: Cc: To: From: Sender; bh=ixN/G0wD2Tem26eG8Y4vIh8M91ioKBwKM8eJ2m/0tjo=; b=m20zgDg7v4Hb+eF2YPbcKw0rX6nkI9loVFqG7eHDd9jN6rrhRKiRsr08Uv4lXnMvC1f6w917 OVZ3AwThStW/1mrCfvy6QrI+P9eLP5jNGUex9JqdAH1lz0LXr3HgbIKaaXX65sHeKULvmh5u FZRTsiu2WyQVKrG5qUoDjdmA8NI= 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-n04.prod.us-east-1.postgun.com with SMTP id 6113fb347ee6040977f0a477 (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Wed, 11 Aug 2021 16:30:44 GMT Sender: khsieh=codeaurora.org@mg.codeaurora.org Received: by smtp.codeaurora.org (Postfix, from userid 1001) id 3B8E2C4323A; Wed, 11 Aug 2021 16:30:43 +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 4D90BC433F1; Wed, 11 Aug 2021 16:30:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 4D90BC433F1 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: robdclark@gmail.com, sean@poorly.run, swboyd@chromium.org Cc: Kuogee Hsieh , abhinavk@codeaurora.org, aravindh@codeaurora.org, airlied@linux.ie, daniel@ffwll.ch, linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH v4 3/6] drm/msm/dp: reset aux controller after dp_aux_cmd_fifo_tx() failed. Date: Wed, 11 Aug 2021 09:30:04 -0700 Message-Id: <1628699407-28358-4-git-send-email-khsieh@codeaurora.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1628699407-28358-1-git-send-email-khsieh@codeaurora.org> References: <1628699407-28358-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