[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20210527165655.GA21788@lpieralisi>
Date: Thu, 27 May 2021 17:56:55 +0100
From: Lorenzo Pieralisi <lorenzo.pieralisi@....com>
To: Bjorn Helgaas <helgaas@...nel.org>
Cc: Will Deacon <will@...nel.org>, Bjorn Helgaas <bhelgaas@...gle.com>,
Maximilian Luz <luzmaximilian@...il.com>,
"Rafael J. Wysocki" <rjw@...ysocki.net>,
Len Brown <lenb@...nel.org>,
Catalin Marinas <catalin.marinas@....com>,
linux-pci@...r.kernel.org, linux-acpi@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH] Revert "arm64: PCI: Exclude ACPI "consumer"
resources from host bridge windows"
On Thu, May 27, 2021 at 11:34:52AM -0500, Bjorn Helgaas wrote:
[...]
> > > https://lore.kernel.org/r/20210510234020.1330087-1-luzmaximilian@gmail.com
> >
> > Sigh. We can't apply this patch since it would trigger regressions on
> > other platforms (IIUC the root complex registers would end up in the
> > host bridge memory windows).
> >
> > I am not keen on reverting commit 8fd4391ee717 because it does the
> > right thing.
> >
> > I think this requires a quirk and immediate reporting to Microsoft.
> >
> > Bjorn, what are your thoughts on this ?
>
> In retrospect, I think 8fd4391ee717 (which I wrote), was probably a
> mistake.
>
> Sure, it's a nice idea to have PNP0A03 _CRS methods that work nicely
> as designed, by describing host bridge registers as "consumer"
> resources and host bridge windows as "producer" registers, instead of
> having the bridge registers in _CRS of an unrelated PNP0C02 device.
>
> But realistically, the PNP0A03/PNP0C02 issue is a solved problem, even
> though it's ugly, and I'm not sure why I thought Microsoft would see
> value in doing this differently on arm64 than on x86 and ia64.
We hoped we could comply with the specs, given that we were starting
from a clean slate (and not from ACPI tables cut and paste)
> What would break if we reverted 8fd4391ee717? I guess any arm64
> platforms that described host bridge register space in PNP0A03 _CRS
> "consumer" resources ?
Yes. We would end up with that register space in the host bridge memory
windows - this does not sound right.
> And Windows probably doesn't work or isn't supported on those
> platforms?
By the look of it the answer is yes, Windows was not bootstrapped on
those platforms given that I *assume* Windows does not discriminate
between producer and consumer resources at all.
Lorenzo
Powered by blists - more mailing lists