2 Jun 2002 23:01
[Ppcboot-users] [FYI] Free Embedded Linux Development Kit released
Wolfgang Denk <wd <at> denx.de>
2002-06-02 21:01:21 GMT
2002-06-02 21:01:21 GMT
Olching, Germany - June 1, 2002 DENX Software Engineering announces the first release of a new Embedded Linux Development Kit (ELDK). Our ELDK provides a complete and powerful software development environment for Embedded and Real-Time Systems: This version of ELDK runs on x86/Linux, x86/FreeBSD and on SPARC/Solaris host operating systems and supports a wide range of PowerPC target processors (8xx, 82xx, 7xx, 74xx, 4xx). It consists of: o Cross Development Tools (Compiler, Assembler, Linker etc.) to develop software for the target system. o Native tools (Shell, commands and libraries) that will run on the target system. o PPCBoot Firmware that can easily be ported to new boards and processors. o Linux kernel including all device drivers, board-support functions etc. o RTAI (Real Time Application Interface) Extension for systems requiring hard real-time responses. o SELF (Simple Embedded Linux Framework) as fundament to build your embedded systems on. All components are available with complete source code, most of it under GPL. Also, detailed instructions to rebuild all the tools and packages from scratch are included.(Continue reading)
I build a "special" kernel that has a hardcoded amount of memory
reserved (like 8M or something). I just do this by subtracting out
of the total memory reported by a board descriptor (or however the
memory is reported). I then have a simple program that mmap()'s
this space, copies a kernel image into it, then calls the reboot system
call with a specified start address (the 'startaddr=' thing you see
in the code now).
There have been discussions and patches that will do this from a fully
running system by reallocating and coalescing contiguous physical pages,
but I have never done that.
I only do this instead of writing boot roms. On something like the 82xx
which has a fairly stable kernel, I write a couple of Kbytes of processor
initialization code and then just start up Linux from flash with an initrd.
With an autoconfig network and NFS mount, you can make this fit into 512K bytes
of space. I then use this kernel to provide all of the networking services
or other drivers I need to boot another kernel that you want for the real
system operation. I never load a new kernel from this "real" one I want to use.
I'm not sure I would recommend booting a kernel from a running kernel as
standard practice. You have to be careful of the state of all of the peripherals,
RSS Feed