Writing Device Drivers

Fault Management Functions

The fault management functions are:

ddi_fm_init()

Allocates and initializes resources based on declared fault management capabilities

ddi_fm_fini()

Cleans up resources that were allocated for this device instance to support fault management capabilities declared to ddi_fm_init()

ddi_fm_capable()

Returns the capability bit mask currently set for this device instance

ddi_fm_handler_register()

Registers an error handler callback routine with the IO Fault Management framework

ddi_fm_handler_unregister()

Removes an error handler callback routine that was registered with ddi_fm_handler_register()

ddi_fm_acc_err_get()

Returns the error status for an access handle

ddi_fm_dma_err_get()

Returns the error status for a DMA handle

ddi_fm_acc_err_clear()

Clears the error status for an access handle

ddi_fm_dma_err_clear()

Clears the error status for a DMA handle

ddi_fm_ereport_post()

Queues an encoded fault management error report name-value pair list for delivery to the Fault Manager daemon, fmd(1M)

ddi_fm_service_impact()

Reports the impact of an error

pci_ereport_setup()

Initializes support for error report generation and sets up the resources for subsequent accesses to PCI, PCI/X, or PCI Express configuration space

pci_ereport_teardown()

Releases any resources allocated and setup by pci_ereport_setup() for this device instance

pci_ereport_post()

Scans for and posts any PCI, PCI/X, or PCI Express bus errors