class PinnedMemoryTokenDispatcher

Defined at line 33 of file ../../zircon/kernel/object/include/object/pinned_memory_token_dispatcher.h

Public Methods

zx_obj_type_t get_type ()

Defined at line 42 of file ../../zircon/kernel/object/include/object/pinned_memory_token_dispatcher.h

uint64_t size ()

Returns the number of bytes pinned by the PMT.

Defined at line 53 of file ../../zircon/kernel/object/include/object/pinned_memory_token_dispatcher.h

void ~PinnedMemoryTokenDispatcher ()

Defined at line 132 of file ../../zircon/kernel/object/pinned_memory_token_dispatcher.cc

void on_zero_handles ()

Defined at line 119 of file ../../zircon/kernel/object/pinned_memory_token_dispatcher.cc

void Unpin ()

Unpin this PMT. If this is not done before on_zero_handles() runs, then it will get moved to

the quarantine.

Defined at line 107 of file ../../zircon/kernel/object/pinned_memory_token_dispatcher.cc

zx_status_t QueryAddress (uint64_t offset, uint64_t size, dev_vaddr_t * mapped_addr, size_t * mapped_len)

Defined at line 147 of file ../../zircon/kernel/object/pinned_memory_token_dispatcher.cc

Protected Methods

zx_status_t Create (fbl::RefPtr<BusTransactionInitiatorDispatcher> bti, PinnedVmObject pinned_vmo, uint32_t perms, KernelHandle<PinnedMemoryTokenDispatcher> * handle, zx_rights_t * rights)

Set the permissions of |pinned_vmo|'s pinned range to |perms| on

behalf of |bti|. |perms| should be flags suitable for the Iommu::Map()

interface. Must be created under the BTI dispatcher's lock.

Defined at line 32 of file ../../zircon/kernel/object/pinned_memory_token_dispatcher.cc

Friends

class BusTransactionInitiatorDispatcher