Module: xenomai-2.6 Branch: master Commit: ffcb4977f57f13eea38ae78757e5eb77fe641ca9 URL: http://git.xenomai.org/?p=xenomai-2.6.git;a=commit;h=ffcb4977f57f13eea38ae78757e5eb77fe641ca9
Author: Gilles Chanteperdrix <gilles.chanteperd...@xenomai.org> Date: Sun Sep 23 16:41:12 2012 +0200 hal/arm: support any type of tsc emulation with I-pipe core patches --- include/asm-arm/bits/shadow.h | 18 ++++++++++++++++-- 1 files changed, 16 insertions(+), 2 deletions(-) diff --git a/include/asm-arm/bits/shadow.h b/include/asm-arm/bits/shadow.h index 86b6aaa..58323e1 100644 --- a/include/asm-arm/bits/shadow.h +++ b/include/asm-arm/bits/shadow.h @@ -174,11 +174,25 @@ static inline int xnarch_local_syscall(struct pt_regs *regs) info.tsc = RTHAL_TSC_INFO(&ipipe_info).u.fr.tsc; break; #endif /* IPIPE_TSC_TYPE_FREERUNNING_TWICE */ + default: +#if IPIPE_CORE_APIREV >= 1 + /* + * Newer tsc types, require kuser, not + * backward compatible with old xenomai + * versions + */ + info.type = __XN_TSC_TYPE_KUSER; + info.counter = (void *) + RTHAL_TSC_INFO(&ipipe_info).u.counter_paddr; + info.mask = RTHAL_TSC_INFO(&ipipe_info).u.mask; + info.tsc = RTHAL_TSC_INFO(&ipipe_info).u.fr.tsc; + break; +#else + return -EINVAL; +#endif /* IPIPE_CORE_APIREV >= 1 */ case IPIPE_TSC_TYPE_NONE: return -ENOSYS; - default: - return -EINVAL; } if (__xn_copy_to_user((void *)__xn_reg_arg2(regs), _______________________________________________ Xenomai-git mailing list Xenomai-git@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai-git