[PATCH 00/25] Dovetail integration, next round
Jan Kiszka
jan.kiszka at siemens.com
Thu May 20 23:44:10 CEST 2021
This is just half-way through to one working arch. A split at this at
the point libcobalt is refactored for dovetail ticks. Test target for
this part remains I-pipe, i.e. the check for no regressions on it.
Jan
CC: Hongzhan Chen <hongzhan.chen at intel.com>
CC: Philippe Gerum <rpm at xenomai.org>
Hongzhan Chen (12):
cobalt/irq: dovetail: implement out-of-band irq management and
handling
cobalt/kevents: dovetail: enable back tracing
cobalt/kernel: dovetail: implement sirq services
cobalt/sched: dovetail: add task control block initializers
cobalt/clock: dovetail: provide backend code to CLOCK_HOST_REALTIME
cobalt/init: dovetail: add oob stage enabling, disabling services
cobalt/tick: dovetail: install/uninstall proxy tick device
cobalt/tick: dovetail: implement pipeline_set_timer_shot()
cobalt/tick: dovetail: implement pipeline_timer_name()
cobalt/timer: pipeline: abstract handling of ONESHOT_STOPPED mode
cobalt/timer: dovetail: handle ONESHOT_STOPPED mode
cobalt/clock: dovetail: implement pipeline_read_cycle_counter()
Jan Kiszka (3):
cobalt/x86: ipipe: Remove leftover from x86_32 removal
cobalt/x86: ipipe: Drop unused strncpy_from_user_nocheck
cobalt/x86: Move shared headers out of pipeline specific folder
Philippe Gerum (10):
cobalt/kernel: ipipe: rename xnsched_realtime_domain to
xnsched_primary_domain
cobalt/kevents: dovetail: drop call to obsolete force_commit_memory()
cobalt/intr: dovetail: implement interrupt management, handling
cobalt/x86: dovetail: add architecture bits
cobalt/timer: Check if nklock is held in timer services
cobalt/tick: dovetail: flatten the call stack to pipeline services
lib/cobalt: ticks: drop cobalt_read_hrclock()
lib/cobalt: dovetail: allow representing time as count of nanoseconds
lib/cobalt: add default wrapper to clock_settime()
lib/cobalt: dovetail: use clock_gettime() vcall for reading timestamps
.../cobalt/kernel/dovetail/pipeline/clock.h | 30 +-
include/cobalt/kernel/dovetail/pipeline/irq.h | 24 ++
.../kernel/dovetail/pipeline/pipeline.h | 40 +--
.../cobalt/kernel/dovetail/pipeline/sirq.h | 28 +-
.../cobalt/kernel/dovetail/pipeline/tick.h | 4 +
.../cobalt/kernel/ipipe/pipeline/pipeline.h | 2 +-
include/cobalt/kernel/ipipe/pipeline/tick.h | 6 +
include/cobalt/kernel/sched.h | 5 +
include/cobalt/ticks.h | 50 +++-
kernel/cobalt/arch/x86/dovetail/Makefile | 5 +
kernel/cobalt/arch/x86/dovetail/c1e.c | 1 +
.../include/asm/xenomai/calibration.h} | 34 +--
.../x86/dovetail/include/asm/xenomai/fptest.h | 70 +++++
.../include/asm/xenomai/machine.h | 7 +-
.../include/asm/xenomai/syscall.h | 19 +-
.../x86/dovetail/include/asm/xenomai/thread.h | 38 +++
.../arch/x86/{ipipe => dovetail}/machine.c | 29 +-
kernel/cobalt/arch/x86/dovetail/smi.c | 1 +
.../x86/{ipipe => }/include/asm/xenomai/c1e.h | 0
.../include/asm/xenomai/features.h | 0
.../x86/{ipipe => }/include/asm/xenomai/smi.h | 0
.../include/asm/xenomai/syscall32-table.h | 0
.../include/asm/xenomai/syscall32.h | 0
.../include/asm/xenomai/wrappers.h | 0
.../x86/ipipe/include/asm/xenomai/machine.h | 4 -
.../x86/ipipe/include/asm/xenomai/syscall.h | 8 -
kernel/cobalt/arch/x86/ipipe/machine.c | 19 --
kernel/cobalt/arch/x86/ipipe/smi.c | 4 +-
kernel/cobalt/clock.c | 2 +-
kernel/cobalt/dovetail/Makefile | 2 +-
kernel/cobalt/dovetail/init.c | 4 +-
kernel/cobalt/dovetail/intr.c | 130 ++++++++
kernel/cobalt/dovetail/kevents.c | 15 +-
kernel/cobalt/dovetail/sched.c | 12 +-
kernel/cobalt/dovetail/tick.c | 141 ++++++++-
kernel/cobalt/ipipe/init.c | 12 +-
kernel/cobalt/ipipe/intr.c | 20 +-
kernel/cobalt/ipipe/kevents.c | 2 +-
kernel/cobalt/ipipe/syscall.c | 2 +-
kernel/cobalt/timer.c | 17 +-
lib/cobalt/Makefile.am | 1 +
.../arch/arm/include/asm/xenomai/time.h | 16 +
.../arch/arm64/include/asm/xenomai/time.h | 16 +
.../arch/powerpc/include/asm/xenomai/time.h | 16 +
.../arch/x86/include/asm/xenomai/time.h | 16 +
lib/cobalt/clock.c | 107 ++++---
lib/cobalt/internal.h | 6 +
lib/cobalt/parse_vdso.c | 281 ++++++++++++++++++
lib/cobalt/ticks.c | 65 ++--
lib/cobalt/wrappers.c | 6 +
50 files changed, 1060 insertions(+), 257 deletions(-)
create mode 100644 include/cobalt/kernel/dovetail/pipeline/irq.h
create mode 100644 kernel/cobalt/arch/x86/dovetail/Makefile
create mode 120000 kernel/cobalt/arch/x86/dovetail/c1e.c
copy kernel/cobalt/arch/x86/{ipipe/include/asm/xenomai/machine.h => dovetail/include/asm/xenomai/calibration.h} (52%)
create mode 100644 kernel/cobalt/arch/x86/dovetail/include/asm/xenomai/fptest.h
copy kernel/cobalt/arch/x86/{ipipe => dovetail}/include/asm/xenomai/machine.h (88%)
copy kernel/cobalt/arch/x86/{ipipe => dovetail}/include/asm/xenomai/syscall.h (87%)
create mode 100644 kernel/cobalt/arch/x86/dovetail/include/asm/xenomai/thread.h
copy kernel/cobalt/arch/x86/{ipipe => dovetail}/machine.c (80%)
create mode 120000 kernel/cobalt/arch/x86/dovetail/smi.c
rename kernel/cobalt/arch/x86/{ipipe => }/include/asm/xenomai/c1e.h (100%)
rename kernel/cobalt/arch/x86/{ipipe => }/include/asm/xenomai/features.h (100%)
rename kernel/cobalt/arch/x86/{ipipe => }/include/asm/xenomai/smi.h (100%)
rename kernel/cobalt/arch/x86/{ipipe => }/include/asm/xenomai/syscall32-table.h (100%)
rename kernel/cobalt/arch/x86/{ipipe => }/include/asm/xenomai/syscall32.h (100%)
rename kernel/cobalt/arch/x86/{ipipe => }/include/asm/xenomai/wrappers.h (100%)
create mode 100644 kernel/cobalt/dovetail/intr.c
create mode 100644 lib/cobalt/arch/arm/include/asm/xenomai/time.h
create mode 100644 lib/cobalt/arch/arm64/include/asm/xenomai/time.h
create mode 100644 lib/cobalt/arch/powerpc/include/asm/xenomai/time.h
create mode 100644 lib/cobalt/arch/x86/include/asm/xenomai/time.h
create mode 100644 lib/cobalt/parse_vdso.c
--
2.26.2
More information about the Xenomai
mailing list