// © 2021 Qualcomm Innovation Center, Inc. All rights reserved. // // SPDX-License-Identifier: BSD-3-Clause define addrspace_attach_thread hypercall { call_num 0x2A; addrspace input type cap_id_t; thread input type cap_id_t; res0 input uregister; error output enumeration error; }; define addrspace_map hypercall { call_num 0x2B; addrspace input type cap_id_t; memextent input type cap_id_t; vbase input type vmaddr_t; map_attrs input bitfield memextent_mapping_attrs; map_flags input bitfield addrspace_map_flags; // Below arguments are used only if partial is set in map_flags; // otherwise they are ignored for backwards compatibility. offset input size; size input size; error output enumeration error; }; define addrspace_unmap hypercall { call_num 0x2C; addrspace input type cap_id_t; memextent input type cap_id_t; vbase input type vmaddr_t; map_flags input bitfield addrspace_map_flags; // Below arguments are used only if partial is set in map_flags; // otherwise they are ignored for backwards compatibility. offset input size; size input size; error output enumeration error; }; define addrspace_update_access hypercall { call_num 0x2D; addrspace input type cap_id_t; memextent input type cap_id_t; vbase input type vmaddr_t; access_attrs input bitfield memextent_access_attrs; map_flags input bitfield addrspace_map_flags; // Below arguments are used only if partial is set in map_flags; // otherwise they are ignored for backwards compatibility. offset input size; size input size; error output enumeration error; }; define addrspace_configure hypercall { call_num 0x2E; addrspace input type cap_id_t; vmid input type vmid_t; res0 input uregister; error output enumeration error; }; define addrspace_attach_vdma hypercall { call_num 0x2F; addrspace input type cap_id_t; dma_device input type cap_id_t; index input type index_t; res0 input uregister; error output enumeration error; }; define addrspace_lookup hypercall { call_num 0x5A; addrspace input type cap_id_t; memextent input type cap_id_t; vbase input type vmaddr_t; size input size; res0 input uregister; error output enumeration error; offset output size; size output size; map_attrs output bitfield memextent_mapping_attrs; }; define addrspace_configure_info_area hypercall { call_num 0x5B; addrspace input type cap_id_t; info_area_me input type cap_id_t; ipa input type vmaddr_t; res0 input uregister; error output enumeration error; }; define addrspace_configure_vmmio hypercall { call_num 0x60; addrspace input type cap_id_t; vbase input type vmaddr_t; size input size; op input enumeration addrspace_vmmio_configure_op; res0 input uregister; error output enumeration error; }; define addrspace_attach_vdevice hypercall { call_num 0x62; addrspace input type cap_id_t; vdevice input type cap_id_t; index input type index_t; vbase input type vmaddr_t; size input size; flags input union addrspace_attach_vdevice_flags; error output enumeration error; };