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