#include <palacios/vmm.h>
-
/*
The purpose of this interface is to make it possible to implement
int v3_host_dev_ack_irq(v3_host_dev_t hostdev, uint8_t irq);
-uint64_t v3_host_dev_config_read(v3_host_dev_t hostdev,
+uint64_t v3_host_dev_read_config(v3_host_dev_t hostdev,
uint64_t offset,
void *dest,
uint64_t len);
-uint64_t v3_host_dev_config_write(v3_host_dev_t hostdev,
- uint64_t offset,
+uint64_t v3_host_dev_write_config(v3_host_dev_t hostdev,
+ uint64_t offset,
void *src,
uint64_t len);
// fail, returning != len
// Callee gets the host dev id, and the guest physical address
uint64_t (*read_mem)(v3_host_dev_t hostdev,
- addr_t gpa,
+ void * gpa,
void *dest,
uint64_t len);
uint64_t (*write_mem)(v3_host_dev_t hostdev,
- addr_t gpa,
+ void * gpa,
void *src,
uint64_t len);
*/
uint64_t v3_host_dev_read_guest_mem(v3_host_dev_t hostdev,
v3_guest_dev_t guest_dev,
- addr_t gpa,
+ void * gpa,
void *dest,
uint64_t len);
uint64_t v3_host_dev_write_guest_mem(v3_host_dev_t hostdev,
v3_guest_dev_t guest_dev,
- addr_t gpa,
+ void * gpa,
void *src,
uint64_t len);
static int pull_config(struct pci_front_internal *state, uint8_t *config)
{
- if (v3_host_dev_config_read(state->host_dev, 0, config, 256) != 256) {
+ if (v3_host_dev_read_config(state->host_dev, 0, config, 256) != 256) {
return -1;
} else {
return 0;
PrintDebug("\n");
- if (v3_host_dev_config_write(state->host_dev,
+ if (v3_host_dev_write_config(state->host_dev,
pci_addr.value,
src,
length) != length) {
V3_ASSERT(host_dev_hooks != NULL);
V3_ASSERT(host_dev_hooks->read_mem != NULL);
- return host_dev_hooks->read_mem(hdev,gpa,dst,len);
+ return host_dev_hooks->read_mem(hdev,(void*)gpa,dst,len);
}
uint64_t v3_host_dev_write_mem(v3_host_dev_t hdev,
V3_ASSERT(host_dev_hooks != NULL);
V3_ASSERT(host_dev_hooks->write_mem != NULL);
- return host_dev_hooks->write_mem(hdev,gpa,src,len);
+ return host_dev_hooks->write_mem(hdev,(void*)gpa,src,len);
}
uint64_t v3_host_dev_read_config(v3_host_dev_t hdev,
uint64_t v3_host_dev_read_guest_mem(v3_host_dev_t hostdev,
v3_guest_dev_t guest_dev,
- addr_t gpa,
+ void * gpa,
void *dst,
uint64_t len)
{
if (!vm) {
return 0;
} else {
- return v3_read_gpa_memory(&(vm->cores[0]), gpa, len, dst);
+ return v3_read_gpa_memory(&(vm->cores[0]), (addr_t)gpa, len, dst);
}
}
}
uint64_t v3_host_dev_write_guest_mem(v3_host_dev_t hostdev,
v3_guest_dev_t guest_dev,
- addr_t gpa,
+ void * gpa,
void *src,
uint64_t len)
{
if (!vm) {
return 0;
} else {
- return v3_write_gpa_memory(&(vm->cores[0]), gpa, len, src);
+ return v3_write_gpa_memory(&(vm->cores[0]), (addr_t)gpa, len, src);
}
}
}