Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp3207725pxb; Wed, 13 Oct 2021 00:56:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzyM7FKDAv3wQmeq3pXgagGpvI+z6lpxByD2ZsjeZfiG9fq6n2v6BbAEf0ww4KsPfP+pBKi X-Received: by 2002:a17:906:1dc4:: with SMTP id v4mr39080590ejh.282.1634111783015; Wed, 13 Oct 2021 00:56:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1634111783; cv=none; d=google.com; s=arc-20160816; b=q8ghYiVFZD6ELelTKBqXmO+wpnfvk140wx3GjM1RtlarXbQb8m4iDfo9vSQXyxb1Vp DjdWznpbjCUxzcTLE+2owdVTomkJDs55tOhJF9qDtjlpPec44yLGdn5S6AYkp+3vqDHv eUsM/PRHeBHrg/FXuswLWxP7INjlUuv4WhNJ9y4dWcC9FqV7QsOmH4z9pCymqN2TXJoL HGhrUIPkhZpbF+mH9JgW9acMLtz5XJka9Z5ncyR7Kn71TBYBAGd7xXT1ZL7aY9/37wsD 5GSQIjUZid/8euEacA3Fl1w3Ui2nMRxvO6fpdHZeHQk4DvOteZ9/9HybIQiTZFGpQma9 O62w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=G8p7v0RXmYbjbGfDDQnpdDAIqWm4jm6j4q3DbhMQH7w=; b=KxB2PACZcN0/OGVU0qvpDfjJFMBi4h5EcJiNgtszk5JfBQKqxr2TNZEMTlCbTkKdlx 1aWjlEFeXaZ4IUqDPJXrPuOfPHGuwIBzGvprE666P5MNWMbMhwV+00pnSUVTcJzuBPSQ FmQkmT5PziG1ah3pTVKU2YDUKoF7lJvVsY7sTq4KA4cgkWopnx6hu8RXOcJc3KMHvsbr DA56RTcLU5sYAkLRezkxfs6AwtXyv0k6ZagbslmbS5cKbLJDA2iL2cdCwvj66BKxY2kR 0YFs5IzxmKcJgL4fyiWicjZjfaYxz10PzW2NBcdnRcc0LfKRz2Qg7Ertci214B/fInRe SZpw== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z26si25981854ejc.230.2021.10.13.00.55.57; Wed, 13 Oct 2021 00:56:23 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238612AbhJMHz7 (ORCPT + 99 others); Wed, 13 Oct 2021 03:55:59 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:57622 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S229902AbhJMHz6 (ORCPT ); Wed, 13 Oct 2021 03:55:58 -0400 X-UUID: 2080e3392f3c4492a7363f504d906a6b-20211013 X-UUID: 2080e3392f3c4492a7363f504d906a6b-20211013 Received: from mtkmbs10n2.mediatek.inc [(172.21.101.183)] by mailgw02.mediatek.com (envelope-from ) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 472035250; Wed, 13 Oct 2021 15:53:53 +0800 Received: from mtkcas11.mediatek.inc (172.21.101.40) by mtkmbs10n2.mediatek.inc (172.21.101.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.2.792.3; Wed, 13 Oct 2021 15:53:51 +0800 Received: from localhost.localdomain (10.17.3.154) by mtkcas11.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Wed, 13 Oct 2021 15:53:51 +0800 From: Jianjun Wang To: Lorenzo Pieralisi , Rob Herring , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , Bjorn Helgaas , Ryder Lee , Matthias Brugger CC: , , , , Jianjun Wang , , , Tzung-Bi Shih Subject: [PATCH v2] PCI: mediatek-gen3: Disable DVFSRC voltage request Date: Wed, 13 Oct 2021 15:53:28 +0800 Message-ID: <20211013075328.12273-1-jianjun.wang@mediatek.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 7BIT Content-Type: text/plain; charset=US-ASCII X-MTK: N Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When the DVFSRC feature is not implemented, the MAC layer will assert a voltage request signal when exit from the L1ss state, but cannot receive the voltage ready signal, which will cause the link to fail to exit the L1ss state correctly. Disable DVFSRC voltage request by default, we need to find a common way to enable it in the future. Signed-off-by: Jianjun Wang Reviewed-by: Tzung-Bi Shih Tested-by: Qizhong Cheng --- drivers/pci/controller/pcie-mediatek-gen3.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/pci/controller/pcie-mediatek-gen3.c b/drivers/pci/controller/pcie-mediatek-gen3.c index f3aeb8d4eaca..79fb12fca6a9 100644 --- a/drivers/pci/controller/pcie-mediatek-gen3.c +++ b/drivers/pci/controller/pcie-mediatek-gen3.c @@ -79,6 +79,9 @@ #define PCIE_ICMD_PM_REG 0x198 #define PCIE_TURN_OFF_LINK BIT(4) +#define PCIE_MISC_CTRL_REG 0x348 +#define PCIE_DISABLE_DVFSRC_VLT_REQ BIT(1) + #define PCIE_TRANS_TABLE_BASE_REG 0x800 #define PCIE_ATR_SRC_ADDR_MSB_OFFSET 0x4 #define PCIE_ATR_TRSL_ADDR_LSB_OFFSET 0x8 @@ -297,6 +300,11 @@ static int mtk_pcie_startup_port(struct mtk_pcie_port *port) val &= ~PCIE_INTX_ENABLE; writel_relaxed(val, port->base + PCIE_INT_ENABLE_REG); + /* Disable DVFSRC voltage request */ + val = readl_relaxed(port->base + PCIE_MISC_CTRL_REG); + val |= PCIE_DISABLE_DVFSRC_VLT_REQ; + writel_relaxed(val, port->base + PCIE_MISC_CTRL_REG); + /* Assert all reset signals */ val = readl_relaxed(port->base + PCIE_RST_CTRL_REG); val |= PCIE_MAC_RSTB | PCIE_PHY_RSTB | PCIE_BRG_RSTB | PCIE_PE_RSTB; -- 2.25.1