man Pages(9S): DDI and DKI Data Structures
只搜尋這本書
以 PDF 格式下載這本書

NAME

dev_ops - device operations structure

SYNOPSIS

#include <sys/conf.h>
#include <sys/devops.h>

INTERFACE LEVEL

Solaris DDI specific (Solaris DDI).

DESCRIPTION

dev_ops contains driver common fields and pointers to the bus_ops and/or cb_ops(9S).
Following are the device functions provided in the device operations structure:
devo_identify
Determine if a driver is associated with a device (See identify(9E)).
devo_probe
Probe device (See probe(9E)).
devo_attach
Attach driver to dev_info (See attach(9E)).
devo_detach
Detach/prepare driver to unload (See detach(9E)).
devo_reset
Reset device (Not supported in this release).
devo_rev
Driver build version.
devo_refcnt
Driver reference count.
devo_cb_ops
Pointer to cb_ops(9S) structure for leaf drivers.
devo_bus_ops
Pointer to bus operations structure for nexus drivers.
Drivers should set the following fields at compile time:
devo_rev
to DEVO_REV.
devo_refcnt
to zero.
devo_bus_ops
to NULL if this is for a leaf driver.

STRUCTURE MEMBERS

int
devo_rev;
int               devo_refcnt;
int               (* devo_getinfo)(dev_info_t* dip,
                  ddi_info_cmd_t infocmd, void * arg,void ** result);
int               (* devo_identify)(dev_info_t* dip);
int               (* devo_probe)(dev_info_t* dip);
int               (* devo_attach)(dev_info_t* dip,ddi_attach_cmd_t cmd);
int               (* devo_detach)(dev_info_t* dip,ddi_detach_cmd_t cmd);
int               (* devo_reset)(dev_info_t* dip,ddi_reset_cmd_t cmd);
struct cb_ops     * devo_cb_ops;
struct bus_ops    * devo_bus_ops;

SEE ALSO

attach(9E), detach(9E), identify(9E), probe(9E)
Writing Device Drivers