From: "Arnd Bergmann" <arnd@arndb.de>
To: "Semih Baskan" <strst.gs@gmail.com>
Cc: "Bjorn Helgaas" <helgaas@kernel.org>,
"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
"Krzysztof Wilczyński" <kwilczynski@kernel.org>,
"Manivannan Sadhasivam" <mani@kernel.org>,
"Rob Herring" <robh@kernel.org>,
bhelgaas@google.com, "Ray Jui" <rjui@broadcom.com>,
"Scott Branden" <sbranden@broadcom.com>,
bcm-kernel-feedback-list@broadcom.com,
"Rafał Miłecki" <rafal@milecki.pl>,
"Rafał Miłecki" <zajec5@gmail.com>,
"Florian Fainelli" <florian.fainelli@broadcom.com>,
linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, "Rosen Penev" <rosenp@gmail.com>,
rani.hod@gmail.com
Subject: Re: [PATCH] PCI: iproc: Use pci_alloc_host_bridge() on BCMA
Date: Fri, 18 Sep 2026 12:32:12 +0200 [thread overview]
Message-ID: <dc370463-125e-48d2-af6b-c3b4783f57ea@app.fastmail.com> (raw)
In-Reply-To: <CAAsRjRnV-RTddO6h2XCUz2N5pB0pS8i_-_2XRcD=WOTA7AAFZQ@mail.gmail.com>
On Fri, Sep 18, 2026, at 10:29, Semih Baskan wrote:
> On Thu, Sep 17, 2026 at 10:27:54PM +0200, Arnd Bergmann wrote:
>> Would it be help to change the probe order so the bcma driver
>> always comes before the platform driver?
>
> Only where the DT window matches the EROM one, because that is where
> the platform driver backs out.
I'm probably missing one of the steps here, sorry I'm not too
familiar with the platform.
If the DT window doesn't match, how does the bcma driver find
the device node that corresponds to the EROM entry to populate
the child nodes?
> With of_platform_default_populate() moved after
> bcma_register_devices() as a test, it boots. pcie-iproc-bcma takes the
> first controller and enumerates the BCM4360 as before. The platform
> driver then probes the same node and fails in
> devm_pci_alloc_host_bridge(), which it reports as -ENOMEM:
>
> iproc-pcie 18012000.pcie: resource collision: [mem
> 0x08000000-0x0fffffff] conflicts with PCIe MEM space [mem
> 0x08000000-0x0fffffff]
The driver should probably check earlier if the device is
already bound to the bcma bus, rather than just trying to
request the bus windows. If anything, I would have expected
the conflict on the 18012000 address for the register
base.
I see an ioremap() of bdev->addr in drivers/bcma/scan.c but
don't see a corresponding request_resource() for it, so maybe
an easy fix is to add this to the bcma bus scan and
make sure that always happens before the pci driver probe?
That way, the platform driver would just not be able to
probe on a bcma based SoC regardless of the memory window
settings.
> On the second and third controllers the DT window is
> 0x20000000/0x28000000 and the EROM one 0x40000000/0x48000000, so the
> platform driver's request goes through and its probe carries on with
> the DT window until the link check, which fails because nothing is
> connected to those two on this board. That is as far as this board can
> show.
A few more questions, for my understanding:
If a board has nothing connected to one of the host bridges,
why is the pcie host bridge still marked as status="ok"?
Do you need a driver to put it into low-power mode, or
should this just be marked as disabled?
Does the platform driver reprogram the windows to match the DT
description, or does it rely on the boot loader to ensure they
ranges/dma-ranges properties match the register contents?
When using the bcma driver, does that update the ranges properties
in memory to match the EROM contents?
Arnd
next prev parent reply other threads:[~2026-09-18 10:32 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-07 16:05 [PATCH v3] PCI: iproc: Use the EROM outbound window " Semih Baskan
2026-09-10 11:14 ` Manivannan Sadhasivam
2026-09-11 19:14 ` Bjorn Helgaas
2026-09-12 4:32 ` Semih Baskan
2026-09-12 4:36 ` [PATCH] PCI: iproc: Use pci_alloc_host_bridge() " Semih Baskan
2026-09-14 17:46 ` Bjorn Helgaas
2026-09-16 8:12 ` Semih Baskan
2026-09-16 20:01 ` Bjorn Helgaas
2026-09-17 5:40 ` Semih Baskan
2026-09-17 15:59 ` Bjorn Helgaas
2026-09-17 18:02 ` Semih Baskan
2026-09-17 18:36 ` Bjorn Helgaas
2026-09-17 20:27 ` Arnd Bergmann
2026-09-17 21:48 ` Bjorn Helgaas
2026-09-18 5:46 ` Arnd Bergmann
2026-09-18 8:29 ` Semih Baskan
2026-09-18 10:32 ` Arnd Bergmann [this message]
2026-09-18 16:25 ` Semih Baskan
2026-09-18 17:46 ` Arnd Bergmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=dc370463-125e-48d2-af6b-c3b4783f57ea@app.fastmail.com \
--to=arnd@arndb.de \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=bhelgaas@google.com \
--cc=florian.fainelli@broadcom.com \
--cc=helgaas@kernel.org \
--cc=kwilczynski@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mani@kernel.org \
--cc=rafal@milecki.pl \
--cc=rani.hod@gmail.com \
--cc=rjui@broadcom.com \
--cc=robh@kernel.org \
--cc=rosenp@gmail.com \
--cc=sbranden@broadcom.com \
--cc=strst.gs@gmail.com \
--cc=zajec5@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®