|
Data Structures for Drivers | ddi_mapdev_ctl(9S) |
| ddi_mapdev_ctl - device mapping-control structure |
SYNOPSIS
|
#include <sys/conf.h>
#include <sys/devops.h>
|
|
Solaris DDI specific (Solaris DDI).
|
|
|
int mapdev_rev;
int (*mapdev_access)(ddi_mapdev_handle_t handle, void *devprivate,
off_t offset);
void (*mapdev_free)(ddi_mapdev_handle_t handle, void *devprivate);
int (*mapdev_dup)(ddi_mapdev_handle_t handle, 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.
|
|
exit(2), fork(2), mmap(2), munmap(2), mapdev_access(9E), mapdev_dup(9E), mapdev_free(9E), segmap(9E), ddi_mapdev(9F), ddi_mapdev_intercept(9F), ddi_mapdev_nointercept(9F)
Writing Device Drivers
|
| |