L4Re - L4 Runtime Environment
L4::Iommu Class Reference

Interface for IO-MMUs used for DMA remapping. More...

+ Inheritance diagram for L4::Iommu:
+ Collaboration diagram for L4::Iommu:

Public Member Functions

l4_msgtag_t bind (l4_uint64_t src_id, Ipc::Cap< Task > dma_space)
 Associate dma_space with the set of device(s) specified by src_id. More...
 
l4_msgtag_t unbind (l4_uint64_t src_id, Ipc::Cap< Task > dma_space)
 Remove the association of the given DMA address space from the device(s) specified by src_id. More...
 

Detailed Description

Interface for IO-MMUs used for DMA remapping.

This interface allows to associate a DMA address space with a platform dependent set of devices.

Definition at line 16 of file iommu.

Member Function Documentation

◆ bind()

l4_msgtag_t L4::Iommu::bind ( l4_uint64_t  src_id,
Ipc::Cap< Task dma_space 
)

Associate dma_space with the set of device(s) specified by src_id.

Parameters
src_idPlatform dependent source ID specifying the set of devices that shall use dma_space for DMA remapping.
dma_spaceThe DMA space (L4::Task created with L4_PROTO_DMA_SPACE) providing the mappings that shall be used for the device(s).

◆ unbind()

l4_msgtag_t L4::Iommu::unbind ( l4_uint64_t  src_id,
Ipc::Cap< Task dma_space 
)

Remove the association of the given DMA address space from the device(s) specified by src_id.

Parameters
src_idPlatform dependent source ID specifying the set of devices that shall no longer use dma_space for DMA remapping.
dma_spaceThe DMA space formerly associated with bind().

The documentation for this class was generated from the following file: