man Pages(9S): DDI and DKI Data Structures
  Искать только в названиях книг
Загрузить это руководство в формате PDF

NAME

ddi_mapdev_ctl - device mapping-control structure

SYNOPSIS

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

INTERFACE LEVEL

Solaris DDI specific (Solaris DDI).

DESCRIPTION

A ddi_mapdev_ctl structure describes a set of routines that allow a device driver to manage events on mappings of the device created by ddi_mapdev(9F).
See mapdev_access(9E), mapdev_dup (9E),and mapdev_free(9E) for more details on these entry points.

STRUCTURE MEMBERS

int
mapdev_rev;
int    (* mapdev_access)(ddi_mapdev_handle_thandle, void * devprivate,
             off_t offset);
void   (* mapdev_free)(ddi_mapdev_handle_thandle, void * devprivate);
int    (* mapdev_dup)(ddi_mapdev_handle_thandle, void * devprivate,
             ddi_mapdev_handle_t new_handle, void ** new_devprivate);

A device driver should allocate the device mapping control structure and initialize the following fields:
mapdev_rev
must be set to MAPDEV_REV .
mapdev_access
must be set to the address of the mapdev_access(9E) entry point.
mapdev_free
must be set to the address of the mapdev_free(9E) entry point.
mapdev_dup
must be set to the address of the mapdev_dup (9E)entry point.

SEE ALSO

exit(2), fork(2), mmap(2), munmap(2), segmap (9E),mapdev_access(9E), mapdev_dup (9E),mapdev_free(9E), ddi_mapdev(9F), ddi_mapdev_intercept(9F), ddi_mapdev_nointercept(9F)
Writing Device Drivers