NAME | SYNOPSIS | INTERFACE LEVEL | DESCRIPTION | STRUCTURE MEMBERS | SEE ALSO
#include <sys/conf.h> #include <sys/devops.h>
Solaris DDI specific (Solaris DDI).
Future releases of Solaris will provide this structure for binary and source compatibility. However, for increased functionality, use devmap_callback_ctl(9S) instead. See devmap_callback_ctl(9S) for details.
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.
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:
Must be set to MAPDEV_REV.
Must be set to the address of the mapdev_access(9E) entry point.
Must be set to the address of the mapdev_free(9E) entry point.
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)
NAME | SYNOPSIS | INTERFACE LEVEL | DESCRIPTION | STRUCTURE MEMBERS | SEE ALSO