OpenMoko FreeRunner and Real Time Kernel

View: New views
13 Messages — Rating Filter:   Alert me  

OpenMoko FreeRunner and Real Time Kernel

by Ken Restivo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I just received my OpenMoko FreeRunner phone and have been poking around in it, trying to learn my way around it.

I found this interesting:

        root@om-gta02:~# cat /proc/version
        Linux version 2.6.24 (build@barbie) (gcc version 4.1.2) #1 PREEMPT Thu Apr 24 08:23:36 CST 2008

Hmm... the FreeRunner ships with an Ingo patched RT kernel?

It's tempting to try to port JACK and maybe FluidSynth to it and see what happens.

-ken
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Jeremy Henty-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, Jul 14, 2008 at 02:28:04AM -0700, Ken Restivo wrote:

> I found this interesting:
>
> root@om-gta02:~# cat /proc/version
> Linux version 2.6.24 (build@barbie) (gcc version 4.1.2) #1 PREEMPT Thu Apr 24 08:23:36 CST 2008
>
> Hmm... the FreeRunner ships with an Ingo patched RT kernel?

Not  necessarily  IMO.   I   run  a  vanilla  kernel.org  kernel  with
"CONFIG_PREEMPT=y"  and I  see "PREEMPT"  in /proc/version  too.  What
does "zcat /proc/config.gz | grep PREEMPT" say?

Regards,

Jeremy Henty
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Anders Dahnielson :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



On Mon, Jul 14, 2008 at 11:28, Ken Restivo <ken@...> wrote:
I just received my OpenMoko FreeRunner phone and have been poking around in it, trying to learn my way around it.

I found this interesting:

       root@om-gta02:~# cat /proc/version
       Linux version 2.6.24 (build@barbie) (gcc version 4.1.2) #1 PREEMPT Thu Apr 24 08:23:36 CST 2008

Hmm... the FreeRunner ships with an Ingo patched RT kernel?

Nope. It would otherwise say "PREEMPT RT" like this:

Linux monolith 2.6.24.7-rt8 #2 SMP PREEMPT RT

--
Anders Dahnielson
<anders@...>
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Ray Rashif :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Well, it _is_ embedded platform - which means it _needs_ preemption. It's got nothing to do with audio signals, 100% about data latency. Maybe you could make it sequence and synthesize lighter samples and instruments, but looking at the spec sheet I don't think we can expect that much.

_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Ken Restivo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, Jul 14, 2008 at 02:46:57PM +0200, Anders Dahnielson wrote:

> On Mon, Jul 14, 2008 at 11:28, Ken Restivo <ken@...> wrote:
>
> > I just received my OpenMoko FreeRunner phone and have been poking around in
> > it, trying to learn my way around it.
> >
> > I found this interesting:
> >
> >        root@om-gta02:~# cat /proc/version
> >        Linux version 2.6.24 (build@barbie) (gcc version 4.1.2) #1 PREEMPT
> > Thu Apr 24 08:23:36 CST 2008
> >
> > Hmm... the FreeRunner ships with an Ingo patched RT kernel?
>
>
> Nope. It would otherwise say "PREEMPT RT" like this:
>
> Linux monolith 2.6.24.7-rt8 #2 SMP PREEMPT RT
>


Really? I've been running a home-made Ingo patched RT kernel on my laptop for over a year now, and I get this:

        [ken@asus ~]$ cat /proc/version
        Linux version 2.6.21-rt1-1 (root@asus) (gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP PREEMPT Thu May 3 00:41:41 PDT 2007


No "RT" there, but I definitely know it is an RT kernel, because I patched it myself.

But, this whole thing is merely a curiosity anyway, since the FreeRunner doesn't have enough CPU to do much audio stuff. In fact PulseAudio is so slow on this phone that the audio hiccups when just playing an OGG file using ogg123, if the terminal application is open and updating with ogg123's stderr output. I'm told this is to do with the ARM's lack of support for atomic operations, which PulseAudio requires, and the use of interrupt masking and spinlocks as a hack around that.

-ken
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Thomas Vecchione-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



On Mon, Jul 14, 2008 at 1:25 PM, Ken Restivo <ken@...> wrote:
... In fact PulseAudio is so slow on this phone that the audio hiccups when just playing an OGG file using ogg123, if the terminal application is open and updating with ogg123's stderr output. I'm told this is to do with the ARM's lack of support for atomic operations, which PulseAudio requires, and the use of interrupt masking and spinlocks as a hack around that....

Hmm does ogg123 use the tremor libraries to play oggs?  I know on the n700/n8*0 we actually have to use the tremor libs to avoid floating point operations, which the standard ogg libraries do.  If it doesn't I might say that would be a fairly good chunk of your performance problems there.

      Seablade

_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Florian Schmidt :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Ken,

On Monday 14 July 2008, Ken Restivo wrote:
> Linux version 2.6.21-rt1-1 (root@asus) (gcc version 4.1.2 20061115
                             ^^^^^The version string shows it though :)

> (prerelease) (Debian 4.1.1-21)) #1 SMP PREEMPT Thu May 3 00:41:41 PDT 2007
>
>
> No "RT" there, but I definitely know it is an RT kernel, because I patched
> it myself.

Regards,
Flo

--
Palimm Palimm!
http://tapas.affenbande.org
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Rui Nuno Capela :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Florian Schmidt wrote:

> Hi Ken,
>
> On Monday 14 July 2008, Ken Restivo wrote:
>> Linux version 2.6.21-rt1-1 (root@asus) (gcc version 4.1.2 20061115
>                              ^^^^^The version string shows it though :)
>
>> (prerelease) (Debian 4.1.1-21)) #1 SMP PREEMPT Thu May 3 00:41:41 PDT 2007
>>
>>
>> No "RT" there, but I definitely know it is an RT kernel, because I patched
>> it myself.
>

i'm afraid you're betting on the wrong horse :)

you could have patched it alright (no doubt about that) and also set
EXTRAVERSION with the "-rt1-1" suffix, but, unless you've set
CONFIG_PREEMPT_RT=y you're not running a full-preeept RT kernel, that's
for sure.

afaict, when one talks about a RT linux kernel, he/she's meaning that
CONFIG_PREEMPT_RT=y and then, trust me, the "RT" will appear in the
`uname -a` line output.

byee
--
rncbc aka Rui Nuno Capela
rncbc@...
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Brad Fuller-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, Jul 14, 2008 at 2:28 AM, Ken Restivo <ken@...> wrote:
> I just received my OpenMoko FreeRunner phone and have been poking around in it, trying to learn my way around it.

Tell us how you like the phone as a phone. What service are you running?
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Marc-Olivier Barre-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, 14 Jul 2008 02:28:04 -0700, Ken Restivo <ken@...> wrote:
> I just received my OpenMoko FreeRunner phone and have been poking around
in

> it, trying to learn my way around it.
>
> I found this interesting:
>
> root@om-gta02:~# cat /proc/version
> Linux version 2.6.24 (build@barbie) (gcc version 4.1.2) #1 PREEMPT Thu
> Apr 24 08:23:36 CST 2008
>
> Hmm... the FreeRunner ships with an Ingo patched RT kernel?
>
> It's tempting to try to port JACK and maybe FluidSynth to it and see what
> happens.

Hi,

Welcome on board ;-)

The kernel is a normal preempt. As others have stated you need "PREEMPT RT"
to appear. Just so you know, I had tested building a JACK ipk and managed
to install it on an emulated phone a while back. I know some changed where
made by Paul to JACK's autotools stuff WRT code optimization for this
purpose.

Jack did run although I haven't been testing it deeply... I doubt the beast
is powerful enough to run fluidsynth.

Now, if you or others are interested, join #openmoko-devel on freenode.
we're working on a "Stable Hybrid Realease" here. It's good fun, and I'm
guessing that even if JACK is not what is used by the phone, all audio
hands are welcome. I got myself on the migration of the dialer to the new
dbus interface...

Cheers !

-- Marc-Olivier Barre --
 --- MarcO'Chapeau ----
- www.marcochapeau.org -

_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Ken Restivo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, Jul 14, 2008 at 04:06:28PM -0700, Brad Fuller wrote:
> On Mon, Jul 14, 2008 at 2:28 AM, Ken Restivo <ken@...> wrote:
> > I just received my OpenMoko FreeRunner phone and have been poking around in it, trying to learn my way around it.
>
> Tell us how you like the phone as a phone. What service are you running?

Off topic now, but sure.

As a phone, it's just barely useful. I'm using the cheap 7-11 pay-as-you-go AT&T plan, and I popped in my SIM and it just worked. So the hardware is all there, but the software is extremely skeletal.

However, as a development platform, it is cool and addicting and totally fun. It's very slick. The development environment and tools are excellent, and it's exciting to see development moving so very fast now. Porting is relatively straightforward, and there are all kinds of Python bindings and d-bus hooks, making it easy to write new apps.

If you want a phone, get an HTC or Ming. If you want a rewarding project, then defintely get an OpenMoko.

-ken
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Ken Restivo :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Mon, Jul 14, 2008 at 11:48:18PM +0100, Rui Nuno Capela wrote:

> Florian Schmidt wrote:
> > Hi Ken,
> >
> > On Monday 14 July 2008, Ken Restivo wrote:
> >> Linux version 2.6.21-rt1-1 (root@asus) (gcc version 4.1.2 20061115
> >                              ^^^^^The version string shows it though :)
> >
> >> (prerelease) (Debian 4.1.1-21)) #1 SMP PREEMPT Thu May 3 00:41:41 PDT 2007
> >>
> >>
> >> No "RT" there, but I definitely know it is an RT kernel, because I patched
> >> it myself.
> >
>
> i'm afraid you're betting on the wrong horse :)
>
> you could have patched it alright (no doubt about that) and also set
> EXTRAVERSION with the "-rt1-1" suffix, but, unless you've set
> CONFIG_PREEMPT_RT=y you're not running a full-preeept RT kernel, that's
> for sure.
>
> afaict, when one talks about a RT linux kernel, he/she's meaning that
> CONFIG_PREEMPT_RT=y and then, trust me, the "RT" will appear in the
> `uname -a` line output.
>

On my laptop, CONFIG_PREEMPT_RT is set, but no "RT" appears in the uname -a line.

It's definitely a RT kernel. I've been running it for a year now.

-ken
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user

Re: OpenMoko FreeRunner and Real Time Kernel

by Rui Nuno Capela :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Tue, July 15, 2008 20:02, Ken Restivo wrote:

> On Mon, Jul 14, 2008 at 11:48:18PM +0100, Rui Nuno Capela wrote:
>
>> Florian Schmidt wrote:
>>
>>> Hi Ken,
>>>
>>>
>>> On Monday 14 July 2008, Ken Restivo wrote:
>>>
>>>> Linux version 2.6.21-rt1-1 (root@asus) (gcc version 4.1.2 20061115
>>>>
>>> ^^^^^The version string shows it though :)
>>>
>>>
>>>> (prerelease) (Debian 4.1.1-21)) #1 SMP PREEMPT Thu May 3 00:41:41
>>>> PDT 2007
>>>>
>>>>
>>>>
>>>> No "RT" there, but I definitely know it is an RT kernel, because I
>>>> patched it myself.
>>>
>>
>> i'm afraid you're betting on the wrong horse :)
>>
>> you could have patched it alright (no doubt about that) and also set
>> EXTRAVERSION with the "-rt1-1" suffix, but, unless you've set
>> CONFIG_PREEMPT_RT=y you're not running a full-preeept RT kernel, that's
>> for sure.
>>
>> afaict, when one talks about a RT linux kernel, he/she's meaning that
>> CONFIG_PREEMPT_RT=y and then, trust me, the "RT" will appear in the
>> `uname -a` line output.
>>
>>
>
> On my laptop, CONFIG_PREEMPT_RT is set, but no "RT" appears in the uname
> -a line.
>

strange.

> It's definitely a RT kernel. I've been running it for a year now.
>

dunno when that "RT" got in the uname -a line, but one other way for you
to check that your kernel is _actually_ a full real-time preempt kernel is
for seeing the existence of the irq service handler threads like this (as
root)

  ps -ef | grep -i IRQ

check that out, not that it makes a difference other than a point
--
rncbc aka Rui Nuno Capela
rncbc@...

_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@...
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user
LightInTheBox - Buy quality products at wholesale price