libnx v4.9.0
Loading...
Searching...
No Matches
address_space.h
1#pragma once
2#include "types.h"
3#include "ioctl.h"
4
5typedef struct NvAddressSpace {
6 u32 fd;
7 u32 page_size;
8 bool has_init;
10
11Result nvAddressSpaceCreate(NvAddressSpace* a, u32 page_size);
12void nvAddressSpaceClose(NvAddressSpace* a);
13
14Result nvAddressSpaceAlloc(NvAddressSpace* a, bool sparse, u64 size, iova_t* iova_out);
15Result nvAddressSpaceAllocFixed(NvAddressSpace* a, bool sparse, u64 size, iova_t iova);
16Result nvAddressSpaceFree(NvAddressSpace* a, iova_t iova, u64 size);
17
18Result nvAddressSpaceMap(NvAddressSpace* a, u32 nvmap_handle, bool is_gpu_cacheable, NvKind kind, iova_t* iova_out);
19Result nvAddressSpaceMapFixed(NvAddressSpace* a, u32 nvmap_handle, bool is_gpu_cacheable, NvKind kind, iova_t iova);
20Result nvAddressSpaceModify(NvAddressSpace* a, iova_t iova, u64 offset, u64 size, NvKind kind);
21Result nvAddressSpaceUnmap(NvAddressSpace* a, iova_t iova);
Definition address_space.h:5
Various system types.
uint64_t u64
64-bit unsigned integer.
Definition types.h:22
u32 Result
Function error code result type.
Definition types.h:44
uint32_t u32
32-bit unsigned integer.
Definition types.h:21