Content-type: text/html Man page of ddi_fm_init

ddi_fm_init

Section: Kernel Functions for Drivers (9F)
Updated: 14 May 2007
Index Return to Main Contents
 

NAME

ddi_fm_init, ddi_fm_fini, ddi_fm_capable - initialize and get the FM capabilities for a device instance  

SYNOPSIS

#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);

 

INTERFACE LEVEL

Solaris DDI specific (Solaris DDI)  

PARAMETERS

ddi_fm_init()

dip

Pointer to the dev_info structure

fm_capability

Fault Management capability bit mask

ibcp

Pointer to where the interrupt block cookie should be returned.

 

DESCRIPTION

A device driver can declare its fault management capabilities to the I/O Fault Management framework by calling ddi_fm_init(). The ddi_fm_init() function allocates and initializes resources according to the bitwise-inclusive-OR of the fault management capabilities, described in the following and supported by the driver's immediate nexus parent.

DDI_FM_NOT_CAPABLE

The driver does not support any FMA features. This is the default value assigned to device drivers.

DDI_FM_EREPORT_CAPABLE

The driver generates FMA protocol error events (ereports) upon the detection of an error condition.

DDI_FM_ACCCHK_CAPABLE

The driver checks for errors upon the completion of one or more access I/O transactions.

DDI_FM_DMACHK_CAPABLE

The driver checks for errors upon the completion of one or more DMA I/O transactions.

DDI_FM_ERRCB_CAPABLE

The driver is capable of error handler callback registration.

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(1M).

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(4) 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.

ddi_fm_fini()

This function cleans up resources allocated to support fault management for the dip structure.

ddi_fm_capable()

This function returns the capability bit mask currently set for the dip structure.

 

CONTEXT

These functions can be called from kernel context in a driver attach(9E) or detach(9E) operation.  

ATTRIBUTES

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

ATTRIBUTE TYPEATTRIBUTE VALUE

Interface StabilityCommitted

 

SEE ALSO

prtconf(1M), driver.conf(4), attributes(5), attach(9E), detach(9E)


 

Index

NAME
SYNOPSIS
INTERFACE LEVEL
PARAMETERS
DESCRIPTION
CONTEXT
ATTRIBUTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 02:39:42 GMT, October 02, 2010