dev builds
themes manual
device status forums
mailing lists
IRC bugs
dev guide

Rockbox mail archive

Subject: Re: Volunteering for porting Rockbox

Re: Volunteering for porting Rockbox

From: sophana <>
Date: Fri, 27 Aug 2004 14:07:05 +0200

Daniel Stenberg wrote:

> On Thu, 26 Aug 2004, sophana wrote:
>> When you say 'restructure a lot of things' did you mean restructure
>> everything?
> Perhaps. I think the point is the same. Move around lots of source
> code to make it easier to port.
>> When I have a look into rockbox architecture, it is so much related
>> to the archos hardware that I wonder what is the percentage of code
>> that can be shared between 2 or more architectures...
> Then you have less belief in the Rockbox coding department than I have.
> We have not been forced to deal with this level of portability in the
> Rockbox code before, thus it is far from perfect at this moment. It
> doesn't mean we can't fix it, given some thoughts and efforts.
>> A good example is the display: between the players and recorders,
>> there are already 2 branches, and the common code does contain lots
>> of 'IFDEF'.
> Yes? #ifdefs is part of portable programming.
>> A common architecture is not so easy to find... Or should I say the
>> most standard architecture is ... posix, so porting rockbox into
>> linux (posix complient) would help a lot, and you could then run
>> rockbox on ipods.
> POSIX is not an architecture, it is a set of API:s. We have already
> tried to use the POSIX APIs for several of our internal functions just
> because people are used to them and they have been used successfully
> on many platforms for many years.
>> I know linux is not the smallest kernel ever seen. But there should
>> be other open source micro kernels with pseudo standard API that
>> rockbox could rely on.
> What would be the benefit of porting Rockbox over to a new kernel? It
> already has a "micro kernel" that is portable.
I would think that there might exist some small kernels that have
already been ported to lots of hardware platforms which could be similar
to the ones used in portable mp3 players. Porting rockbox to use this
hypothetic kernel would then greatly ease the porting to other hardware

>> One other big difference between hardware platforms is the memory
>> size: if linux could be ported to ipods, this probably means that
>> ipods have suffucient memory to host linux.
> 32MB ram should be able to run basicly any OS except windows! ;-)
> Sure, if booting Linux on a device and having it run there is easier,
> quicker and makes a better music player, then there's no need for
> Rockbox on such a platform.
> But, compared to for example the ipodlinux effort as documented on
> their site, Rockbox is a superiour music player than what they offer.
as you said, rockbox is superior to the ipod linux port, simply because
if you ported rockbox to linux, then you could have rockbox on ipod!
They did ported linux to ipod but they do not have the GUI as powerful
as rockbox.

>> Bringing an open source kernel into the archos should be the first
>> stage in improving rockbox portability.
> I don't see why you think the kernel is the biggest portability issue.
> I think the drivers are: LCD, sound (mp3, ogg, wav, etc) and USB for
> example.
these are pretty high level API that should run in user mode. under what
you call the sound driver, dont forget that you have lower level drivers:
IDE, DMA, block devices, file system, serial driver for mas, etc...
all these can be implemented using standard kernel api so they might be
reused on several hardware platforms.
The more you segment functions, the more reusable they are.
This is the same principe as object programming: interfaces everywhere.
By using an existing kernel, there can be hope in having less effort to
do by reusing existing code.

>> seems that avos have made a lot of work. they can play mp3 without
>> rockbox. it seems that this platform is the most reverse engineered.
> IIRC, the AV-series use a MAS for mp3.

Received on 2004-08-27

Page template was last modified "Tue Sep 7 00:00:02 2021" The Rockbox Crew -- Privacy Policy