On 01/13/2016 07:20 AM, Tomasz Nowicki wrote:
From the functionality point of view this series might be split into the following logic parts:
- Make MMCONFIG code arch-agnostic which allows all architectures to collect PCI config regions and used when necessary.
- Move non-arch specific bits to the core code.
- Use MMCONFIG code and implement generic ACPI based PCI host controller driver.
- Enable above driver on ARM64
Patches has been built on top of 4.4 and can be found here: git@github.com:semihalf-nowicki-tomasz/linux.git (pci-acpi-v3)
I boot tested this on JunoR2 with a recent build of Tianocore EDK2.
It works enough to boot the machine with PCIe attached sata, and ethernet, but is throwing messages like:
[ 1.094643] pci 0000:00:00.0: BAR 13: no space for [io size 0x2000] [ 1.101022] pci 0000:00:00.0: BAR 13: failed to assign [io size 0x2000]
Its also throwing:
[ 1.029958] pci 0000:00:00.0: of_irq_parse_pci() failed with rc=-22 [ 1.052784] pci 0000:00:00.0: of_irq_parse_pci() failed with rc=-22
(see other response for the DwordIo resource i'm using).