[Xenomai] arm64 support
jerry.huang at nxp.com
Mon Jan 16 04:26:14 CET 2017
> -----Original Message-----
> From: Philippe Gerum [mailto:rpm at xenomai.org]
> Sent: Thursday, January 12, 2017 8:04 PM
> To: Jerry Huang <jerry.huang at nxp.com>; Jorge Ramirez <jro at xenomai.org>;
> xenomai at xenomai.org
> Subject: Re: [Xenomai] arm64 support
> On 01/12/2017 11:24 AM, Jerry Huang wrote:
> >> -----Original Message-----
> >> From: Jorge Ramirez [mailto:jro at xenomai.org]
> >> Sent: Thursday, January 05, 2017 7:09 PM
> >> To: Jerry Huang <jerry.huang at nxp.com>; xenomai at xenomai.org
> >> Subject: Re: [Xenomai] arm64 support
> >> On 01/05/2017 11:39 AM, Jerry Huang wrote:
> >>> Thanks a lot.
> >>> I sent the request t subscribe this mail list, I don't know if the
> >>> approval is
> >> needed for this request.
> >>> >From the below links, they are about the 96boards.
> >>> I found one boards DragonBoard410c is based on ARM Contxt-A53, but I
> >> didn't find if it is running ARM32 or ARM64.
> >>> Could you please point out where can I find these information?
> >>> Best Regards
> >>> Jerry Huang
> >> yes, both boards (HiKey and dragon410c) run in 64 bit mode.
> >> We also demoed Android 64bit running Xenomai on the HiKey back at
> >> ELC-A
> >> 2016 to control motors.
> >> I think I wrote a simple post entry in the 96boards forum  about it.
> >> please remember to not top-post when writing to the mailing list.
> >>  http://www.96boards.org/forums/
> > I got the Ipipe patch "ipipe-core-4.1.18-arm64-6.patch" from xenomai
> website and ported it to Linux-4.1.35 with a little modification (for
> kernel/trace/ring_buffer.c file).
> > But when I boot the Linux, I got the kernel panic as below shows, which
> was caused by function "irqs_disabled", who can give more comment how to
> fix it?
> All arm64 patches present in the DL area are broken, some critical changes
> are missing due to a bug in some obscure code extraction script for this
> architecture, do not use them.
> Please pull the code from the I-pipe git tree instead (branch ipipe-4.1.y).
I clone the ipipe repos (git://git.xenomai.org/ipipe.git) and checkout to branch origin/ipipe-4.1.y.
And using the script ./scripts/ipipe/genpatches.sh to generate the patch "ipipe-core-4.1.18-arm64-6.patch",
Then applied it to my kernel Linux-4.1.35 with a litter modification (about file kernel/trace/ring_buffer.c).
After building the kernel and booting my board, then I got the kernel panic as the result of patch (ipipe-core-4.1.18-arm64-6.patch) from websit (http://xenomai.org/downloads/ipipe/).
Any comment for this issue?
[ 0.012441] ------------[ cut here ]------------
[ 0.017083] WARNING: CPU: 0 PID: 0 at kernel/softirq.c:129 __local_bh_enable+0x54/0x60()
[ 0.025209] Modules linked in:
[ 0.028274] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.1.35+ #4
[ 0.034304] Hardware name: LS1043A RDB Board (DT)
[ 0.039024] Call trace:
[ 0.041477] [<ffff80000008a538>] dump_backtrace+0x0/0x11c
[ 0.046898] [<ffff80000008a668>] show_stack+0x14/0x1c
[ 0.051971] [<ffff8000007ab49c>] dump_stack+0x9c/0xc4
[ 0.057043] [<ffff8000000b5884>] warn_slowpath_common+0x98/0xd0
[ 0.062987] [<ffff8000000b5980>] warn_slowpath_null+0x18/0x20
[ 0.068757] [<ffff8000000b8c5c>] __local_bh_enable+0x54/0x60
[ 0.074440] [<ffff8000000b8c90>] _local_bh_enable+0x28/0x60
[ 0.080035] [<ffff8000000b95ac>] irq_enter+0x4c/0x68
[ 0.085021] [<ffff8000000f2b38>] __handle_domain_irq+0x4c/0xd4
[ 0.090878] [<ffff8000000825c8>] gic_handle_irq+0x34/0x84
[ 0.192022] ---[ end trace cb88537fdc8fa200 ]---
[ 0.196669] BUG: failure at kernel/irq_work.c:135/irq_work_run_list()!
[ 0.203223] Kernel panic - not syncing: BUG!
[ 0.207508] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W 4.1.35+ #4
[ 0.214761] Hardware name: LS1043A RDB Board (DT)
[ 0.219480] Call trace:
[ 0.221930] [<ffff80000008a538>] dump_backtrace+0x0/0x11c
[ 0.227351] [<ffff80000008a668>] show_stack+0x14/0x1c
[ 0.232422] [<ffff8000007ab49c>] dump_stack+0x9c/0xc4
[ 0.237492] [<ffff8000007aa254>] panic+0xe4/0x228
[ 0.242215] [<ffff8000001321b8>] irq_work_run+0x0/0x64
[ 0.247373] [<ffff80000013241c>] irq_work_tick+0x54/0x78
[ 0.252707] [<ffff800000102f94>] update_process_times+0x54/0x6c
[ 0.258651] [<ffff800000103004>] update_root_process_times+0x58/0x64
[ 0.265033] [<ffff80000010f780>] tick_periodic+0x44/0xbc
[ 0.270367] [<ffff80000010f9e4>] tick_handle_periodic+0x2c/0x80
[ 0.276313] [<ffff80000066b918>] arch_timer_handler_phys+0x3c/0x5c
[ 0.282520] [<ffff8000000f5bac>] handle_percpu_devid_irq+0x68/0xc8
[ 0.288726] [<ffff8000000f2828>] generic_handle_irq+0x34/0x4c
[ 0.294496] [<ffff8000000f2b5c>] __handle_domain_irq+0x70/0xd4
[ 0.300353] [<ffff8000000825c8>] gic_handle_irq+0x34/0x84
More information about the Xenomai