From: Bjorn Helgaas <helgaas@kernel.org>
To: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>
Cc: linux-pci@vger.kernel.org, Guenter Roeck <linux@roeck-us.net>,
"Maciej W . Rozycki" <macro@orcam.me.uk>,
Bjorn Helgaas <bhelgaas@google.com>,
linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 1/1] MIPS: Malta: Use pcibios_align_resource() to block io range
Date: Mon, 20 Oct 2025 17:37:14 -0500 [thread overview]
Message-ID: <20251020223714.GA1165320@bhelgaas> (raw)
In-Reply-To: <20251017221204.GA1050107@bhelgaas>
On Fri, Oct 17, 2025 at 05:12:04PM -0500, Bjorn Helgaas wrote:
> On Fri, Oct 17, 2025 at 02:09:03PM +0300, Ilpo Järvinen wrote:
> > According to Maciej W. Rozycki <macro@orcam.me.uk>, the
> > mips_pcibios_init() for malta adjusts root bus IO resource start
> > address to prevent interfering with PIIX4 I/O cycle decoding. Adjusting
> > lower bound leaves PIIX4 IO resources outside of the root bus resource
> > and assign_fixed_resource_on_bus() does not link the resources into the
> > resource tree.
> >
> > Prior to commit ae81aad5c2e1 ("MIPS: PCI: Use pci_enable_resources()")
> > the arch specific pcibios_enable_resources() did not check if the
> > resources were assigned which diverges from what PCI core checks,
> > effectively hiding the PIIX4 IO resources were not properly within the
> > resource tree. After starting to use pcibios_enable_resources() from
> > PCI core, enabling PIIX4 fails:
> >
> > ata_piix 0000:00:0a.1: BAR 0 [io 0x01f0-0x01f7]: not claimed; can't enable device
> > ata_piix 0000:00:0a.1: probe with driver ata_piix failed with error -22
> >
> > MIPS PCI code already has support for enforcing lower bounds using
> > PCIBIOS_MIN_IO in pcibios_align_resource() without altering the IO
> > window start address itself. Make malta PCI code too to use
> > PCIBIOS_MIN_IO.
> >
> > Fixes: ae81aad5c2e1 ("MIPS: PCI: Use pci_enable_resources()")
> > Fixes: aa0980b80908 ("Fixes for system controllers for Atlas/Malta core cards.")
> > Link: https://lore.kernel.org/linux-pci/9085ab12-1559-4462-9b18-f03dcb9a4088@roeck-us.net/
> > Link: https://lore.kernel.org/linux-pci/alpine.DEB.2.21.2510132229120.39634@angie.orcam.me.uk/
> > Reported-by: Guenter Roeck <linux@roeck-us.net>
> > Suggested-by: Maciej W. Rozycki <macro@orcam.me.uk>
> > Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
>
> Since ae81aad5c2e1 ("MIPS: PCI: Use pci_enable_resources()") came
> through the PCI tree, I'd be happy to merge this as well, given your
> ack, Thomas. It would be ideal to have a tested-by from Guenter.
>
> I provisionally put it on pci/for-linus to facilitate testing. If it
> doesn't solve the problem or you'd rather take it, Thomas, I'll be
> glad to drop it.
Added:
Tested-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Maciej W. Rozycki <macro@orcam.me.uk>
Acked-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
and dropped the Fixes: aa0980b80908 ("Fixes for system controllers for
Atlas/Malta core cards.")
If the missing resource reservations (dma1, tiger, dma page reg)
mentioned by Maciej are an issue or can be fixed up, let me know and
we can amend this.
> > ---
> >
> > v2:
> >
> > - Remove if and always set PCIBIOS_MIN_IO (suggested by Maciej).
> > - Minor improvement to the changelog
> >
> > arch/mips/pci/pci-malta.c | 3 +--
> > 1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/arch/mips/pci/pci-malta.c b/arch/mips/pci/pci-malta.c
> > index 6aefdf20ca05..2e35aeba45bc 100644
> > --- a/arch/mips/pci/pci-malta.c
> > +++ b/arch/mips/pci/pci-malta.c
> > @@ -230,8 +230,7 @@ void __init mips_pcibios_init(void)
> > }
> >
> > /* PIIX4 ACPI starts at 0x1000 */
> > - if (controller->io_resource->start < 0x00001000UL)
> > - controller->io_resource->start = 0x00001000UL;
> > + PCIBIOS_MIN_IO = 0x1000;
> >
> > iomem_resource.end &= 0xfffffffffULL; /* 64 GB */
> > ioport_resource.end = controller->io_resource->end;
> >
> > base-commit: 2f2c7254931f41b5736e3ba12aaa9ac1bbeeeb92
> > --
> > 2.39.5
> >
next prev parent reply other threads:[~2025-10-20 22:37 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-17 11:09 [PATCH v2 1/1] MIPS: Malta: Use pcibios_align_resource() to block io range Ilpo Järvinen
2025-10-17 22:12 ` Bjorn Helgaas
2025-10-18 0:33 ` Guenter Roeck
2025-10-20 22:37 ` Bjorn Helgaas [this message]
2025-10-21 12:15 ` Maciej W. Rozycki
2025-10-21 12:51 ` Ilpo Järvinen
2025-10-21 14:41 ` Maciej W. Rozycki
2025-10-18 12:35 ` Guenter Roeck
2025-10-18 21:38 ` Maciej W. Rozycki
2025-10-20 14:12 ` Thomas Bogendoerfer
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=20251020223714.GA1165320@bhelgaas \
--to=helgaas@kernel.org \
--cc=bhelgaas@google.com \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=macro@orcam.me.uk \
--cc=tsbogend@alpha.franken.de \
/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