|
| 以 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
- 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.
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), 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
|
|