From: Philippe Gerum <rpm@xenomai.org>
To: Don Mahurin <don@mperpetuo.com>, xenomai@xenomai.org
Subject: Re: [Xenomai] xenomai/ipipe arm64 port
Date: Tue, 25 Aug 2015 16:08:07 +0200 [thread overview]
Message-ID: <55DC76C7.5040606@xenomai.org> (raw)
In-Reply-To: <CAJqUr7ybpmgOev-iPaQ-iMEAF8SBocn54vyYSbLcm9spMY=FBg@mail.gmail.com>
On 08/25/2015 02:13 AM, Don Mahurin wrote:
> Hi all,
>
> We would like to submit our current work on the arm64 port of
> ipipe/xenomai. We hope that this contribution will encourage further
> development of arm64 support in ipipe/xenomai.
>
arm64 support is definitely a high priority item. Thanks for tackling this.
> This port was largely developed on ipipe-3.10 as a base, so it is likely to
> be the most well tested there. Though recently, we have also ported these
> changes to ipipe-3.14.44. ( We noticed that 3.10 is missing from rc7. Is
> this intended, or will 3.10 support return? )
ipipe-core-3.10.32-arm-10.patch is still part of the distribution in
-rc7. This said, the absence of a patch targeting a particular kernel
release in a given Xenomai version does not mean the latter can't run
over the former. This rather means that we did not check for it. Xenomai
3 over Cobalt requires a kernel release >= 3.10 though.
>
> At the end of this message are the relevant git repos and branches for the
> arm64 port. Also included is a build script to build a minimal busybox
> linux system which may be ran using qemu (arm64 virt).
>
>
> Development status:
>
> The 3.14 port is missing the fast-syscall changes (in entry.S) from armv7,
> and instead contains the 3.10 entry.S changes forward ported to 3.14.
>
> FPU support is incomplete.
>
> Smokey tests:
>
> 3.10/rc6 smokey tests all pass
> 3.14/rc6 smokey tests all pass
> 3.14/rc7 smokey tests sched-quota and sched-tp fail
>
This is likely because -rc7 has added checks to sched-* tests which have
time-dependent results, so they may not match the expected value in a
qemu-based execution.
>
> git repos:
>
> https://gitlab.mperpetuo.com/it/xenomai-3.git
> https://gitlab.mperpetuo.com/it/ipipe.git
> https://gitlab.mperpetuo.com/it/build-scripts.git
>
It looks like curl does not like the cypher used by this server. http is
fine though.
> ipipe/xenomai arm64 branches:
>
> ipipe-core-3.10.32-arm-10-arm64-2c, v3.0-rc6-arm64-1c
> ipipe-core-3.14.44-arm-11-arm64-2, v3.0-rc6-arm64-1c
> ipipe-core-3.14.44-arm-12-arm64-2, v3.0-rc7-arm64-1c
>
>
> The system is built with the following commands.
> git clone https://gitlab.mperpetuo.com/it/build-scripts.git
> mkdir -p build
> cd build
> ../build-scripts/build_linux_emulator-arm64.sh
> or
> ../build-scripts/build_linux_emulator-arm64.sh --314-rc6
> or
> ../build-scripts/build_linux_emulator-arm64.sh --314-rc7
>
This went almost fine except the rsync step which assumes a native arm64
host for populating the rootfs, I have no such beast. But that's not a
major issue, I can take another path for building it.
> To run the resulting build:
> sudo apt-get install qemu-system-arm
> ( cd out/target/product/xenomai_arm64; ./run.sh )
>
>
> We look forward to any feedback or questions. Please let us know how we may
> continue to contribute to move this arm64 port forward.
>
I only had a quick look to the code so far, but as a preliminary step,
you may want to split cobalt/arch/arm (and the related include areas)
from cobalt/arch/arm64 in the Xenomai tree, following the convention
used in the mainline kernel. Having a moderate amount of duplicate code
between arm and arm64 is acceptable, compared to dealing with
cross-architecture headers sprinkled with #ifdefery. arm and arm64 are
distinct enough.
I believe we should target 3.14 for the first implementation, since the
I-pipe bits in 3.10 are lagging slightly behind already, 3.14 contains
the latest changes to the interrupt pipeline though.
--
Philippe.
next prev parent reply other threads:[~2015-08-25 14:08 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-25 0:13 [Xenomai] xenomai/ipipe arm64 port Don Mahurin
2015-08-25 14:08 ` Philippe Gerum [this message]
2015-08-25 15:20 ` Jorge Ramirez Ortiz
2015-08-25 16:13 ` Jan Kiszka
2015-08-25 17:07 ` Jorge Ramirez Ortiz
2015-08-25 17:34 ` Jorge Ramirez Ortiz
2015-08-25 17:36 ` Jan Kiszka
2015-08-25 17:54 ` Jorge Ramirez Ortiz
2015-08-25 18:03 ` Jan Kiszka
2015-08-25 17:34 ` Jan Kiszka
2015-08-25 18:02 ` Jorge Ramirez Ortiz
2015-08-25 18:05 ` Don Mahurin
2015-08-25 18:34 ` Jorge Ramirez Ortiz
2015-08-25 18:36 ` Jan Kiszka
2015-08-25 18:43 ` Philippe Gerum
2015-08-25 18:52 ` Gilles Chanteperdrix
2015-08-26 14:40 ` Jorge Ramirez Ortiz
2015-08-26 16:30 ` Don Mahurin
2015-08-27 17:07 ` Jorge Ramirez Ortiz
2015-08-27 21:56 ` Don Mahurin
2015-09-01 17:45 ` Jorge Ramirez Ortiz
[not found] ` <CAPuu0=jX6ig5L7SJrmPVOhCmOm=gwxEmTafTpOqzE85hOji8CA@mail.gmail.com>
2015-09-01 19:11 ` Jorge Ramirez Ortiz
2015-09-01 19:24 ` Philippe Gerum
2015-09-01 20:14 ` Jorge Ramirez Ortiz
2015-09-01 21:02 ` Hongfei Cheng
2015-09-02 0:43 ` Don Mahurin
2015-09-07 16:03 ` Philippe Gerum
2015-09-24 19:39 ` Dmitriy Cherkasov
2015-09-25 15:02 ` Gilles Chanteperdrix
2015-09-25 17:14 ` Dmitriy Cherkasov
2015-09-25 18:01 ` Gilles Chanteperdrix
2015-09-26 11:24 ` Gilles Chanteperdrix
2015-09-28 23:57 ` Dmitriy Cherkasov
2015-09-29 0:12 ` Gilles Chanteperdrix
2015-09-29 12:54 ` Jorge Ramirez Ortiz
2015-09-29 17:31 ` Dmitriy Cherkasov
2015-09-29 17:47 ` Gilles Chanteperdrix
2015-09-29 20:17 ` Jorge Ramirez Ortiz
2015-09-29 17:05 ` Don Mahurin
2015-09-29 14:14 ` Lennart Sorensen
2015-09-29 20:49 ` Gilles Chanteperdrix
2015-10-01 23:51 ` Dmitriy Cherkasov
2015-10-02 10:01 ` Gilles Chanteperdrix
2015-10-02 11:55 ` Gilles Chanteperdrix
2015-10-02 20:18 ` Dmitriy Cherkasov
2015-10-03 9:53 ` Philippe Gerum
2015-10-03 10:01 ` Philippe Gerum
2015-10-03 10:05 ` Philippe Gerum
2015-09-01 19:30 ` Philippe Gerum
2015-09-01 20:47 ` Jorge Ramirez Ortiz
2015-09-01 19:44 ` Gilles Chanteperdrix
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55DC76C7.5040606@xenomai.org \
--to=rpm@xenomai.org \
--cc=don@mperpetuo.com \
--cc=xenomai@xenomai.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.