* [Xenomai] Porting IPIPE to SUN5I (Allwinner A13)
@ 2013-02-13 4:08 uMinded Strikes Again
2013-02-13 8:40 ` Gilles Chanteperdrix
0 siblings, 1 reply; 4+ messages in thread
From: uMinded Strikes Again @ 2013-02-13 4:08 UTC (permalink / raw)
To: xenomai
I am trying to port IPIPE to my allwinner A13 board but do not know where
to exactly start on this... I know what needs to be done but not how to do
it.
Sofar:$
cd xenomai-2.6.2.1
$ ./scripts/prepare-kernel.sh --arch=arm \
--adeos=./ksrc/arch/arm/patches/adeos-ipipe-3.0.36-arm-1.18-11.patch.fixed \
--linux=../linux-sunxi-sunxi-v3.0.36-r1
$ cd ../linux-sunxi-sunxi-v3.0.36-r1
$ make ARCH=arm a13_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- uImage
edit ./sunxi-xenomai/arch/arm/include/asm/xenomai/hal.h:
#elif defined(CONFIG_ARCH_SUN5I)
#warning "CONFIG_ARCH_SUN5I timers are not configured in hal.h yet!)
#define RTHAL_TIMER_DEVICE "tmr2"
#define RTHAL_CLOCK_DEVICE "tmr2"
#else
Just to get past the #error "Unsupported ARM machine"
I can then fully compile and at the uImage linking stage I get the
undefined reference to IPIPE symbols as I expected.
I then greped around and I will use mach-at91 as an example:
../mach-at91/at91_ipipe_time.c:int __ipipe_mach_timerint =
KERNEL_TIMER_IRQ_NUM;
../mach-at91/at91_ipipe_time.c:EXPORT_SYMBOL(__ipipe_mach_timerint);
I can see that the at91 has full IPIPE support and I checked out how it
configures timers and export the chip specific functions to generic calls
for xenomai to call.
http://linux-sunxi.org/A10/TIMER#TMR_2_CTRL Is the info to the timers in
the SUN4I/SUN5I chips but I do not know how to actually use them. Should I
copy and port ALL the function from the at91_ipipe_time.c?
http://pastebin.com/tAxwTGNZ here is a dump of all the undefined symbols I
will need to port.
Any ideas where to start?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Xenomai] Porting IPIPE to SUN5I (Allwinner A13)
2013-02-13 4:08 [Xenomai] Porting IPIPE to SUN5I (Allwinner A13) uMinded Strikes Again
@ 2013-02-13 8:40 ` Gilles Chanteperdrix
[not found] ` <CAPeEhaq-oMmhntc3rYDt-e1=qEorjkVj8G+qYKcNSxOggjGH7A@mail.gmail.com>
0 siblings, 1 reply; 4+ messages in thread
From: Gilles Chanteperdrix @ 2013-02-13 8:40 UTC (permalink / raw)
To: uMinded Strikes Again; +Cc: xenomai
On 02/13/2013 05:08 AM, uMinded Strikes Again wrote:
> I am trying to port IPIPE to my allwinner A13 board but do not know where
> to exactly start on this... I know what needs to be done but not how to do
> it.
I recommend using a 3.2, 3.4 or 3.5 kernel and starting here:
http://xenomai.org/index.php/I-pipe-core:ArmPorting
--
Gilles.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Xenomai] Fwd: Porting IPIPE to SUN5I (Allwinner A13)
[not found] ` <CAPeEhaq-oMmhntc3rYDt-e1=qEorjkVj8G+qYKcNSxOggjGH7A@mail.gmail.com>
@ 2013-02-13 20:30 ` uMinded Strikes Again
2013-02-13 21:09 ` Gilles Chanteperdrix
0 siblings, 1 reply; 4+ messages in thread
From: uMinded Strikes Again @ 2013-02-13 20:30 UTC (permalink / raw)
To: xenomai
Ok so I am on my way with kernel version 3.4.29 however my sun5i directory
is quite lacking. If I compare /arch/arm/omap2/ their are dozens of files
to the SOC features and a complete Kconfig file as well but in my
/arch/arm/sun5i/ their are just the basics for the clock to run and no
Kconfig at all!
Is their a drivers patch out there for the sunxi chipsets or will I be
writing my own for this whole architecture??
On Wed, Feb 13, 2013 at 2:40 AM, Gilles Chanteperdrix <
gilles.chanteperdrix@xenomai.org> wrote:
> On 02/13/2013 05:08 AM, uMinded Strikes Again wrote:
>
> > I am trying to port IPIPE to my allwinner A13 board but do not know where
> > to exactly start on this... I know what needs to be done but not how to
> do
> > it.
>
>
> I recommend using a 3.2, 3.4 or 3.5 kernel and starting here:
> http://xenomai.org/index.php/I-pipe-core:ArmPorting
>
> --
> Gilles.
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Xenomai] Fwd: Porting IPIPE to SUN5I (Allwinner A13)
2013-02-13 20:30 ` [Xenomai] Fwd: " uMinded Strikes Again
@ 2013-02-13 21:09 ` Gilles Chanteperdrix
0 siblings, 0 replies; 4+ messages in thread
From: Gilles Chanteperdrix @ 2013-02-13 21:09 UTC (permalink / raw)
To: uMinded Strikes Again; +Cc: xenomai
On 02/13/2013 09:30 PM, uMinded Strikes Again wrote:
> Ok so I am on my way with kernel version 3.4.29 however my sun5i directory
> is quite lacking. If I compare /arch/arm/omap2/ their are dozens of files
> to the SOC features and a complete Kconfig file as well but in my
> /arch/arm/sun5i/ their are just the basics for the clock to run and no
> Kconfig at all!
>
> Is their a drivers patch out there for the sunxi chipsets or will I be
> writing my own for this whole architecture??
If you have a support for the 3.0 kernel, you may adapt it to a newer
kernel. Or indeed use the 3.0 kernel as a base for Xenomai. In this
case, the guide is:
http://xenomai.org/index.php/I-pipe:ArmPorting
Is what we have to help you. But:
- it seems the I-pipe core patches are a bit easier to port to new ARM
boards (we already had 3 new ports since the first I-pipe core patch for
3.2);
- this document is quite outdated, you would have to use the new version
explanations about GPIOs demuxing or tsc emulation;
- getting the full support for the processor you are intereseted in
merged into the mainline kernel may be more future proof than getting
stuck with Linux 3.0.
--
Gilles.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-02-13 21:09 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-13 4:08 [Xenomai] Porting IPIPE to SUN5I (Allwinner A13) uMinded Strikes Again
2013-02-13 8:40 ` Gilles Chanteperdrix
[not found] ` <CAPeEhaq-oMmhntc3rYDt-e1=qEorjkVj8G+qYKcNSxOggjGH7A@mail.gmail.com>
2013-02-13 20:30 ` [Xenomai] Fwd: " uMinded Strikes Again
2013-02-13 21:09 ` Gilles Chanteperdrix
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.