Signed-off-by: Gilles Chanteperdrix <[email protected]>
---
arch/x86/Kconfig | 2 +-
arch/x86/kernel/ipipe.c | 15 +++++++++++++++
2 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index cef6fde..0a02ec5 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -154,7 +154,7 @@ config GENERIC_CALIBRATE_DELAY
config GENERIC_TIME_VSYSCALL
bool
- default X86_64
+ default X86_64 || IPIPE
config ARCH_HAS_CPU_RELAX
def_bool y
diff --git a/arch/x86/kernel/ipipe.c b/arch/x86/kernel/ipipe.c
index d1d4544..4de8cbe 100644
--- a/arch/x86/kernel/ipipe.c
+++ b/arch/x86/kernel/ipipe.c
@@ -30,6 +30,7 @@
#include <linux/irq.h>
#include <linux/clockchips.h>
#include <linux/kprobes.h>
+#include <linux/ipipe_tickdev.h>
#include <asm/unistd.h>
#include <asm/processor.h>
#include <asm/system.h>
@@ -49,6 +50,7 @@
#include <asm/apic.h>
#endif /* CONFIG_X86_LOCAL_APIC */
#include <asm/traps.h>
+#include <asm/tsc.h>
int __ipipe_tick_irq = 0; /* Legacy timer */
@@ -814,6 +816,19 @@ int __ipipe_check_tickdev(const char *devname)
return ret;
}
+#ifdef CONFIG_X86_32
+void update_vsyscall(struct timespec *wall_time, struct timespec *wtm,
+ struct clocksource *clock, u32 mult)
+{
+ if (clock == &clocksource_tsc)
+ ipipe_update_hostrt(wall_time, clock);
+}
+
+void update_vsyscall_tz(void)
+{
+}
+#endif /* CONFIG_X86_32 */
+
EXPORT_SYMBOL(__ipipe_tick_irq);
EXPORT_SYMBOL_GPL(irq_to_desc);
--
1.5.6.5
_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main