The device driver must allocate and initialize a devmap_callback_ctl(9S) structure to inform the system about the entry point routines for device context management.
This structure uses the following syntax:
struct devmap_callback_ctl {
int devmap_rev;
int (*devmap_map)(devmap_cookie_t dhp, dev_t dev,
uint_t flags, offset_t off, size_t len, void **pvtp);
int (*devmap_access)(devmap_cookie_t dhp, void *pvtp,
offset_t off, size_t len, uint_t type, uint_t rw);
int (*devmap_dup)(devmap_cookie_t dhp, void *pvtp,
devmap_cookie_t new_dhp, void **new_pvtp);
void (*devmap_unmap)(devmap_cookie_t dhp, void *pvtp,
offset_t off, size_t len, devmap_cookie_t new_dhp1,
void **new_pvtp1, devmap_cookie_t new_dhp2,
void **new_pvtp2);
};
The version number of the devmap_callback_ctl structure. The version number must be set to DEVMAP_OPS_REV.
Must be set to the address of the driver's devmap_map(9E) entry point.
Must be set to the address of the driver's devmap_access(9E) entry point.
Must be set to the address of the driver's devmap_dup(9E) entry point.
Must be set to the address of the driver's devmap_unmap(9E) entry point.