|DDI_FM_INIT(9F)||Kernel Functions for Drivers||DDI_FM_INIT(9F)|
#include <sys/ddifm.h> void ddi_fm_init(dev_info_t *dip, int *fm_capability, ddi_iblock_cookie_t *ibcp);
void ddi_fm_fini(dev_info_t *dip);
int ddi_fm_capable(dev_info_t *dip, int *fm_capability);
If the parent nexus is not capable of supporting any one of the requested capabilities, the associated bit will not be set and returned as such to the driver. Before returning from ddi_fm_init(), the I/O Fault Management framework creates a set of fault management capability properties: fm-ereport-capable, fm-errcb-capable, fm-accchk-capable, and fm-dmachk-capable. The current supported fault management capability levels are observable via prtconf(8).
A driver can support the administrative selection of fault management capabilities by exporting and setting a fault management capability level property in its driver.conf(5) file to the values described above. The fm_capable properties must be set and read prior to calling ddi_fm_init() with the desired capability list.
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|
Writing Device Drivers
|May 14, 2007||OmniOS|