Re: [RFC] ARM64, PCIe, annd ACPI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 8/8/2018 2:38 AM, Lorenzo Pieralisi wrote:
On Tue, Aug 07, 2018 at 05:10:15PM -0700, Ray Jui wrote:
Hi Lorenzo/Bjorn,

I have a question on PCIe controller APCI support on ARM64 based systems.

If my understanding of the implementation of "pci_acpi_scan_root" under
"arch/arm64/kernel/pci.c" is correct, it appears
"pci_acpi_setup_ecam_mapping" is called within "pci_acpi_scan_root".

Does that mean for a PCIe host controller on ARM64 to support ACPI, it needs
to support ECAM and MMIO based access to the configuration space registers?

If the above statement is true, does it imply that any PCIe controller on
ARM64 that does not support MMIO based access to the config space register
cannot have ACPI support?

Yes and it is not just MMIO, config space must be ECAM compliant as described
in the PCI firmware specification and enforced here:

http://infocenter.arm.com/help/topic/com.arm.doc.den0029b/Server_Base_System_Architecture_v5_0_ARM_DEN_0029B.pdf


Okay, got it, the SBSA spec makes it very clear that the PCIe controller needs to support ECAM.

In short: what's in the mainline (+ adequate PCI controller firmware
configuration) must be sufficient to bootstrap your PCI subsystem in
ACPI, it is a very simple litmus test and we won't add anything that
deviates from that to the mainline kernel ARM64 ACPI PCI code support.


It sounds like I'll have to look into ways to work around this at the driver level as Bjorn pointed out with some other examples.

Thanks,
Lorenzo


Thanks!

Ray



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux