Hi Sean,
My apologies in advance, these days I have very little time to
devote to this project.
Anyhow, having said that I've attached an html rendering of a note
you will find under 'doc' in the LTIB CVS distribution. It
describes in principle how to add a new platform. Note that the
section about the toolchain will work, but is not how most platforms
are handled these days (they use toolchains.lkc).
Fundamentally, what you need is:
- A working pre-compiled cross toolchain that is compatible with
LTIB (that used to mean CodeSourcery style toolchains from the
2004 era).
- A kernel.spec file. Actually you just need the fragment that
referecnes your kernel sources. See
config/platform/ep93xx/kernel-2.6.15-ep93xx.spec.in for an
example. .spec files can go in you platform directory (as in
this example) or if common to more than one platform under
dist/lfs-5.1/xxx
- A platform defconfig (described in the note).
Sorry to be so brief, but take a look at this note, and the others
in the doc directory and have a scan of the FAQ at
http://ltib.org/documentation-LtibFaq and see how you get on. There
are others on this list who have also been through this who may be
able to help.
Regards, Stuart
On 16/09/12 06:02, Malloy, Sean C. wrote:
I've made a successful first pass at LTIB for the Raspberry Pi and was wondering how much more actual work was in front of me if I wanted my config added to the official list of platforms.
As of now, what I have working is this:
Kernel 3.2.27-cutdown is your only choice for a kernel, and it builds from local source. I should download kernels from the RasPi sites during the build...
I built my own custom toolchain using ct-ng and glibc. Support for uClibc needs to be verified. And perhaps an official toolchain for RPi should be selected or built.
As of right now, I have to copy images to the SD card manually as the RPi wants /boot on partition 1 as FAT, and the rootfs on partition 2 as ext4, though the type is configurable. I'm sure there's a way to automate this, but I haven't found it yet. (RPi doesn't use a real boot loader, but instead boots the GPU, who then acts as a boot loader for the CPU. Apparently the GPU binary is closed source.)
Busybox is being used as init. Currently, if Busybox is dynamically linked, I get the dreaded "no init found" Panic message on boot. If staticly linked, I boot to a login prompt. This is odd because I was able to run a dynamically linked hello world program as /sbin/init successfully. I'll get this figured out eventually.
So, in this basic configuration, top shows a memory usage of just 4.5M in a not-very-optimized setup, without X.
If there's enough interest in adding RPi support to LTIB, I'll be happy to share so long as I can get some guidance as to what I need to do in order to get it ready for prime time.
_______________________________________________
LTIB home page: http://ltib.org
Ltib mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/ltib
|