summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/trusty/sysdeps.h3
-rw-r--r--lib/trusty/ql-tipc/arch/arm/trusty_dev.c10
-rw-r--r--lib/trusty/ql-tipc/arch/arm/trusty_mem.c2
3 files changed, 8 insertions, 7 deletions
diff --git a/include/trusty/sysdeps.h b/include/trusty/sysdeps.h
index 6b50522762..04f00e5b80 100644
--- a/include/trusty/sysdeps.h
+++ b/include/trusty/sysdeps.h
@@ -32,7 +32,8 @@
#include <compiler.h>
#include <stdarg.h>
#include <stdbool.h>
-#include <linux/types.h>
+#include <stddef.h>
+
/*
* These attribute macros may need to be adjusted if not using gcc or clang.
*/
diff --git a/lib/trusty/ql-tipc/arch/arm/trusty_dev.c b/lib/trusty/ql-tipc/arch/arm/trusty_dev.c
index 6407d738da..bd9a5fbfb6 100644
--- a/lib/trusty/ql-tipc/arch/arm/trusty_dev.c
+++ b/lib/trusty/ql-tipc/arch/arm/trusty_dev.c
@@ -61,12 +61,12 @@ static unsigned long smc(unsigned long r0,
unsigned long r2,
unsigned long r3)
{
- register unsigned long _r0 asm(SMC_ARG0) = r0;
- register unsigned long _r1 asm(SMC_ARG1) = r1;
- register unsigned long _r2 asm(SMC_ARG2) = r2;
- register unsigned long _r3 asm(SMC_ARG3) = r3;
+ register unsigned long _r0 __asm__(SMC_ARG0) = r0;
+ register unsigned long _r1 __asm__(SMC_ARG1) = r1;
+ register unsigned long _r2 __asm__(SMC_ARG2) = r2;
+ register unsigned long _r3 __asm__(SMC_ARG3) = r3;
- asm volatile(
+ __asm__ volatile(
__asmeq("%0", SMC_ARG0)
__asmeq("%1", SMC_ARG1)
__asmeq("%2", SMC_ARG2)
diff --git a/lib/trusty/ql-tipc/arch/arm/trusty_mem.c b/lib/trusty/ql-tipc/arch/arm/trusty_mem.c
index 785505c01a..56d8348d3c 100644
--- a/lib/trusty/ql-tipc/arch/arm/trusty_mem.c
+++ b/lib/trusty/ql-tipc/arch/arm/trusty_mem.c
@@ -83,7 +83,7 @@ typedef uintptr_t paddr_t;
/* Note: this will crash if called from user space */
static void arm64_write_ATS1ExW(uint64_t vaddr)
{
- uint32_t _current_el;
+ uint64_t _current_el;
__asm__ volatile("mrs %0, CurrentEL" : "=r" (_current_el));