Sun Microsystems, Inc.
spacerspacer
spacer   www.sun.com docs.sun.com | | |  
spacer
black dot
   
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z
    
 
Driver Entry Pointsmapdev_free(9E)


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

PARAMETERS

 
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(9E) instead. See devmap_unmap(9E) 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

 Example 1. Using mapdev_free
 

 
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


SunOS 5.9Go To TopLast Changed 17 Dec 1996

 
      
      
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.