svn commit: r261790 - in head/sys: amd64/include dev/acpica dev/cardbus dev/pccbb dev/pci i386/include sparc64/pci x86/include x86/pci x86/x86
John Baldwin
jhb at freebsd.org
Wed Feb 12 19:43:55 UTC 2014
On Tuesday, February 11, 2014 11:30:38 pm John Baldwin wrote:
> Author: jhb
> Date: Wed Feb 12 04:30:37 2014
> New Revision: 261790
> URL: http://svnweb.freebsd.org/changeset/base/261790
>
> Log:
> Add support for managing PCI bus numbers. As with BARs and PCI-PCI bridge
> I/O windows, the default is to preserve the firmware-assigned resources.
> PCI bus numbers are only managed if NEW_PCIB is enabled and the architecture
> defines a PCI_RES_BUS resource type.
> - Add a helper API to create top-level PCI bus resource managers for each
> PCI domain/segment. Host-PCI bridge drivers use this API to allocate
> bus numbers from their associated domain.
> - Change the PCI bus and CardBus drivers to allocate a bus resource for
> their bus number from the parent PCI bridge device.
> - Change the PCI-PCI and PCI-CardBus bridge drivers to allocate the
> full range of bus numbers from secbus to subbus from their parent bridge.
> The drivers also always program their primary bus register. The bridge
> drivers also support growing their bus range by extending the bus resource
> and updating subbus to match the larger range.
> - Add support for managing PCI bus resources to the Host-PCI bridge drivers
> used for amd64 and i386 (acpi_pcib, mptable_pcib, legacy_pcib, and qpi_pcib).
> - Define a PCI_RES_BUS resource type for amd64 and i386.
Since ia64 only uses ACPI Host-PCI bridges, I believe that this can be enabled
on ia64 by just adding an appropriate #define for PCI_RES_BUS to
<machine/bus.h>. I just have no way to test it.
--
John Baldwin
More information about the freebsd-ia64
mailing list