编写设备驱动程序

故障管理函数

故障管理函数包括:

ddi_fm_init()

根据声明的故障管理功能分配和初始化资源

ddi_fm_fini()

清除为该设备实例分配的资源,以支持声明为 ddi_fm_init() 的故障管理功能

ddi_fm_capable()

返回当前为该设备实例设置的功能位掩码

ddi_fm_handler_register()

在 IO 故障管理框架中注册错误处理程序回调例程

ddi_fm_handler_unregister()

删除使用 ddi_fm_handler_register() 注册的错误处理程序回调例程

ddi_fm_acc_err_get()

返回访问句柄的错误状态

ddi_fm_dma_err_get()

返回 DMA 句柄的错误状态

ddi_fm_acc_err_clear()

清除访问句柄的错误状态

ddi_fm_dma_err_clear()

清除 DMA 句柄的错误状态

ddi_fm_ereport_post()

将编码的故障管理错误报告名称-值对列表排入队列,以传送到 Fault Manager 守护进程 fmd(1M)

ddi_fm_service_impact()

报告错误的影响

pci_ereport_setup()

初始化错误报告生成支持,并设置对 PCI、PCI/X 或 PCI Express 配置空间进行后续访问所用的资源

pci_ereport_teardown()

释放 pci_ereport_setup() 为该设备实例分配和设置的所有资源

pci_ereport_post()

扫描和发布任何 PCI、PCI/X 或 PCI Express 总线错误