man Pages(9E): DDI and DKI Driver Entry Points
  Buscar sólo este libro
Descargar este libro en PDF

NAME

mapdev_free - device mapping free entry point

SYNOPSIS

#include <sys/sunddi.h>
void prefixmapdev_free(ddi_mapdev_handle_t handle, void * devprivate);

INTERFACE LEVEL

Solaris DDI specific (Solaris DDI).

ARGUMENTS

handle
An opaque pointer to a device mapping.
devprivate
Driver private mapping data from ddi_mapdev(9F).

DESCRIPTION

Future releases of Solaris will provide this function for binary and source compatibility. However, for increased functionality, use devmap_unmap(9F) instead. See devmap_unmap(9F) for details.
mapdev_free( ) is called when a mapping created by ddi_mapdev(9F) is being destroyed. mapdev_free( ) receives the handle of the mapping being destroyed and a pointer to the driver private data for this mapping in devprivate.
The mapdev_free( ) routine is expected to free any resources that were allocated by the driver for this mapping.

CONTEXT

This function is called from user context only.

EXAMPLES

static void
xxmapdev_free(ddi_mapdev_handle_t hdl, void * pvtdata)
{
        /* Destroy the driver private data - Device dependent * /
        ...

kmem_free(pvtdata, sizeof (struct xxpvtdata));
}

SEE ALSO

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