Module Name: src Committed By: riastradh Date: Sun Jun 23 00:53:34 UTC 2024
Modified Files: src/sys/arch/sparc64/dev: pci_machdep.c src/sys/arch/sparc64/include: pci_machdep.h src/sys/arch/xen/include: pci_machdep.h src/sys/arch/xen/xen: xpci_xenbus.c src/sys/dev/acpi: acpi_mcfg.c src/sys/dev/pci: pci.c pcivar.h Log Message: pci: Pass cookie through pci_find_device, pci_enumerate_bus, take 2. New functions pci_find_device1 and pci_enumerate_bus1 have the cookie argument. Existing symbols pci_find_device and pci_enumerate_bus are now wrappers for the cookieless version. This will allow pci_find_device callers to pass a cookie through to the match function so they can keep state or pass in extra parameters like b/d/f numbers, which will allow us to nix some horrible kludges in the Linux PCI API emulation for drm (and, perhaps, Intel wifi). This change drops the symbol pci_probe_device, in favour of a new pci_probe_device1 with the cookie argument. But I don't think that requires a revbump because it's only called by MD pci_enumerate_bus1 implementations, which don't live in modules anyway. Take 2: Make sure to handle NULL match function. To generate a diff of this commit: cvs rdiff -u -r1.82 -r1.83 src/sys/arch/sparc64/dev/pci_machdep.c cvs rdiff -u -r1.30 -r1.31 src/sys/arch/sparc64/include/pci_machdep.h cvs rdiff -u -r1.23 -r1.24 src/sys/arch/xen/include/pci_machdep.h cvs rdiff -u -r1.28 -r1.29 src/sys/arch/xen/xen/xpci_xenbus.c cvs rdiff -u -r1.28 -r1.29 src/sys/dev/acpi/acpi_mcfg.c cvs rdiff -u -r1.167 -r1.168 src/sys/dev/pci/pci.c cvs rdiff -u -r1.119 -r1.120 src/sys/dev/pci/pcivar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.