summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hw/memory/memory.c23
1 files changed, 13 insertions, 10 deletions
diff --git a/hw/memory/memory.c b/hw/memory/memory.c
index 6261da2..462b58a 100644
--- a/hw/memory/memory.c
+++ b/hw/memory/memory.c
@@ -18,7 +18,7 @@
#include <stdlib.h>
#include <errno.h>
-#include <hal/hal-memory-interface.h>
+#include <hal/hal-device-memory-interface.h>
#include <hal/hal-common-interface.h>
#include </hal/include/device/hal-backend-common.h>
@@ -26,12 +26,12 @@
#define GEM_INFO_PATH "/sys/kernel/debug/dri/0/gem_info"
#define BYTES_PER_KBYTE 1024
-static int memory_get_gpu_info(const int pid, struct gpu_info *info)
+static int memory_get_gpu_info(const int pid, hal_device_memory_gpu_info_s *info)
{
return -ENODEV;
}
-static int memory_get_gem_info(const int pid, struct gem_info *info)
+static int memory_get_gem_info(const int pid, hal_device_memory_gem_info_s *info)
{
FILE *fp;
char line[1024];
@@ -85,16 +85,19 @@ static int memory_get_gem_info(const int pid, struct gem_info *info)
static int memory_init(void **data)
{
- hal_backend_memory_funcs *memory_funcs;
+ hal_backend_device_memory_funcs *device_memory_funcs;
- memory_funcs = calloc(1, sizeof(hal_backend_memory_funcs));
- if (!memory_funcs)
- return -ENOMEM;
+ if (!data) {
+ _E("Invalid parameter");
+ return -EINVAL;
+ }
- memory_funcs->get_gpu_info = memory_get_gpu_info;
- memory_funcs->get_gem_info = memory_get_gem_info;
+ device_memory_funcs = *(hal_backend_device_memory_funcs **) data;
+ if (!device_memory_funcs)
+ return -EINVAL;
- *data = (void *)memory_funcs;
+ device_memory_funcs->get_gpu_info = memory_get_gpu_info;
+ device_memory_funcs->get_gem_info = memory_get_gem_info;
return 0;
}