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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id EC15BD111BF for ; Mon, 4 Nov 2024 08:56:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:In-Reply-To: Content-Transfer-Encoding:Content-Type:MIME-Version:References:Message-ID: Subject:Cc:To:Date:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=wVgtF+RQO3Bp9xa0wTFVgwHh2YZ5qiUAa82quET385A=; b=TUudDC/n9uNCvr/9V2L1x7W8X2 fHlSbTlwlBB9H8IAZ2X28Mw4vYiJIbAny9l7nSdRLvUIZvlyEMUyv0p3v59TvOEETt7QwFeY6l8mU UljluDRwOqNnceDll7Wdo++w4zt+4KbKkdRUmkPjcJ/mQ8EsmT5kXwJ64RH7wVioB3v+EB6wxSkZV ViuzkJuSd8TVkt4K2wejVNkx1saTUGvw1cX7sxJW73r3NLWZn58a1YZMWY0hlERmNuZemBCL4z1ZF QxR71nwa1RoEk9d702gjIphEBHM6uGiY1SI5qZAVnTZSPANBhXPNWCOH6lpM/RERTZ1qUPQSw7jK+ T4Z7R/RA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1t7ssn-0000000D2gY-05B8; Mon, 04 Nov 2024 08:56:21 +0000 Received: from mail-ej1-x634.google.com ([2a00:1450:4864:20::634]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1t7sr3-0000000D2IA-2T2M for linux-arm-kernel@lists.infradead.org; Mon, 04 Nov 2024 08:54:35 +0000 Received: by mail-ej1-x634.google.com with SMTP id a640c23a62f3a-a998a5ca499so527679266b.0 for ; Mon, 04 Nov 2024 00:54:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1730710472; x=1731315272; darn=lists.infradead.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:date:from:from:to :cc:subject:date:message-id:reply-to; bh=wVgtF+RQO3Bp9xa0wTFVgwHh2YZ5qiUAa82quET385A=; b=TIiKXpL6fECZ/NRNexnh7WW8kvd1tJ10FHIDeD9N67PRzGUoE1j+XjQVXr5NBTsJTX IhpooQdOjS9XKeRzjUnSv3C8aHHHNKcdfjqQPwuvbWtchrQzunnOpHo85cmPOEQOh5R1 Ms0xZR+4mU6VxoLB8LFioCuTD3q8zesJyskUuva5QucRPE/R8S7wh/GvW7GY3fTYSoji D6+E6YJowRuaBQ30Vk1s9VkJcPlr9Jd/NwYm6Woq6sbrS2hpa3GC8y+5KQf1pO7xFa+J DYwDTqt1qjoTlwV+ah9/A+/fB/tmiN4PpwOg+19StrxAl7lROTsT0xL7Rd0zwATecHvD nk2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1730710472; x=1731315272; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:date:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=wVgtF+RQO3Bp9xa0wTFVgwHh2YZ5qiUAa82quET385A=; b=NPwvz2Yy1vNf3gzP+QDiFrnPyTPqQR+PuPTuHral2qDWalx/4Pwlyf+2RtzKRKPPY7 38bCX1lGuN92anKDKMLOnFN9hETZCSvVJdBFQGtP83PxNCFtz/AUye15x1NuzMrqY6W/ JTao31chAQDZL73ZKY+mPEXnfhzzH4zGumzOoEQht8NRX4Nt6NJ8w5sN7sHxw3f4NzKO ogiILlovCSHZDZSlza8XwK07+g3EAzjsspYAfzWHyL1iqtfldjfRs9yXgLLWl65cSjhq pnZk+3McjrmPac7m1CR8M4Pl6jiKcR25JpsLL16v/mrkTOu+rP2rJbUSJPPs8fBrnfyU jGNw== X-Forwarded-Encrypted: i=1; AJvYcCXgXHjJIn9Z/850e5m9vb8BzBQbIb2qmL5MJc5uJf5eGFt53eVwpEEZpyAbpgvf4ZQSLPPcNUo6eKCl6xvubXz9@lists.infradead.org X-Gm-Message-State: AOJu0YyDDNdjwpChKy/7AidOy1BtrFQjLxBzVAzHbOiCd0y/oHdptMKx 2ylVIaujDc7CU5f2JsGHkGeJjwudPfnw8cAG86RumzRQCic9royste8XpdYVbWQ= X-Google-Smtp-Source: AGHT+IHHWwU4nmC4hKYGVohwmL7B6wm+EPEOdY9CCLcF+bYsvgn7lE94cff864zN3lJnYIL8UQ8UFQ== X-Received: by 2002:a17:907:2d0d:b0:a99:61d1:348f with SMTP id a640c23a62f3a-a9e655b9703mr1085525566b.52.1730710471755; Mon, 04 Nov 2024 00:54:31 -0800 (PST) Received: from localhost (host-79-35-211-193.retail.telecomitalia.it. [79.35.211.193]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a9e5669a18esm524386366b.216.2024.11.04.00.54.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Nov 2024 00:54:31 -0800 (PST) From: Andrea della Porta X-Google-Original-From: Andrea della Porta Date: Mon, 4 Nov 2024 09:54:57 +0100 To: Manivannan Sadhasivam Cc: Andrea della Porta , Michael Turquette , Stephen Boyd , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Florian Fainelli , Broadcom internal kernel review list , Lorenzo Pieralisi , Krzysztof Wilczynski , Bjorn Helgaas , Linus Walleij , Catalin Marinas , Will Deacon , Bartosz Golaszewski , Derek Kiernan , Dragan Cvetic , Arnd Bergmann , Greg Kroah-Hartman , Saravana Kannan , linux-clk@vger.kernel.org, devicetree@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, linux-gpio@vger.kernel.org, Masahiro Yamada , Stefan Wahren , Herve Codina , Luca Ceresoli , Thomas Petazzoni , Andrew Lunn Subject: Re: [PATCH v3 05/12] PCI: of_property: Assign PCI instead of CPU bus address to dynamic bridge nodes Message-ID: References: <20241102170908.fa5n6pz5ldxb66zk@thinkpad> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20241102170908.fa5n6pz5ldxb66zk@thinkpad> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20241104_005433_656881_889FB2BC X-CRM114-Status: GOOD ( 23.65 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi Manivannan, On 22:39 Sat 02 Nov , Manivannan Sadhasivam wrote: > On Mon, Oct 28, 2024 at 03:07:22PM +0100, Andrea della Porta wrote: > > When populating "ranges" property for a PCI bridge, of_pci_prop_ranges() > > incorrectly use the CPU bus address of the resource. Since this is a PCI-PCI > > bridge, the window should instead be in PCI address space. Call > > pci_bus_address() on the resource in order to obtain the PCI bus > > address. > > > > of_pci_prop_ranges() could be called for PCI devices also (not just PCI > bridges), right? Correct. Please note however that while the PCI-PCI bridge has the parent address in CPU space, an endpoint device has it in PCI space: here we're focusing on the bridge part. It probably used to work before since in many cases the CPU and PCI address are the same, but it breaks down when they differ. Many thanks, Andrea > > - Mani > > > Signed-off-by: Andrea della Porta > > --- > > drivers/pci/of_property.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/pci/of_property.c b/drivers/pci/of_property.c > > index 5a0b98e69795..886c236e5de6 100644 > > --- a/drivers/pci/of_property.c > > +++ b/drivers/pci/of_property.c > > @@ -126,7 +126,7 @@ static int of_pci_prop_ranges(struct pci_dev *pdev, struct of_changeset *ocs, > > if (of_pci_get_addr_flags(&res[j], &flags)) > > continue; > > > > - val64 = res[j].start; > > + val64 = pci_bus_address(pdev, &res[j] - pdev->resource); > > of_pci_set_address(pdev, rp[i].parent_addr, val64, 0, flags, > > false); > > if (pci_is_bridge(pdev)) { > > -- > > 2.35.3 > > > > -- > மணிவண்ணன் சதாசிவம்