From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DA96DC433FE for ; Wed, 9 Dec 2020 14:58:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 9DC6723406 for ; Wed, 9 Dec 2020 14:58:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732059AbgLIO56 (ORCPT ); Wed, 9 Dec 2020 09:57:58 -0500 Received: from mail.kernel.org ([198.145.29.99]:55090 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387425AbgLIO5t (ORCPT ); Wed, 9 Dec 2020 09:57:49 -0500 Date: Wed, 9 Dec 2020 08:57:07 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1607525828; bh=iTwvXXnNY8aakokY+O/GwFNWyTbTvNVpehJRfYDnYu4=; h=From:To:Cc:Subject:In-Reply-To:From; b=PgResuRHgX8BL6OvxTlRKixNbfNmOOYAaTcMCAPpD9hD27OwxS7EslC/oc4dmMzTG gNE2p3xDEu+n8J97Wt8jAmzVulOVYFkh8+0F2Ut1oGplaU4UaLH3eKduV+PkklUCGY anDk/8qDx93bCRI1MjMT+Vu/YD/jxhGCCgpYkxmU8f64r5+pPDa2zUCPRV/3MMTpbZ tmDQh7fvNMDLvXluAb697neJzRoW3BAsL1n7+PqjwQUtKvU6itjziytBDRTFsVdpAi LaGz42BaL1xELQ4w5m+65L0L7anLj/yeCVR+nNy8i9liOjHkqst9m7RdvbP56FQvzJ i9Z4RIUeg40aA== From: Bjorn Helgaas To: Michael Walle Cc: lorenzo.pieralisi@arm.com, kw@linux.com, heiko@sntech.de, benh@kernel.crashing.org, shawn.lin@rock-chips.com, paulus@samba.org, thomas.petazzoni@bootlin.com, jonnyc@amazon.com, toan@os.amperecomputing.com, will@kernel.org, robh@kernel.org, f.fainelli@gmail.com, mpe@ellerman.id.au, michal.simek@xilinx.com, linux-rockchip@lists.infradead.org, bcm-kernel-feedback-list@broadcom.com, jonathan.derrick@intel.com, linux-pci@vger.kernel.org, rjui@broadcom.com, linux-rpi-kernel@lists.infradead.org, Jonathan.Cameron@huawei.com, bhelgaas@google.com, linux-arm-kernel@lists.infradead.org, sbranden@broadcom.com, wangzhou1@hisilicon.com, rrichter@marvell.com, linuxppc-dev@lists.ozlabs.org, nsaenzjulienne@suse.de, Vladimir Oltean , Alexandru Marginean Subject: Re: [PATCH v6 0/5] PCI: Unify ECAM constants in native PCI Express drivers Message-ID: <20201209145707.GA2521966@bjorn-Precision-5520> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <595028ce6b04ea589f802ff61d8710f0@walle.cc> Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org On Wed, Dec 09, 2020 at 02:08:00PM +0100, Michael Walle wrote: > [+ Vladimir and Alex] > > Am 2020-12-09 13:36, schrieb Bjorn Helgaas: > > On Tue, Dec 08, 2020 at 04:41:50PM +0100, Michael Walle wrote: > > > >On Sun, 29 Nov 2020 23:07:38 +0000, Krzysztof Wilczyński wrote: > > > >> Unify ECAM-related constants into a single set of standard constants > > > >> defining memory address shift values for the byte-level address that can > > > >> be used when accessing the PCI Express Configuration Space, and then > > > >> move native PCI Express controller drivers to use newly introduced > > > >> definitions retiring any driver-specific ones. > > > >> > > > >> The ECAM ("Enhanced Configuration Access Mechanism") is defined by the > > > >> PCI Express specification (see PCI Express Base Specification, Revision > > > >> 5.0, Version 1.0, Section 7.2.2, p. 676), thus most hardware should > > > >> implement it the same way. > > > >> > > > >> [...] > > > > > > > >Applied to pci/ecam, thanks! > > > > > > > >[1/5] PCI: Unify ECAM constants in native PCI Express drivers > > > > https://git.kernel.org/lpieralisi/pci/c/f3c07cf692 > > > > > Patch 1/5 breaks LS1028A boards: > > > > > > [..] > > > [ 1.144426] pci-host-generic 1f0000000.pcie: host bridge > > > /soc/pcie@1f0000000 ranges: > > > [ 1.152276] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f8000000..0x01f815ffff -> 0x0000000000 > > > [ 1.161161] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f8160000..0x01f81cffff -> 0x0000000000 > > > [ 1.170043] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f81d0000..0x01f81effff -> 0x0000000000 > > > [ 1.178924] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f81f0000..0x01f820ffff -> 0x0000000000 > > > [ 1.187805] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f8210000..0x01f822ffff -> 0x0000000000 > > > [ 1.196686] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f8230000..0x01f824ffff -> 0x0000000000 > > > [ 1.205562] pci-host-generic 1f0000000.pcie: MEM > > > 0x01fc000000..0x01fc3fffff -> 0x0000000000 > > > > Can you attach your DT? > That would be the following: > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28-var3-ads2.dts > > You'll find the PCI devices/bridge in: > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi > > > The fact that all these windows map to PCI > > bus address 0 looks broken. Prior to patch 1/5, do the devices below > > this bridge actually work? > > Yes, these should be the onboard network controller and ethernet > switch. Interesting. I can't see how they could work with those address mappings, but that's another question we can look at later. > > Looks like you're using the pci-host-generic driver; which of the > > .compatible strings (pci-host-cam-generic, pci-host-ecam-generic, > > marvell,armada8k-pcie-ecam, etc) are you using? (I think that's in > > the DT as well.) > > compatible = "pci-host-ecam-generic"; > -michael Can you try the following just to get started? diff --git a/drivers/pci/access.c b/drivers/pci/access.c index 46935695cfb9..569a45727bc7 100644 --- a/drivers/pci/access.c +++ b/drivers/pci/access.c @@ -79,6 +79,7 @@ int pci_generic_config_read(struct pci_bus *bus, unsigned int devfn, { void __iomem *addr; + pci_info(bus, "%s(%#x %#05x %d)\n", __func__, devfn, where, size); addr = bus->ops->map_bus(bus, devfn, where); if (!addr) { *val = ~0; @@ -101,6 +102,7 @@ int pci_generic_config_write(struct pci_bus *bus, unsigned int devfn, { void __iomem *addr; + pci_info(bus, "%s(%#x %#05x %d)\n", __func__, devfn, where, size); addr = bus->ops->map_bus(bus, devfn, where); if (!addr) return PCIBIOS_DEVICE_NOT_FOUND; diff --git a/drivers/pci/ecam.c b/drivers/pci/ecam.c index 59f91d434859..78f776e590be 100644 --- a/drivers/pci/ecam.c +++ b/drivers/pci/ecam.c @@ -33,6 +33,8 @@ struct pci_config_window *pci_ecam_create(struct device *dev, struct resource *conflict; int i, err; + dev_info(dev, "%s cfg %pR bus %pR\n", __func__, cfgres, busr); + if (busr->start > busr->end) return ERR_PTR(-EINVAL); @@ -85,6 +87,9 @@ struct pci_config_window *pci_ecam_create(struct device *dev, goto err_exit_iomap; } + dev_info(dev, "%s per_bus_mapping %d win %px\n", __func__, + per_bus_mapping, cfg->win); + if (ops->init) { err = ops->init(cfg); if (err) @@ -140,6 +145,8 @@ void __iomem *pci_ecam_map_bus(struct pci_bus *bus, unsigned int devfn, if (busn < cfg->busr.start || busn > cfg->busr.end) return NULL; + pci_info(bus, "%s(%#x %#05x): %pR\n", __func__, devfn, where, + &cfg->busr); busn -= cfg->busr.start; if (per_bus_mapping) { base = cfg->winp[busn]; @@ -147,6 +154,8 @@ void __iomem *pci_ecam_map_bus(struct pci_bus *bus, unsigned int devfn, } else base = cfg->win; + pci_info(bus, "%s base %px bus_shift %d\n", __func__, base, + cfg->ops->bus_shift); if (cfg->ops->bus_shift) { bus_offset = (busn & PCIE_ECAM_BUS_MASK) << bus_shift; devfn_offset = (devfn & PCIE_ECAM_DEVFN_MASK) << devfn_shift; From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 546A8C4361B for ; Wed, 9 Dec 2020 14:57:21 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 0BA97239E5 for ; Wed, 9 Dec 2020 14:57:20 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0BA97239E5 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Message-ID:Subject:To:From: Date:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:References:List-Owner; bh=d3o3XlHS0NLqbkWDcyOCubnu6gfXz0k6fZ9Aks/srkk=; b=dfBoysvptLcmMCoSaoZPZ6MsC 8LzgF2IkzeTFi8zc51OY4RL3GZOkCy/lyHwWJ7Mn7tuT6dZD5i6/TFdobZGvvkMx+mdoDdKO33QoO objCc7geOeBeo7DNMzG5OAHU5n7BeKJYLuRhdYzxd10IG1eMirPhsisYacnTLrCQDQwMKa6GXS9Wi w9VkCX7spkRPZGTEFm+Xvav6ZjR8twfieS26ekN/zwqMEweCotpZqnoKMxfRnaL56owkaMJrIpdNN Vt0kRyt9g1DpnO08OxbPLH4ue11BNEwf1vfCkkamE6mOC4oR0VsndBE4nxks/zlotmkQXrw7H5+Qv R6J3BhJdg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kn0u2-0008H0-CD; Wed, 09 Dec 2020 14:57:14 +0000 Received: from mail.kernel.org ([198.145.29.99]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kn0tx-0008FU-82; Wed, 09 Dec 2020 14:57:10 +0000 Date: Wed, 9 Dec 2020 08:57:07 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1607525828; bh=iTwvXXnNY8aakokY+O/GwFNWyTbTvNVpehJRfYDnYu4=; h=From:To:Cc:Subject:In-Reply-To:From; b=PgResuRHgX8BL6OvxTlRKixNbfNmOOYAaTcMCAPpD9hD27OwxS7EslC/oc4dmMzTG gNE2p3xDEu+n8J97Wt8jAmzVulOVYFkh8+0F2Ut1oGplaU4UaLH3eKduV+PkklUCGY anDk/8qDx93bCRI1MjMT+Vu/YD/jxhGCCgpYkxmU8f64r5+pPDa2zUCPRV/3MMTpbZ tmDQh7fvNMDLvXluAb697neJzRoW3BAsL1n7+PqjwQUtKvU6itjziytBDRTFsVdpAi LaGz42BaL1xELQ4w5m+65L0L7anLj/yeCVR+nNy8i9liOjHkqst9m7RdvbP56FQvzJ i9Z4RIUeg40aA== From: Bjorn Helgaas To: Michael Walle Subject: Re: [PATCH v6 0/5] PCI: Unify ECAM constants in native PCI Express drivers Message-ID: <20201209145707.GA2521966@bjorn-Precision-5520> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <595028ce6b04ea589f802ff61d8710f0@walle.cc> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201209_095709_427392_EC3B1E33 X-CRM114-Status: GOOD ( 25.86 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kw@linux.com, heiko@sntech.de, benh@kernel.crashing.org, shawn.lin@rock-chips.com, Alexandru Marginean , paulus@samba.org, thomas.petazzoni@bootlin.com, jonnyc@amazon.com, toan@os.amperecomputing.com, will@kernel.org, robh@kernel.org, lorenzo.pieralisi@arm.com, mpe@ellerman.id.au, michal.simek@xilinx.com, linux-rockchip@lists.infradead.org, bcm-kernel-feedback-list@broadcom.com, linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org, rjui@broadcom.com, f.fainelli@gmail.com, linux-rpi-kernel@lists.infradead.org, Jonathan.Cameron@huawei.com, bhelgaas@google.com, jonathan.derrick@intel.com, sbranden@broadcom.com, wangzhou1@hisilicon.com, rrichter@marvell.com, Vladimir Oltean , linuxppc-dev@lists.ozlabs.org, nsaenzjulienne@suse.de Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org T24gV2VkLCBEZWMgMDksIDIwMjAgYXQgMDI6MDg6MDBQTSArMDEwMCwgTWljaGFlbCBXYWxsZSB3 cm90ZToKPiBbKyBWbGFkaW1pciBhbmQgQWxleF0KPiAKPiBBbSAyMDIwLTEyLTA5IDEzOjM2LCBz Y2hyaWViIEJqb3JuIEhlbGdhYXM6Cj4gPiBPbiBUdWUsIERlYyAwOCwgMjAyMCBhdCAwNDo0MTo1 MFBNICswMTAwLCBNaWNoYWVsIFdhbGxlIHdyb3RlOgo+ID4gPiA+T24gU3VuLCAyOSBOb3YgMjAy MCAyMzowNzozOCArMDAwMCwgS3J6eXN6dG9mIFdpbGN6ecWEc2tpIHdyb3RlOgo+ID4gPiA+PiBV bmlmeSBFQ0FNLXJlbGF0ZWQgY29uc3RhbnRzIGludG8gYSBzaW5nbGUgc2V0IG9mIHN0YW5kYXJk IGNvbnN0YW50cwo+ID4gPiA+PiBkZWZpbmluZyBtZW1vcnkgYWRkcmVzcyBzaGlmdCB2YWx1ZXMg Zm9yIHRoZSBieXRlLWxldmVsIGFkZHJlc3MgdGhhdCBjYW4KPiA+ID4gPj4gYmUgdXNlZCB3aGVu IGFjY2Vzc2luZyB0aGUgUENJIEV4cHJlc3MgQ29uZmlndXJhdGlvbiBTcGFjZSwgYW5kIHRoZW4K PiA+ID4gPj4gbW92ZSBuYXRpdmUgUENJIEV4cHJlc3MgY29udHJvbGxlciBkcml2ZXJzIHRvIHVz ZSBuZXdseSBpbnRyb2R1Y2VkCj4gPiA+ID4+IGRlZmluaXRpb25zIHJldGlyaW5nIGFueSBkcml2 ZXItc3BlY2lmaWMgb25lcy4KPiA+ID4gPj4KPiA+ID4gPj4gVGhlIEVDQU0gKCJFbmhhbmNlZCBD b25maWd1cmF0aW9uIEFjY2VzcyBNZWNoYW5pc20iKSBpcyBkZWZpbmVkIGJ5IHRoZQo+ID4gPiA+ PiBQQ0kgRXhwcmVzcyBzcGVjaWZpY2F0aW9uIChzZWUgUENJIEV4cHJlc3MgQmFzZSBTcGVjaWZp Y2F0aW9uLCBSZXZpc2lvbgo+ID4gPiA+PiA1LjAsIFZlcnNpb24gMS4wLCBTZWN0aW9uIDcuMi4y LCBwLiA2NzYpLCB0aHVzIG1vc3QgaGFyZHdhcmUgc2hvdWxkCj4gPiA+ID4+IGltcGxlbWVudCBp dCB0aGUgc2FtZSB3YXkuCj4gPiA+ID4+Cj4gPiA+ID4+IFsuLi5dCj4gPiA+ID4KPiA+ID4gPkFw cGxpZWQgdG8gcGNpL2VjYW0sIHRoYW5rcyEKPiA+ID4gPgo+ID4gPiA+WzEvNV0gUENJOiBVbmlm eSBFQ0FNIGNvbnN0YW50cyBpbiBuYXRpdmUgUENJIEV4cHJlc3MgZHJpdmVycwo+ID4gPiA+ICAg ICAgaHR0cHM6Ly9naXQua2VybmVsLm9yZy9scGllcmFsaXNpL3BjaS9jL2YzYzA3Y2Y2OTIKPiA+ IAo+ID4gPiBQYXRjaCAxLzUgYnJlYWtzIExTMTAyOEEgYm9hcmRzOgo+ID4gPiAKPiA+ID4gWy4u XQo+ID4gPiBbICAgIDEuMTQ0NDI2XSBwY2ktaG9zdC1nZW5lcmljIDFmMDAwMDAwMC5wY2llOiBo b3N0IGJyaWRnZQo+ID4gPiAvc29jL3BjaWVAMWYwMDAwMDAwIHJhbmdlczoKPiA+ID4gWyAgICAx LjE1MjI3Nl0gcGNpLWhvc3QtZ2VuZXJpYyAxZjAwMDAwMDAucGNpZTogICAgICBNRU0KPiA+ID4g MHgwMWY4MDAwMDAwLi4weDAxZjgxNWZmZmYgLT4gMHgwMDAwMDAwMDAwCj4gPiA+IFsgICAgMS4x NjExNjFdIHBjaS1ob3N0LWdlbmVyaWMgMWYwMDAwMDAwLnBjaWU6ICAgICAgTUVNCj4gPiA+IDB4 MDFmODE2MDAwMC4uMHgwMWY4MWNmZmZmIC0+IDB4MDAwMDAwMDAwMAo+ID4gPiBbICAgIDEuMTcw MDQzXSBwY2ktaG9zdC1nZW5lcmljIDFmMDAwMDAwMC5wY2llOiAgICAgIE1FTQo+ID4gPiAweDAx ZjgxZDAwMDAuLjB4MDFmODFlZmZmZiAtPiAweDAwMDAwMDAwMDAKPiA+ID4gWyAgICAxLjE3ODky NF0gcGNpLWhvc3QtZ2VuZXJpYyAxZjAwMDAwMDAucGNpZTogICAgICBNRU0KPiA+ID4gMHgwMWY4 MWYwMDAwLi4weDAxZjgyMGZmZmYgLT4gMHgwMDAwMDAwMDAwCj4gPiA+IFsgICAgMS4xODc4MDVd IHBjaS1ob3N0LWdlbmVyaWMgMWYwMDAwMDAwLnBjaWU6ICAgICAgTUVNCj4gPiA+IDB4MDFmODIx MDAwMC4uMHgwMWY4MjJmZmZmIC0+IDB4MDAwMDAwMDAwMAo+ID4gPiBbICAgIDEuMTk2Njg2XSBw Y2ktaG9zdC1nZW5lcmljIDFmMDAwMDAwMC5wY2llOiAgICAgIE1FTQo+ID4gPiAweDAxZjgyMzAw MDAuLjB4MDFmODI0ZmZmZiAtPiAweDAwMDAwMDAwMDAKPiA+ID4gWyAgICAxLjIwNTU2Ml0gcGNp LWhvc3QtZ2VuZXJpYyAxZjAwMDAwMDAucGNpZTogICAgICBNRU0KPiA+ID4gMHgwMWZjMDAwMDAw Li4weDAxZmMzZmZmZmYgLT4gMHgwMDAwMDAwMDAwCj4gPiAKPiA+IENhbiB5b3UgYXR0YWNoIHlv dXIgRFQ/Cj4gVGhhdCB3b3VsZCBiZSB0aGUgZm9sbG93aW5nOgo+IGh0dHBzOi8vZ2l0Lmtlcm5l bC5vcmcvcHViL3NjbS9saW51eC9rZXJuZWwvZ2l0L3RvcnZhbGRzL2xpbnV4LmdpdC90cmVlL2Fy Y2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL2ZzbC1sczEwMjhhLWtvbnRyb24tc2wyOC12YXIz LWFkczIuZHRzCj4gCj4gWW91J2xsIGZpbmQgdGhlIFBDSSBkZXZpY2VzL2JyaWRnZSBpbjoKPiBo dHRwczovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2VybmVsL2dpdC90b3J2YWxkcy9s aW51eC5naXQvdHJlZS9hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9mc2wtbHMxMDI4YS5k dHNpCj4gCj4gPiBUaGUgZmFjdCB0aGF0IGFsbCB0aGVzZSB3aW5kb3dzIG1hcCB0byBQQ0kKPiA+ IGJ1cyBhZGRyZXNzIDAgbG9va3MgYnJva2VuLiAgUHJpb3IgdG8gcGF0Y2ggMS81LCBkbyB0aGUg ZGV2aWNlcyBiZWxvdwo+ID4gdGhpcyBicmlkZ2UgYWN0dWFsbHkgd29yaz8KPiAKPiBZZXMsIHRo ZXNlIHNob3VsZCBiZSB0aGUgb25ib2FyZCBuZXR3b3JrIGNvbnRyb2xsZXIgYW5kIGV0aGVybmV0 Cj4gc3dpdGNoLgoKSW50ZXJlc3RpbmcuICBJIGNhbid0IHNlZSBob3cgdGhleSBjb3VsZCB3b3Jr IHdpdGggdGhvc2UgYWRkcmVzcwptYXBwaW5ncywgYnV0IHRoYXQncyBhbm90aGVyIHF1ZXN0aW9u IHdlIGNhbiBsb29rIGF0IGxhdGVyLgoKPiA+IExvb2tzIGxpa2UgeW91J3JlIHVzaW5nIHRoZSBw Y2ktaG9zdC1nZW5lcmljIGRyaXZlcjsgd2hpY2ggb2YgdGhlCj4gPiAuY29tcGF0aWJsZSBzdHJp bmdzIChwY2ktaG9zdC1jYW0tZ2VuZXJpYywgcGNpLWhvc3QtZWNhbS1nZW5lcmljLAo+ID4gbWFy dmVsbCxhcm1hZGE4ay1wY2llLWVjYW0sIGV0YykgYXJlIHlvdSB1c2luZz8gIChJIHRoaW5rIHRo YXQncyBpbgo+ID4gdGhlIERUIGFzIHdlbGwuKQo+IAo+IGNvbXBhdGlibGUgPSAicGNpLWhvc3Qt ZWNhbS1nZW5lcmljIjsKPiAtbWljaGFlbAoKQ2FuIHlvdSB0cnkgdGhlIGZvbGxvd2luZyBqdXN0 IHRvIGdldCBzdGFydGVkPwoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGNpL2FjY2Vzcy5jIGIvZHJp dmVycy9wY2kvYWNjZXNzLmMKaW5kZXggNDY5MzU2OTVjZmI5Li41NjlhNDU3MjdiYzcgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvcGNpL2FjY2Vzcy5jCisrKyBiL2RyaXZlcnMvcGNpL2FjY2Vzcy5jCkBA IC03OSw2ICs3OSw3IEBAIGludCBwY2lfZ2VuZXJpY19jb25maWdfcmVhZChzdHJ1Y3QgcGNpX2J1 cyAqYnVzLCB1bnNpZ25lZCBpbnQgZGV2Zm4sCiB7CiAJdm9pZCBfX2lvbWVtICphZGRyOwogCisJ cGNpX2luZm8oYnVzLCAiJXMoJSN4ICUjMDV4ICVkKVxuIiwgX19mdW5jX18sIGRldmZuLCB3aGVy ZSwgc2l6ZSk7CiAJYWRkciA9IGJ1cy0+b3BzLT5tYXBfYnVzKGJ1cywgZGV2Zm4sIHdoZXJlKTsK IAlpZiAoIWFkZHIpIHsKIAkJKnZhbCA9IH4wOwpAQCAtMTAxLDYgKzEwMiw3IEBAIGludCBwY2lf Z2VuZXJpY19jb25maWdfd3JpdGUoc3RydWN0IHBjaV9idXMgKmJ1cywgdW5zaWduZWQgaW50IGRl dmZuLAogewogCXZvaWQgX19pb21lbSAqYWRkcjsKIAorCXBjaV9pbmZvKGJ1cywgIiVzKCUjeCAl IzA1eCAlZClcbiIsIF9fZnVuY19fLCBkZXZmbiwgd2hlcmUsIHNpemUpOwogCWFkZHIgPSBidXMt Pm9wcy0+bWFwX2J1cyhidXMsIGRldmZuLCB3aGVyZSk7CiAJaWYgKCFhZGRyKQogCQlyZXR1cm4g UENJQklPU19ERVZJQ0VfTk9UX0ZPVU5EOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9wY2kvZWNhbS5j IGIvZHJpdmVycy9wY2kvZWNhbS5jCmluZGV4IDU5ZjkxZDQzNDg1OS4uNzhmNzc2ZTU5MGJlIDEw MDY0NAotLS0gYS9kcml2ZXJzL3BjaS9lY2FtLmMKKysrIGIvZHJpdmVycy9wY2kvZWNhbS5jCkBA IC0zMyw2ICszMyw4IEBAIHN0cnVjdCBwY2lfY29uZmlnX3dpbmRvdyAqcGNpX2VjYW1fY3JlYXRl KHN0cnVjdCBkZXZpY2UgKmRldiwKIAlzdHJ1Y3QgcmVzb3VyY2UgKmNvbmZsaWN0OwogCWludCBp LCBlcnI7CiAKKwlkZXZfaW5mbyhkZXYsICIlcyBjZmcgJXBSIGJ1cyAlcFJcbiIsIF9fZnVuY19f LCBjZmdyZXMsIGJ1c3IpOworCiAJaWYgKGJ1c3ItPnN0YXJ0ID4gYnVzci0+ZW5kKQogCQlyZXR1 cm4gRVJSX1BUUigtRUlOVkFMKTsKIApAQCAtODUsNiArODcsOSBAQCBzdHJ1Y3QgcGNpX2NvbmZp Z193aW5kb3cgKnBjaV9lY2FtX2NyZWF0ZShzdHJ1Y3QgZGV2aWNlICpkZXYsCiAJCQlnb3RvIGVy cl9leGl0X2lvbWFwOwogCX0KIAorCWRldl9pbmZvKGRldiwgIiVzIHBlcl9idXNfbWFwcGluZyAl ZCB3aW4gJXB4XG4iLCBfX2Z1bmNfXywKKwkJIHBlcl9idXNfbWFwcGluZywgY2ZnLT53aW4pOwor CiAJaWYgKG9wcy0+aW5pdCkgewogCQllcnIgPSBvcHMtPmluaXQoY2ZnKTsKIAkJaWYgKGVycikK QEAgLTE0MCw2ICsxNDUsOCBAQCB2b2lkIF9faW9tZW0gKnBjaV9lY2FtX21hcF9idXMoc3RydWN0 IHBjaV9idXMgKmJ1cywgdW5zaWduZWQgaW50IGRldmZuLAogCWlmIChidXNuIDwgY2ZnLT5idXNy LnN0YXJ0IHx8IGJ1c24gPiBjZmctPmJ1c3IuZW5kKQogCQlyZXR1cm4gTlVMTDsKIAorCXBjaV9p bmZvKGJ1cywgIiVzKCUjeCAlIzA1eCk6ICVwUlxuIiwgX19mdW5jX18sIGRldmZuLCB3aGVyZSwK KwkJICZjZmctPmJ1c3IpOwogCWJ1c24gLT0gY2ZnLT5idXNyLnN0YXJ0OwogCWlmIChwZXJfYnVz X21hcHBpbmcpIHsKIAkJYmFzZSA9IGNmZy0+d2lucFtidXNuXTsKQEAgLTE0Nyw2ICsxNTQsOCBA QCB2b2lkIF9faW9tZW0gKnBjaV9lY2FtX21hcF9idXMoc3RydWN0IHBjaV9idXMgKmJ1cywgdW5z aWduZWQgaW50IGRldmZuLAogCX0gZWxzZQogCQliYXNlID0gY2ZnLT53aW47CiAKKwlwY2lfaW5m byhidXMsICIlcyBiYXNlICVweCBidXNfc2hpZnQgJWRcbiIsIF9fZnVuY19fLCBiYXNlLAorCQkg Y2ZnLT5vcHMtPmJ1c19zaGlmdCk7CiAJaWYgKGNmZy0+b3BzLT5idXNfc2hpZnQpIHsKIAkJYnVz X29mZnNldCA9IChidXNuICYgUENJRV9FQ0FNX0JVU19NQVNLKSA8PCBidXNfc2hpZnQ7CiAJCWRl dmZuX29mZnNldCA9IChkZXZmbiAmIFBDSUVfRUNBTV9ERVZGTl9NQVNLKSA8PCBkZXZmbl9zaGlm dDsKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4 LXJvY2tjaGlwIG1haWxpbmcgbGlzdApMaW51eC1yb2NrY2hpcEBsaXN0cy5pbmZyYWRlYWQub3Jn Cmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcm9ja2No aXAK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,INCLUDES_PATCH,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2DB97C4361B for ; Wed, 9 Dec 2020 14:59:34 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6925723A5A for ; Wed, 9 Dec 2020 14:59:33 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6925723A5A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from bilbo.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 4CrgDz0wKrzDqtG for ; Thu, 10 Dec 2020 01:59:31 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org (client-ip=198.145.29.99; helo=mail.kernel.org; envelope-from=helgaas@kernel.org; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=pass (p=none dis=none) header.from=kernel.org Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=PgResuRH; dkim-atps=neutral Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4CrgBH2MsXzDqDK for ; Thu, 10 Dec 2020 01:57:11 +1100 (AEDT) Date: Wed, 9 Dec 2020 08:57:07 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1607525828; bh=iTwvXXnNY8aakokY+O/GwFNWyTbTvNVpehJRfYDnYu4=; h=From:To:Cc:Subject:In-Reply-To:From; b=PgResuRHgX8BL6OvxTlRKixNbfNmOOYAaTcMCAPpD9hD27OwxS7EslC/oc4dmMzTG gNE2p3xDEu+n8J97Wt8jAmzVulOVYFkh8+0F2Ut1oGplaU4UaLH3eKduV+PkklUCGY anDk/8qDx93bCRI1MjMT+Vu/YD/jxhGCCgpYkxmU8f64r5+pPDa2zUCPRV/3MMTpbZ tmDQh7fvNMDLvXluAb697neJzRoW3BAsL1n7+PqjwQUtKvU6itjziytBDRTFsVdpAi LaGz42BaL1xELQ4w5m+65L0L7anLj/yeCVR+nNy8i9liOjHkqst9m7RdvbP56FQvzJ i9Z4RIUeg40aA== From: Bjorn Helgaas To: Michael Walle Subject: Re: [PATCH v6 0/5] PCI: Unify ECAM constants in native PCI Express drivers Message-ID: <20201209145707.GA2521966@bjorn-Precision-5520> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <595028ce6b04ea589f802ff61d8710f0@walle.cc> X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kw@linux.com, heiko@sntech.de, shawn.lin@rock-chips.com, Alexandru Marginean , paulus@samba.org, thomas.petazzoni@bootlin.com, jonnyc@amazon.com, toan@os.amperecomputing.com, will@kernel.org, robh@kernel.org, lorenzo.pieralisi@arm.com, michal.simek@xilinx.com, linux-rockchip@lists.infradead.org, bcm-kernel-feedback-list@broadcom.com, linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org, rjui@broadcom.com, f.fainelli@gmail.com, linux-rpi-kernel@lists.infradead.org, Jonathan.Cameron@huawei.com, bhelgaas@google.com, jonathan.derrick@intel.com, sbranden@broadcom.com, wangzhou1@hisilicon.com, rrichter@marvell.com, Vladimir Oltean , linuxppc-dev@lists.ozlabs.org, nsaenzjulienne@suse.de Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Wed, Dec 09, 2020 at 02:08:00PM +0100, Michael Walle wrote: > [+ Vladimir and Alex] > > Am 2020-12-09 13:36, schrieb Bjorn Helgaas: > > On Tue, Dec 08, 2020 at 04:41:50PM +0100, Michael Walle wrote: > > > >On Sun, 29 Nov 2020 23:07:38 +0000, Krzysztof Wilczyński wrote: > > > >> Unify ECAM-related constants into a single set of standard constants > > > >> defining memory address shift values for the byte-level address that can > > > >> be used when accessing the PCI Express Configuration Space, and then > > > >> move native PCI Express controller drivers to use newly introduced > > > >> definitions retiring any driver-specific ones. > > > >> > > > >> The ECAM ("Enhanced Configuration Access Mechanism") is defined by the > > > >> PCI Express specification (see PCI Express Base Specification, Revision > > > >> 5.0, Version 1.0, Section 7.2.2, p. 676), thus most hardware should > > > >> implement it the same way. > > > >> > > > >> [...] > > > > > > > >Applied to pci/ecam, thanks! > > > > > > > >[1/5] PCI: Unify ECAM constants in native PCI Express drivers > > > > https://git.kernel.org/lpieralisi/pci/c/f3c07cf692 > > > > > Patch 1/5 breaks LS1028A boards: > > > > > > [..] > > > [ 1.144426] pci-host-generic 1f0000000.pcie: host bridge > > > /soc/pcie@1f0000000 ranges: > > > [ 1.152276] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f8000000..0x01f815ffff -> 0x0000000000 > > > [ 1.161161] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f8160000..0x01f81cffff -> 0x0000000000 > > > [ 1.170043] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f81d0000..0x01f81effff -> 0x0000000000 > > > [ 1.178924] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f81f0000..0x01f820ffff -> 0x0000000000 > > > [ 1.187805] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f8210000..0x01f822ffff -> 0x0000000000 > > > [ 1.196686] pci-host-generic 1f0000000.pcie: MEM > > > 0x01f8230000..0x01f824ffff -> 0x0000000000 > > > [ 1.205562] pci-host-generic 1f0000000.pcie: MEM > > > 0x01fc000000..0x01fc3fffff -> 0x0000000000 > > > > Can you attach your DT? > That would be the following: > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28-var3-ads2.dts > > You'll find the PCI devices/bridge in: > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi > > > The fact that all these windows map to PCI > > bus address 0 looks broken. Prior to patch 1/5, do the devices below > > this bridge actually work? > > Yes, these should be the onboard network controller and ethernet > switch. Interesting. I can't see how they could work with those address mappings, but that's another question we can look at later. > > Looks like you're using the pci-host-generic driver; which of the > > .compatible strings (pci-host-cam-generic, pci-host-ecam-generic, > > marvell,armada8k-pcie-ecam, etc) are you using? (I think that's in > > the DT as well.) > > compatible = "pci-host-ecam-generic"; > -michael Can you try the following just to get started? diff --git a/drivers/pci/access.c b/drivers/pci/access.c index 46935695cfb9..569a45727bc7 100644 --- a/drivers/pci/access.c +++ b/drivers/pci/access.c @@ -79,6 +79,7 @@ int pci_generic_config_read(struct pci_bus *bus, unsigned int devfn, { void __iomem *addr; + pci_info(bus, "%s(%#x %#05x %d)\n", __func__, devfn, where, size); addr = bus->ops->map_bus(bus, devfn, where); if (!addr) { *val = ~0; @@ -101,6 +102,7 @@ int pci_generic_config_write(struct pci_bus *bus, unsigned int devfn, { void __iomem *addr; + pci_info(bus, "%s(%#x %#05x %d)\n", __func__, devfn, where, size); addr = bus->ops->map_bus(bus, devfn, where); if (!addr) return PCIBIOS_DEVICE_NOT_FOUND; diff --git a/drivers/pci/ecam.c b/drivers/pci/ecam.c index 59f91d434859..78f776e590be 100644 --- a/drivers/pci/ecam.c +++ b/drivers/pci/ecam.c @@ -33,6 +33,8 @@ struct pci_config_window *pci_ecam_create(struct device *dev, struct resource *conflict; int i, err; + dev_info(dev, "%s cfg %pR bus %pR\n", __func__, cfgres, busr); + if (busr->start > busr->end) return ERR_PTR(-EINVAL); @@ -85,6 +87,9 @@ struct pci_config_window *pci_ecam_create(struct device *dev, goto err_exit_iomap; } + dev_info(dev, "%s per_bus_mapping %d win %px\n", __func__, + per_bus_mapping, cfg->win); + if (ops->init) { err = ops->init(cfg); if (err) @@ -140,6 +145,8 @@ void __iomem *pci_ecam_map_bus(struct pci_bus *bus, unsigned int devfn, if (busn < cfg->busr.start || busn > cfg->busr.end) return NULL; + pci_info(bus, "%s(%#x %#05x): %pR\n", __func__, devfn, where, + &cfg->busr); busn -= cfg->busr.start; if (per_bus_mapping) { base = cfg->winp[busn]; @@ -147,6 +154,8 @@ void __iomem *pci_ecam_map_bus(struct pci_bus *bus, unsigned int devfn, } else base = cfg->win; + pci_info(bus, "%s base %px bus_shift %d\n", __func__, base, + cfg->ops->bus_shift); if (cfg->ops->bus_shift) { bus_offset = (busn & PCIE_ECAM_BUS_MASK) << bus_shift; devfn_offset = (devfn & PCIE_ECAM_DEVFN_MASK) << devfn_shift; From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 20F50C4167B for ; Wed, 9 Dec 2020 14:58:26 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D276D23406 for ; Wed, 9 Dec 2020 14:58:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D276D23406 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Message-ID:Subject:To:From: Date:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:References:List-Owner; bh=vB2nGPCHzSxtEI4yzmfBP6fysdABUePKZJqUdm4EAdY=; b=J0JPJM1gNyMFXwNH4TRTAHGrK pKjCcRWRwgVo0CHfxa7/OWfcqam2QV8sbX68pmWcegOSwr2fbeiAvHGgoM6z/t1QPUjTvCJ1CslwC KUYQmqvCe6+aTtUuD7Q/Hqx7HSJL1py/ZsJ+mGiUqupndCtpWjD0mZjcq8P+DU9aH5m7iEYPG4dJc 6Avs6CAONks5NY5H4qyazkwyC8Nwy3PwdDDc5kOuZgMrcwSs3qhn7PJ8wbav/fsiQoerq7704aSoR 0QjJDmp9LBGBUGt29lh02x6XLLmd1qDwR6Ayzh7VTNfj1dZ/J4lDkgG8xjdH6dFVO1ikRd8+T1uK/ f+enZ07wQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kn0tz-0008GN-Sj; Wed, 09 Dec 2020 14:57:11 +0000 Received: from mail.kernel.org ([198.145.29.99]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kn0tx-0008FU-82; Wed, 09 Dec 2020 14:57:10 +0000 Date: Wed, 9 Dec 2020 08:57:07 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1607525828; bh=iTwvXXnNY8aakokY+O/GwFNWyTbTvNVpehJRfYDnYu4=; h=From:To:Cc:Subject:In-Reply-To:From; b=PgResuRHgX8BL6OvxTlRKixNbfNmOOYAaTcMCAPpD9hD27OwxS7EslC/oc4dmMzTG gNE2p3xDEu+n8J97Wt8jAmzVulOVYFkh8+0F2Ut1oGplaU4UaLH3eKduV+PkklUCGY anDk/8qDx93bCRI1MjMT+Vu/YD/jxhGCCgpYkxmU8f64r5+pPDa2zUCPRV/3MMTpbZ tmDQh7fvNMDLvXluAb697neJzRoW3BAsL1n7+PqjwQUtKvU6itjziytBDRTFsVdpAi LaGz42BaL1xELQ4w5m+65L0L7anLj/yeCVR+nNy8i9liOjHkqst9m7RdvbP56FQvzJ i9Z4RIUeg40aA== From: Bjorn Helgaas To: Michael Walle Subject: Re: [PATCH v6 0/5] PCI: Unify ECAM constants in native PCI Express drivers Message-ID: <20201209145707.GA2521966@bjorn-Precision-5520> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <595028ce6b04ea589f802ff61d8710f0@walle.cc> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201209_095709_427392_EC3B1E33 X-CRM114-Status: GOOD ( 25.86 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kw@linux.com, heiko@sntech.de, benh@kernel.crashing.org, shawn.lin@rock-chips.com, Alexandru Marginean , paulus@samba.org, thomas.petazzoni@bootlin.com, jonnyc@amazon.com, toan@os.amperecomputing.com, will@kernel.org, robh@kernel.org, lorenzo.pieralisi@arm.com, mpe@ellerman.id.au, michal.simek@xilinx.com, linux-rockchip@lists.infradead.org, bcm-kernel-feedback-list@broadcom.com, linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org, rjui@broadcom.com, f.fainelli@gmail.com, linux-rpi-kernel@lists.infradead.org, Jonathan.Cameron@huawei.com, bhelgaas@google.com, jonathan.derrick@intel.com, sbranden@broadcom.com, wangzhou1@hisilicon.com, rrichter@marvell.com, Vladimir Oltean , linuxppc-dev@lists.ozlabs.org, nsaenzjulienne@suse.de Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gV2VkLCBEZWMgMDksIDIwMjAgYXQgMDI6MDg6MDBQTSArMDEwMCwgTWljaGFlbCBXYWxsZSB3 cm90ZToKPiBbKyBWbGFkaW1pciBhbmQgQWxleF0KPiAKPiBBbSAyMDIwLTEyLTA5IDEzOjM2LCBz Y2hyaWViIEJqb3JuIEhlbGdhYXM6Cj4gPiBPbiBUdWUsIERlYyAwOCwgMjAyMCBhdCAwNDo0MTo1 MFBNICswMTAwLCBNaWNoYWVsIFdhbGxlIHdyb3RlOgo+ID4gPiA+T24gU3VuLCAyOSBOb3YgMjAy MCAyMzowNzozOCArMDAwMCwgS3J6eXN6dG9mIFdpbGN6ecWEc2tpIHdyb3RlOgo+ID4gPiA+PiBV bmlmeSBFQ0FNLXJlbGF0ZWQgY29uc3RhbnRzIGludG8gYSBzaW5nbGUgc2V0IG9mIHN0YW5kYXJk IGNvbnN0YW50cwo+ID4gPiA+PiBkZWZpbmluZyBtZW1vcnkgYWRkcmVzcyBzaGlmdCB2YWx1ZXMg Zm9yIHRoZSBieXRlLWxldmVsIGFkZHJlc3MgdGhhdCBjYW4KPiA+ID4gPj4gYmUgdXNlZCB3aGVu IGFjY2Vzc2luZyB0aGUgUENJIEV4cHJlc3MgQ29uZmlndXJhdGlvbiBTcGFjZSwgYW5kIHRoZW4K PiA+ID4gPj4gbW92ZSBuYXRpdmUgUENJIEV4cHJlc3MgY29udHJvbGxlciBkcml2ZXJzIHRvIHVz ZSBuZXdseSBpbnRyb2R1Y2VkCj4gPiA+ID4+IGRlZmluaXRpb25zIHJldGlyaW5nIGFueSBkcml2 ZXItc3BlY2lmaWMgb25lcy4KPiA+ID4gPj4KPiA+ID4gPj4gVGhlIEVDQU0gKCJFbmhhbmNlZCBD b25maWd1cmF0aW9uIEFjY2VzcyBNZWNoYW5pc20iKSBpcyBkZWZpbmVkIGJ5IHRoZQo+ID4gPiA+ PiBQQ0kgRXhwcmVzcyBzcGVjaWZpY2F0aW9uIChzZWUgUENJIEV4cHJlc3MgQmFzZSBTcGVjaWZp Y2F0aW9uLCBSZXZpc2lvbgo+ID4gPiA+PiA1LjAsIFZlcnNpb24gMS4wLCBTZWN0aW9uIDcuMi4y LCBwLiA2NzYpLCB0aHVzIG1vc3QgaGFyZHdhcmUgc2hvdWxkCj4gPiA+ID4+IGltcGxlbWVudCBp dCB0aGUgc2FtZSB3YXkuCj4gPiA+ID4+Cj4gPiA+ID4+IFsuLi5dCj4gPiA+ID4KPiA+ID4gPkFw cGxpZWQgdG8gcGNpL2VjYW0sIHRoYW5rcyEKPiA+ID4gPgo+ID4gPiA+WzEvNV0gUENJOiBVbmlm eSBFQ0FNIGNvbnN0YW50cyBpbiBuYXRpdmUgUENJIEV4cHJlc3MgZHJpdmVycwo+ID4gPiA+ICAg ICAgaHR0cHM6Ly9naXQua2VybmVsLm9yZy9scGllcmFsaXNpL3BjaS9jL2YzYzA3Y2Y2OTIKPiA+ IAo+ID4gPiBQYXRjaCAxLzUgYnJlYWtzIExTMTAyOEEgYm9hcmRzOgo+ID4gPiAKPiA+ID4gWy4u XQo+ID4gPiBbICAgIDEuMTQ0NDI2XSBwY2ktaG9zdC1nZW5lcmljIDFmMDAwMDAwMC5wY2llOiBo b3N0IGJyaWRnZQo+ID4gPiAvc29jL3BjaWVAMWYwMDAwMDAwIHJhbmdlczoKPiA+ID4gWyAgICAx LjE1MjI3Nl0gcGNpLWhvc3QtZ2VuZXJpYyAxZjAwMDAwMDAucGNpZTogICAgICBNRU0KPiA+ID4g MHgwMWY4MDAwMDAwLi4weDAxZjgxNWZmZmYgLT4gMHgwMDAwMDAwMDAwCj4gPiA+IFsgICAgMS4x NjExNjFdIHBjaS1ob3N0LWdlbmVyaWMgMWYwMDAwMDAwLnBjaWU6ICAgICAgTUVNCj4gPiA+IDB4 MDFmODE2MDAwMC4uMHgwMWY4MWNmZmZmIC0+IDB4MDAwMDAwMDAwMAo+ID4gPiBbICAgIDEuMTcw MDQzXSBwY2ktaG9zdC1nZW5lcmljIDFmMDAwMDAwMC5wY2llOiAgICAgIE1FTQo+ID4gPiAweDAx ZjgxZDAwMDAuLjB4MDFmODFlZmZmZiAtPiAweDAwMDAwMDAwMDAKPiA+ID4gWyAgICAxLjE3ODky NF0gcGNpLWhvc3QtZ2VuZXJpYyAxZjAwMDAwMDAucGNpZTogICAgICBNRU0KPiA+ID4gMHgwMWY4 MWYwMDAwLi4weDAxZjgyMGZmZmYgLT4gMHgwMDAwMDAwMDAwCj4gPiA+IFsgICAgMS4xODc4MDVd IHBjaS1ob3N0LWdlbmVyaWMgMWYwMDAwMDAwLnBjaWU6ICAgICAgTUVNCj4gPiA+IDB4MDFmODIx MDAwMC4uMHgwMWY4MjJmZmZmIC0+IDB4MDAwMDAwMDAwMAo+ID4gPiBbICAgIDEuMTk2Njg2XSBw Y2ktaG9zdC1nZW5lcmljIDFmMDAwMDAwMC5wY2llOiAgICAgIE1FTQo+ID4gPiAweDAxZjgyMzAw MDAuLjB4MDFmODI0ZmZmZiAtPiAweDAwMDAwMDAwMDAKPiA+ID4gWyAgICAxLjIwNTU2Ml0gcGNp LWhvc3QtZ2VuZXJpYyAxZjAwMDAwMDAucGNpZTogICAgICBNRU0KPiA+ID4gMHgwMWZjMDAwMDAw Li4weDAxZmMzZmZmZmYgLT4gMHgwMDAwMDAwMDAwCj4gPiAKPiA+IENhbiB5b3UgYXR0YWNoIHlv dXIgRFQ/Cj4gVGhhdCB3b3VsZCBiZSB0aGUgZm9sbG93aW5nOgo+IGh0dHBzOi8vZ2l0Lmtlcm5l bC5vcmcvcHViL3NjbS9saW51eC9rZXJuZWwvZ2l0L3RvcnZhbGRzL2xpbnV4LmdpdC90cmVlL2Fy Y2gvYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxlL2ZzbC1sczEwMjhhLWtvbnRyb24tc2wyOC12YXIz LWFkczIuZHRzCj4gCj4gWW91J2xsIGZpbmQgdGhlIFBDSSBkZXZpY2VzL2JyaWRnZSBpbjoKPiBo dHRwczovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2VybmVsL2dpdC90b3J2YWxkcy9s aW51eC5naXQvdHJlZS9hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9mc2wtbHMxMDI4YS5k dHNpCj4gCj4gPiBUaGUgZmFjdCB0aGF0IGFsbCB0aGVzZSB3aW5kb3dzIG1hcCB0byBQQ0kKPiA+ IGJ1cyBhZGRyZXNzIDAgbG9va3MgYnJva2VuLiAgUHJpb3IgdG8gcGF0Y2ggMS81LCBkbyB0aGUg ZGV2aWNlcyBiZWxvdwo+ID4gdGhpcyBicmlkZ2UgYWN0dWFsbHkgd29yaz8KPiAKPiBZZXMsIHRo ZXNlIHNob3VsZCBiZSB0aGUgb25ib2FyZCBuZXR3b3JrIGNvbnRyb2xsZXIgYW5kIGV0aGVybmV0 Cj4gc3dpdGNoLgoKSW50ZXJlc3RpbmcuICBJIGNhbid0IHNlZSBob3cgdGhleSBjb3VsZCB3b3Jr IHdpdGggdGhvc2UgYWRkcmVzcwptYXBwaW5ncywgYnV0IHRoYXQncyBhbm90aGVyIHF1ZXN0aW9u IHdlIGNhbiBsb29rIGF0IGxhdGVyLgoKPiA+IExvb2tzIGxpa2UgeW91J3JlIHVzaW5nIHRoZSBw Y2ktaG9zdC1nZW5lcmljIGRyaXZlcjsgd2hpY2ggb2YgdGhlCj4gPiAuY29tcGF0aWJsZSBzdHJp bmdzIChwY2ktaG9zdC1jYW0tZ2VuZXJpYywgcGNpLWhvc3QtZWNhbS1nZW5lcmljLAo+ID4gbWFy dmVsbCxhcm1hZGE4ay1wY2llLWVjYW0sIGV0YykgYXJlIHlvdSB1c2luZz8gIChJIHRoaW5rIHRo YXQncyBpbgo+ID4gdGhlIERUIGFzIHdlbGwuKQo+IAo+IGNvbXBhdGlibGUgPSAicGNpLWhvc3Qt ZWNhbS1nZW5lcmljIjsKPiAtbWljaGFlbAoKQ2FuIHlvdSB0cnkgdGhlIGZvbGxvd2luZyBqdXN0 IHRvIGdldCBzdGFydGVkPwoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGNpL2FjY2Vzcy5jIGIvZHJp dmVycy9wY2kvYWNjZXNzLmMKaW5kZXggNDY5MzU2OTVjZmI5Li41NjlhNDU3MjdiYzcgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvcGNpL2FjY2Vzcy5jCisrKyBiL2RyaXZlcnMvcGNpL2FjY2Vzcy5jCkBA IC03OSw2ICs3OSw3IEBAIGludCBwY2lfZ2VuZXJpY19jb25maWdfcmVhZChzdHJ1Y3QgcGNpX2J1 cyAqYnVzLCB1bnNpZ25lZCBpbnQgZGV2Zm4sCiB7CiAJdm9pZCBfX2lvbWVtICphZGRyOwogCisJ cGNpX2luZm8oYnVzLCAiJXMoJSN4ICUjMDV4ICVkKVxuIiwgX19mdW5jX18sIGRldmZuLCB3aGVy ZSwgc2l6ZSk7CiAJYWRkciA9IGJ1cy0+b3BzLT5tYXBfYnVzKGJ1cywgZGV2Zm4sIHdoZXJlKTsK IAlpZiAoIWFkZHIpIHsKIAkJKnZhbCA9IH4wOwpAQCAtMTAxLDYgKzEwMiw3IEBAIGludCBwY2lf Z2VuZXJpY19jb25maWdfd3JpdGUoc3RydWN0IHBjaV9idXMgKmJ1cywgdW5zaWduZWQgaW50IGRl dmZuLAogewogCXZvaWQgX19pb21lbSAqYWRkcjsKIAorCXBjaV9pbmZvKGJ1cywgIiVzKCUjeCAl IzA1eCAlZClcbiIsIF9fZnVuY19fLCBkZXZmbiwgd2hlcmUsIHNpemUpOwogCWFkZHIgPSBidXMt Pm9wcy0+bWFwX2J1cyhidXMsIGRldmZuLCB3aGVyZSk7CiAJaWYgKCFhZGRyKQogCQlyZXR1cm4g UENJQklPU19ERVZJQ0VfTk9UX0ZPVU5EOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9wY2kvZWNhbS5j IGIvZHJpdmVycy9wY2kvZWNhbS5jCmluZGV4IDU5ZjkxZDQzNDg1OS4uNzhmNzc2ZTU5MGJlIDEw MDY0NAotLS0gYS9kcml2ZXJzL3BjaS9lY2FtLmMKKysrIGIvZHJpdmVycy9wY2kvZWNhbS5jCkBA IC0zMyw2ICszMyw4IEBAIHN0cnVjdCBwY2lfY29uZmlnX3dpbmRvdyAqcGNpX2VjYW1fY3JlYXRl KHN0cnVjdCBkZXZpY2UgKmRldiwKIAlzdHJ1Y3QgcmVzb3VyY2UgKmNvbmZsaWN0OwogCWludCBp LCBlcnI7CiAKKwlkZXZfaW5mbyhkZXYsICIlcyBjZmcgJXBSIGJ1cyAlcFJcbiIsIF9fZnVuY19f LCBjZmdyZXMsIGJ1c3IpOworCiAJaWYgKGJ1c3ItPnN0YXJ0ID4gYnVzci0+ZW5kKQogCQlyZXR1 cm4gRVJSX1BUUigtRUlOVkFMKTsKIApAQCAtODUsNiArODcsOSBAQCBzdHJ1Y3QgcGNpX2NvbmZp Z193aW5kb3cgKnBjaV9lY2FtX2NyZWF0ZShzdHJ1Y3QgZGV2aWNlICpkZXYsCiAJCQlnb3RvIGVy cl9leGl0X2lvbWFwOwogCX0KIAorCWRldl9pbmZvKGRldiwgIiVzIHBlcl9idXNfbWFwcGluZyAl ZCB3aW4gJXB4XG4iLCBfX2Z1bmNfXywKKwkJIHBlcl9idXNfbWFwcGluZywgY2ZnLT53aW4pOwor CiAJaWYgKG9wcy0+aW5pdCkgewogCQllcnIgPSBvcHMtPmluaXQoY2ZnKTsKIAkJaWYgKGVycikK QEAgLTE0MCw2ICsxNDUsOCBAQCB2b2lkIF9faW9tZW0gKnBjaV9lY2FtX21hcF9idXMoc3RydWN0 IHBjaV9idXMgKmJ1cywgdW5zaWduZWQgaW50IGRldmZuLAogCWlmIChidXNuIDwgY2ZnLT5idXNy LnN0YXJ0IHx8IGJ1c24gPiBjZmctPmJ1c3IuZW5kKQogCQlyZXR1cm4gTlVMTDsKIAorCXBjaV9p bmZvKGJ1cywgIiVzKCUjeCAlIzA1eCk6ICVwUlxuIiwgX19mdW5jX18sIGRldmZuLCB3aGVyZSwK KwkJICZjZmctPmJ1c3IpOwogCWJ1c24gLT0gY2ZnLT5idXNyLnN0YXJ0OwogCWlmIChwZXJfYnVz X21hcHBpbmcpIHsKIAkJYmFzZSA9IGNmZy0+d2lucFtidXNuXTsKQEAgLTE0Nyw2ICsxNTQsOCBA QCB2b2lkIF9faW9tZW0gKnBjaV9lY2FtX21hcF9idXMoc3RydWN0IHBjaV9idXMgKmJ1cywgdW5z aWduZWQgaW50IGRldmZuLAogCX0gZWxzZQogCQliYXNlID0gY2ZnLT53aW47CiAKKwlwY2lfaW5m byhidXMsICIlcyBiYXNlICVweCBidXNfc2hpZnQgJWRcbiIsIF9fZnVuY19fLCBiYXNlLAorCQkg Y2ZnLT5vcHMtPmJ1c19zaGlmdCk7CiAJaWYgKGNmZy0+b3BzLT5idXNfc2hpZnQpIHsKIAkJYnVz X29mZnNldCA9IChidXNuICYgUENJRV9FQ0FNX0JVU19NQVNLKSA8PCBidXNfc2hpZnQ7CiAJCWRl dmZuX29mZnNldCA9IChkZXZmbiAmIFBDSUVfRUNBTV9ERVZGTl9NQVNLKSA8PCBkZXZmbl9zaGlm dDsKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4 LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFk Lm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFy bS1rZXJuZWwK