diff --git a/hw-tests/api-demo/api/api_caller.c b/hw-tests/api-demo/api/api_caller.c
index f182fd9e6fe25479a67ce38256bcf952afe7155f..cc26fd8c0c8398dde939475d6e13d5088bd208a6 100644
--- a/hw-tests/api-demo/api/api_caller.c
+++ b/hw-tests/api-demo/api/api_caller.c
@@ -1,4 +1,6 @@
-void* api_call_start (uint32_t id, void* args, size_t size)
+#include "api/api_caller.h"
+
+void* api_call_start (uint32_t id, void* args, uint32_t size)
 {
 	int ret;
 	// aquire semaphore
diff --git a/hw-tests/api-demo/api/api_caller.h b/hw-tests/api-demo/api/api_caller.h
index ed1b58f2d78827aa5e87be638ccc85e27b0b5dcc..c19ea4332c3d1b278e5facd606d5b20a1454f03f 100644
--- a/hw-tests/api-demo/api/api_caller.h
+++ b/hw-tests/api-demo/api/api_caller.h
@@ -1,4 +1,4 @@
 #include "api_common.h"
 
-void* api_call (uint32_t id, void *args, size_t size);
+void* api_call (uint32_t id, void *args, uint32_t size);
 void* api_call_bother_dispatcher (void* buf);
diff --git a/hw-tests/api-demo/api/api_common.h b/hw-tests/api-demo/api/api_common.h
index 338d823b8eb074f78f35382956a852da2c0bdeb2..2c4c79d8be627aee8c4fee3719a7d8c16410ecf4 100644
--- a/hw-tests/api-demo/api/api_common.h
+++ b/hw-tests/api-demo/api/api_common.h
@@ -9,4 +9,4 @@ struct api_call
 	unsigned char buf[1];
 };
 
-static struct api_call **ApiCallSpace = (void*)0x20080001;
+static struct api_call *ApiCallSpace = (struct api_call *)0x20080001;
diff --git a/hw-tests/api-demo/api/api_dispatcher.c b/hw-tests/api-demo/api/api_dispatcher.c
index 68fe0bab23f2e2dc2588813557bf7c6ca9c1aac3..1b02552e875eb3277412f52ce483820036666543 100644
--- a/hw-tests/api-demo/api/api_dispatcher.c
+++ b/hw-tests/api-demo/api/api_dispatcher.c
@@ -1,4 +1,4 @@
-#include "api_common.h"
+#include "api_dispatcher.h"
 
 int
 api_init (sys_cfg_sema_t *sys_cfg)
diff --git a/hw-tests/api-demo/meson.build b/hw-tests/api-demo/meson.build
index 2440a8ad3ca7ebf91652fdf93b0d5140675d2c7a..9216e59d04df4d64a3cd2742114c568cadd47921 100644
--- a/hw-tests/api-demo/meson.build
+++ b/hw-tests/api-demo/meson.build
@@ -17,6 +17,7 @@ name = 'api-demo-core0'
 executable(
   name + '.elf',
   'main.c',
+  './api/api_caller.c',
   api_stubs[0],
   dependencies: [libcard10, max32665_startup_core0],
   link_whole: [max32665_startup_core0_lib, board_card10_lib],
@@ -30,6 +31,7 @@ name = 'api-demo-core1'
 executable(
   name + '.elf',
   'test-payload.c',
+  './api/api_dispatcher.c',
   api_stubs[1],
   dependencies: [libcard10, max32665_startup_core1],
   link_whole: [max32665_startup_core1_lib, board_card10_lib],