| #pragma once |
| |
| #include "hf/cpu.h" |
| #include "hf/vm.h" |
| |
| struct vcpu *api_switch_to_primary(size_t primary_retval, |
| enum vcpu_state secondary_state); |
| |
| int32_t api_vm_get_count(void); |
| int32_t api_vcpu_get_count(uint32_t vm_id); |
| int32_t api_vcpu_run(uint32_t vm_id, uint32_t vcpu_idx, struct vcpu **next); |
| struct vcpu *api_wait_for_interrupt(void); |
| int32_t api_vm_configure(ipaddr_t send, ipaddr_t recv); |
| |
| int32_t api_rpc_request(uint32_t vm_id, size_t size); |
| int32_t api_rpc_read_request(bool block, struct vcpu **next); |
| int32_t api_rpc_reply(size_t size, bool ack, struct vcpu **next); |
| int32_t api_rpc_ack(void); |