[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAJDH93vm0buJn5vZEz9k9GRC3Kr6H7=0MSJpFtdpy_dSsUMDCQ@mail.gmail.com>
Date: Fri, 27 Dec 2024 12:07:20 +0100
From: Rostyslav Khudolii <ros@...c.com>
To: Yazen Ghannam <yazen.ghannam@....com>
Cc: Borislav Petkov <bp@...en8.de>, linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org,
x86@...nel.org, "bhelgaas@...gle.com" <bhelgaas@...gle.com>,
"tglx@...utronix.de" <tglx@...utronix.de>
Subject: Re: PCI IO ECS access is no longer possible for AMD family 17h
Hi Yazen, Borislav
Thank you for the elaborate reply.
> Things to try:
>
> * use the latest upstream kernel
>
> * add some debug printks to the paths you mention to see where they fail
>
> Looking at the relevant chapter in the PPR - 2.1.7 or 2.1.8 - that
> should still work.
As far as I can see the behavior should be the same with the latest upstream
kernel and the same configuration (see below).
> I expect you would want CONFIG_ACPI_MCFG and the "MCFG" table should be
> provided through ACPI.
>
> Can you please confirm if this config option is enabled, and that the
> system provides MCFG?
>
Neither CONFIG_ACPI_MCFG nor CONFIG_PCI_MMCONFIG were originally enabled
in my kernel, when I discovered this issue.
> My understanding, based on the above info, is that ACPI should be used.
> The direct register enablement is still possible for backwards
> compatibility, if needed.
>
> I think your observation proves a good point. The registers were moved
> starting in Zen. But this is not an issue on modern OSes since ACPI is
> used by default.
This is my understanding too. However, what is the desired behavior on
Zen if the CONFIG_ACPI_MCFG
and CONFIG_PCI_MMCONFIG are both disabled? ECS should not be possible
since the registers were
moved, right?
If that's the case then, at the very least, it would be great to have
a warning message.
> For your specific issue, I think we should determine if there is a
> configuration or a firmware problem.
To give a bit more context: I am porting the kernel which works on the
AMD Ryzen™ Embedded V1000-based
device. On that system, it seems like the firmware doesn't disable IO
access to ECS (which is wrong), hence we
have never experienced this issue before. Now, the R2000-based
device's firmware disables IO access to ECS
(correctly) and that's when the issue starts to happen.
Thanks,
Ros
Powered by blists - more mailing lists