PCI_CONFIG_SETUP(9F) Kernel Functions for Drivers PCI_CONFIG_SETUP(9F)


NAME


pci_config_setup, pci_config_teardown - setup or tear down the resources
for enabling accesses to the PCI Local Bus Configuration space

SYNOPSIS


#include <sys/ddi.h>
#include <sys/sunddi.h>


int pci_config_setup(dev_info_t *dip, ddi_acc_handle_t *handle);


void pci_config_teardown(ddi_acc_handle_t *handle);


INTERFACE LEVEL


illumos DDI specific (illumos DDI).

PARAMETERS


dip
Pointer to the device's dev_info structure.


handle
Pointer to a data access handle.


DESCRIPTION


pci_config_setup() sets up the necessary resources for enabling
subsequent data accesses to the PCI Local Bus Configuration space.
pci_config_teardown() reclaims and removes those resources represented
by the data access handle returned from pci_config_setup().

RETURN VALUES


pci_config_setup() returns:

DDI_SUCCESS
Successfully setup the resources.


DDI_FAILURE
Unable to allocate resources for setup.


CONTEXT


pci_config_setup() must be called from user or kernel context.
pci_config_teardown() can be called from any context.

NOTES


These functions are specific to PCI bus device drivers. For drivers using
these functions, a single source to support devices with multiple bus
versions may not be easy to maintain.

ATTRIBUTES


See attributes(7) for descriptions of the following attributes:


+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|Architecture | PCI Local Bus |
+---------------+-----------------+

SEE ALSO


attributes(7)


IEEE 1275 PCI Bus Binding


illumos March 27, 2016 PCI_CONFIG_SETUP(9F)