Go to main content

man pages section 9: DDI and DKI Kernel Functions

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

ddi_dma_free(9F)

Name

ddi_dma_free - release system DMA resources

Synopsis

#include <sys/ddi.h>
#include <sys/sunddi.h>

int ddi_dma_free(ddi_dma_handle_t handle);

Interface Level

This interface is obsolete. ddi_dma_free_handle(9F) should be used instead.

Parameters

handle

The handle filled in by a call to ddi_dma_setup(9F).

Description

The ddi_dma_free() function releases system DMA resources set up by ddi_dma_setup(9F). When a DMA transfer completes, the driver should free up system DMA resources established by a call to ddi_dma_setup(9F). This is done by a call to ddi_dma_free(). ddi_dma_free () does an implicit ddi_dma_sync(9F) for you so any further synchronization steps are not necessary.

Return Values

The ddi_dma_free() function returns:

DDI_SUCCESS

Successfully released resources

DDI_FAILURE

Failed to free resources

Context

The ddi_dma_free() function can be called from user, interrupt, or kernel context.

Attributes

See attributes(7) for a description of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Stability Level
Obsolete

See Also

attributes(7), ddi_dma_htoc(9F), ddi_dma_addr_setup(9F), ddi_dma_buf_setup(9F), ddi_dma_free_handle(9F), ddi_dma_sync(9F), ddi_dma_req(9S)

Writing Device Drivers in Oracle Solaris 11.4