Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp3725956pxb; Wed, 13 Oct 2021 11:38:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxvIrHE9CsUGi4H6B2fZBs8bo3G6fRo/5/ERuAyklCYkFU0qAs3qyJ8N6GdjWeMQSE1LYLn X-Received: by 2002:a17:906:a88b:: with SMTP id ha11mr1013569ejb.137.1634150289803; Wed, 13 Oct 2021 11:38:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1634150289; cv=none; d=google.com; s=arc-20160816; b=oxSxcm5oNWbX2jyrkLqmD3odXqPOqHspqiCmswrRKxk4Q/6ZS9GY3sdAqRJzGP0phr 5zon0V388zmTlJIdEgTMFUY78/g2ghmxCMBKH1/cj7Uf71fluhPRcZUXoayJ1OSJjtjn G0RfHSoOFObOFHAmLy61RU585bxeuybeg4DKkHB0E3MxyVofeWevl6mFkuawB+zcOY8+ zkTU/a8GunI4sRgzhkGFqhJNOdyfya9Lb2xHFaIXSbu5ocWu4z1dKwLWbt8ajQGhY6gn w/n7mBppPi+//j2uv8YNWu0tYqCxv7YddQxQqRuJTF9myyi+cnM/wa9+ywTlwME/64mY fBSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :message-id:subject:cc:to:from:date:dkim-signature; bh=AyeuoPGmI1txpM/8K4R/rHhndzNS34Rv66KwDbovIOQ=; b=wUk6b0JLBbnECRSz5B0TtDU42Y2yWNDuPXu5R/BwAGv48PhwobmlXy8YurBKoktbYr GfQvZkY11beUh+2fLxY6UiHt5w6I10rN+jZcG0ZfaLZ4J+0FRMCImDyOUGSB9SJ987P/ H4L+nAKxKbzKxLZvJL9y+SfMKxpJDZu/mZ6n8URuveqRzLf3x+auHiL8kTIEzvw77kai 5GJNECMCrzsL+dokPGl7jDn34oj+e4jnIJA5rVx3LUTG/J85u7IMmXhiDfKIbcr/PJ+E BV2zaI+vz84AWL/kyNXy/snJur8kTnZHH3/GYbkorQk1TdMI7RxdoNFstXc5JzmuRm0H lG5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=TZ1hgMEi; 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=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g15si353346edf.331.2021.10.13.11.37.22; Wed, 13 Oct 2021 11:38:09 -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=@kernel.org header.s=k20201202 header.b=TZ1hgMEi; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235854AbhJMShV (ORCPT + 99 others); Wed, 13 Oct 2021 14:37:21 -0400 Received: from mail.kernel.org ([198.145.29.99]:35182 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229814AbhJMShV (ORCPT ); Wed, 13 Oct 2021 14:37:21 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id D17E560F21; Wed, 13 Oct 2021 18:35:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1634150117; bh=9Otllm2GC3gVjaVzNTWWyjCLCOdkUBQMvbyes4AWr7A=; h=Date:From:To:Cc:Subject:In-Reply-To:From; b=TZ1hgMEieNxKVh5cK/xTkyTn161II9RBtSuwzvap2XAIWDC5IRQ+XIIj9OXuRjXU1 kOw8PX0y7ksY77hGOZHf4CvA4YMAYkbrw5Bm6fBs6hEJim5geLBFf0HqfiM5XGVC87 5gcaLEKynNJ9osbadNfjvDFDOJJWcxxepQY/jKygG7kBFHwdXqaxLdIPL21fmy3ew4 WEdeJ+DfeDfyGJSvznhCur9Mlnmhwcvtv8d5PF8oQ+1dW+1ljZlSJDBVQq321AXfVX DRbYBQKSXydmYylkx3ZKuEurnwWnm9bTC8Ghh2DVZkU650OWxEDcoIZlPJVKH8Wtoi M3SeiMcHbty4g== Date: Wed, 13 Oct 2021 13:35:15 -0500 From: Bjorn Helgaas To: Jianjun Wang Cc: Lorenzo Pieralisi , Rob Herring , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Bjorn Helgaas , Ryder Lee , Matthias Brugger , linux-pci@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, qizhong.cheng@mediatek.com, Ryan-JH.Yu@mediatek.com, Tzung-Bi Shih Subject: Re: [PATCH v2] PCI: mediatek-gen3: Disable DVFSRC voltage request Message-ID: <20211013183515.GA1907868@bhelgaas> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20211013075328.12273-1-jianjun.wang@mediatek.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Oct 13, 2021 at 03:53:28PM +0800, Jianjun Wang wrote: > 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. Rewrap commit log to fill 75 columns. Does "L1ss" above refer to L1.1 and L1.2? If so, please say that explicitly or say something like "L1 PM Substates" (the term used in the PCIe spec) so it's clear. This seems on the boundary of PCIe-specified things and Mediatek implementation details, so I'm not sure what "DVFSRC," "MAC," and "voltage request signal" mean. Since I don't recognize those terms, I'm guessing they are Mediatek-specific things. But if they are things specified by the PCIe spec, please use the exact names used in the spec. > 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 >