And use this chance to remove unneeded #ifdef ASSEMBLY guards.
Signed-off-by: Ralf Ramsauer <[email protected]>
---
inmates/lib/{arm64 => arm-common}/include/inmate.h | 17 +----
inmates/lib/arm/include/arch/inmate.h | 26 +++++++
inmates/lib/arm/include/inmate.h | 87 ----------------------
inmates/lib/arm64/include/arch/inmate.h | 25 +++++++
4 files changed, 52 insertions(+), 103 deletions(-)
rename inmates/lib/{arm64 => arm-common}/include/inmate.h (80%)
create mode 100644 inmates/lib/arm/include/arch/inmate.h
delete mode 100644 inmates/lib/arm/include/inmate.h
create mode 100644 inmates/lib/arm64/include/arch/inmate.h
diff --git a/inmates/lib/arm64/include/inmate.h
b/inmates/lib/arm-common/include/inmate.h
similarity index 80%
rename from inmates/lib/arm64/include/inmate.h
rename to inmates/lib/arm-common/include/inmate.h
index 24e828a144..99ab37f0c6 100644
--- a/inmates/lib/arm64/include/inmate.h
+++ b/inmates/lib/arm-common/include/inmate.h
@@ -13,7 +13,6 @@
#ifndef _JAILHOUSE_INMATE_H
#define _JAILHOUSE_INMATE_H
-#ifndef __ASSEMBLY__
typedef signed char s8;
typedef unsigned char u8;
@@ -56,20 +55,6 @@ static inline void cpu_relax(void)
asm volatile("" : : : "memory");
}
-/*
- * To ease the debugging, we can send a spurious hypercall, which should return
- * -ENOSYS, but appear in the hypervisor stats for this cell.
- */
-static inline void heartbeat(void)
-{
- asm volatile (
- "mov x0, %0\n"
- "hvc #0\n"
- : : "r" (0xbea7) : "x0");
-}
-
-void __attribute__((used)) vector_irq(void);
-
typedef void (*irq_handler_t)(unsigned int);
void gic_setup(irq_handler_t handler);
void gic_enable_irq(unsigned int irq);
@@ -79,7 +64,7 @@ u64 timer_get_ticks(void);
u64 timer_ticks_to_ns(u64 ticks);
void timer_start(u64 timeout);
-#endif /* !__ASSEMBLY__ */
+#include <arch/inmate.h>
#include "../inmate_common.h"
diff --git a/inmates/lib/arm/include/arch/inmate.h
b/inmates/lib/arm/include/arch/inmate.h
new file mode 100644
index 0000000000..5c2ee1a670
--- /dev/null
+++ b/inmates/lib/arm/include/arch/inmate.h
@@ -0,0 +1,26 @@
+/*
+ * Jailhouse, a Linux-based partitioning hypervisor
+ *
+ * Copyright (c) ARM Limited, 2014
+ *
+ * Authors:
+ * Jean-Philippe Brucker <[email protected]>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2. See
+ * the COPYING file in the top-level directory.
+ */
+
+/*
+ * To ease the debugging, we can send a spurious hypercall, which should return
+ * -ENOSYS, but appear in the hypervisor stats for this cell.
+ */
+static inline void heartbeat(void)
+{
+ asm volatile (
+ ".arch_extension virt\n"
+ "mov r0, %0\n"
+ "hvc #0\n"
+ : : "r" (0xbea7) : "r0");
+}
+
+void __attribute__((interrupt("IRQ"))) __attribute__((used)) vector_irq(void);
diff --git a/inmates/lib/arm/include/inmate.h b/inmates/lib/arm/include/inmate.h
deleted file mode 100644
index bbf93131b4..0000000000
--- a/inmates/lib/arm/include/inmate.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Jailhouse, a Linux-based partitioning hypervisor
- *
- * Copyright (c) ARM Limited, 2014
- *
- * Authors:
- * Jean-Philippe Brucker <[email protected]>
- *
- * This work is licensed under the terms of the GNU GPL, version 2. See
- * the COPYING file in the top-level directory.
- */
-
-#ifndef _JAILHOUSE_INMATE_H
-#define _JAILHOUSE_INMATE_H
-
-#ifndef __ASSEMBLY__
-typedef signed char s8;
-typedef unsigned char u8;
-
-typedef signed short s16;
-typedef unsigned short u16;
-
-typedef signed int s32;
-typedef unsigned int u32;
-
-typedef signed long long s64;
-typedef unsigned long long u64;
-
-static inline u8 mmio_read8(void *address)
-{
- return *(volatile u8 *)address;
-}
-
-static inline void mmio_write8(void *address, u8 value)
-{
- *(volatile u8 *)address = value;
-}
-
-static inline void mmio_write16(void *address, u16 value)
-{
- *(volatile u16 *)address = value;
-}
-
-static inline u32 mmio_read32(void *address)
-{
- return *(volatile u32 *)address;
-}
-
-static inline void mmio_write32(void *address, u32 value)
-{
- *(volatile u32 *)address = value;
-}
-
-static inline void cpu_relax(void)
-{
- asm volatile("" : : : "memory");
-}
-
-/*
- * To ease the debugging, we can send a spurious hypercall, which should return
- * -ENOSYS, but appear in the hypervisor stats for this cell.
- */
-static inline void heartbeat(void)
-{
- asm volatile (
- ".arch_extension virt\n"
- "mov r0, %0\n"
- "hvc #0\n"
- : : "r" (0xbea7) : "r0");
-}
-
-void __attribute__((interrupt("IRQ"))) __attribute__((used)) vector_irq(void);
-
-typedef void (*irq_handler_t)(unsigned int);
-void gic_setup(irq_handler_t handler);
-void gic_enable_irq(unsigned int irq);
-
-unsigned long timer_get_frequency(void);
-u64 timer_get_ticks(void);
-u64 timer_ticks_to_ns(u64 ticks);
-void timer_start(u64 timeout);
-
-#endif /* !__ASSEMBLY__ */
-
-#include "../inmate_common.h"
-
-#endif /* !_JAILHOUSE_INMATE_H */
diff --git a/inmates/lib/arm64/include/arch/inmate.h
b/inmates/lib/arm64/include/arch/inmate.h
new file mode 100644
index 0000000000..cd9275ddf0
--- /dev/null
+++ b/inmates/lib/arm64/include/arch/inmate.h
@@ -0,0 +1,25 @@
+/*
+ * Jailhouse, a Linux-based partitioning hypervisor
+ *
+ * Copyright (c) ARM Limited, 2014
+ *
+ * Authors:
+ * Jean-Philippe Brucker <[email protected]>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2. See
+ * the COPYING file in the top-level directory.
+ */
+
+/*
+ * To ease the debugging, we can send a spurious hypercall, which should return
+ * -ENOSYS, but appear in the hypervisor stats for this cell.
+ */
+static inline void heartbeat(void)
+{
+ asm volatile (
+ "mov x0, %0\n"
+ "hvc #0\n"
+ : : "r" (0xbea7) : "x0");
+}
+
+void __attribute__((used)) vector_irq(void);
--
2.12.0
--
You received this message because you are subscribed to the Google Groups
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.