Source-Changes archive

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

CVS commit: src/sys



Module Name:    src
Committed By:   jmcneill
Date:           Fri Jan 17 17:06:33 UTC 2020

Modified Files:
        src/sys/arch/arm/acpi: acpi_pci_machdep.c acpi_pci_machdep.h acpipchb.c
            files.acpi
        src/sys/arch/arm/fdt: acpi_fdt.c
        src/sys/arch/x86/x86: mpacpi.c
        src/sys/dev/acpi: acpi.c acpi_pci.c acpi_pci.h acpi_pci_link.c
            acpivar.h
        src/sys/dev/acpi/acpica: OsdHardware.c
Added Files:
        src/sys/arch/arm/acpi: acpi_pci_graviton.c acpi_pci_n1sdp.c

Log Message:
Add support for Arm N1 SDP PCIe host controller.

The N1 SDP has a few bugs that we need to work around:
 - PCIe root port config space lives in a non-standard location.
 - Access to PCIe config space of devices that do not exist results in
   an sync SError. Firmware creates a "known devices" table at a fixed
   physical address that we use to filter PCI conf access to only known
   devices.

This change splits the Arm ACPI PCI quirks into separate files for each
host controller, and allows per-segment quirks to be applied.

These changes exposed some bugs in the MI ACPI layer related to
multi-segment support. The MI ACPI PCI code was using a shared PCI
chipset tag to access devices, and these accesses can happen before our
PCI host bridge drivers are attached! The global chipset tag is now gone,
and an MD callback can provide a custom tag on a per-segment basis.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/sys/arch/arm/acpi/acpi_pci_graviton.c \
    src/sys/arch/arm/acpi/acpi_pci_n1sdp.c
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/arm/acpi/acpi_pci_machdep.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/arm/acpi/acpi_pci_machdep.h
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/arm/acpi/acpipchb.c
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/arm/acpi/files.acpi
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/arm/fdt/acpi_fdt.c
cvs rdiff -u -r1.103 -r1.104 src/sys/arch/x86/x86/mpacpi.c
cvs rdiff -u -r1.282 -r1.283 src/sys/dev/acpi/acpi.c
cvs rdiff -u -r1.26 -r1.27 src/sys/dev/acpi/acpi_pci.c
cvs rdiff -u -r1.10 -r1.11 src/sys/dev/acpi/acpi_pci.h
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/acpi/acpi_pci_link.c
cvs rdiff -u -r1.81 -r1.82 src/sys/dev/acpi/acpivar.h
cvs rdiff -u -r1.11 -r1.12 src/sys/dev/acpi/acpica/OsdHardware.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index