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 Oct 14 22:10:16 UTC 2022

Modified Files:
        src/sys/arch/arm/acpi: acpipchb.c
        src/sys/arch/arm/fdt: arm_simplefb.c
        src/sys/arch/evbarm/conf: std.generic64
        src/sys/dev/acpi: acpi_mcfg.c acpi_mcfg.h acpi_pci.c acpi_pci.h
        src/sys/dev/pci: files.pci
Added Files:
        src/sys/dev/pci: pci_resource.c pci_resource.h

Log Message:
Add a PCI resource manager and use it on Arm ACPI platforms.

The Arm ACPI code relied on PCI_NETBSD_CONFIGURE to configure devices that
were not enabled by system firmware. This is not safe to do unless the
firmware explicitly permits it using a device specific method defined in
the PCI firmware spec.

Introduce a new PCI resource manager that discovers what has already been
configured by firmware and allocates from the remaining space. This will
ensure that devices setup by firmware are untouched and only will program
BARs of devices that are not enabled at boot time.

The current implementation assumes that the parent PCI-PCI bridge's
are already configured. A worthwhile improvement in the future would be
to support programming windows for bridges that are not fully configured.


To generate a diff of this commit:
cvs rdiff -u -r1.30 -r1.31 src/sys/arch/arm/acpi/acpipchb.c
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/arm/fdt/arm_simplefb.c
cvs rdiff -u -r1.19 -r1.20 src/sys/arch/evbarm/conf/std.generic64
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/acpi/acpi_mcfg.c
cvs rdiff -u -r1.4 -r1.5 src/sys/dev/acpi/acpi_mcfg.h
cvs rdiff -u -r1.36 -r1.37 src/sys/dev/acpi/acpi_pci.c
cvs rdiff -u -r1.12 -r1.13 src/sys/dev/acpi/acpi_pci.h
cvs rdiff -u -r1.444 -r1.445 src/sys/dev/pci/files.pci
cvs rdiff -u -r0 -r1.1 src/sys/dev/pci/pci_resource.c \
    src/sys/dev/pci/pci_resource.h

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