Subject: Re: Booting Linux Kernel without bootloader

From: bennett78 <[email-masked]>
Date: Tue, 25 Jul 2006 17:38:40 -0600

Clint Thomas wrote:

> Hey guys,
>
> I have gone through the Linuxppc embedded and dev lists for 
> information related to what I am trying to do, but was unable to find 
> exactly what i'm looking for.
>
> Basically, the system I want linux running on does not require the 
> initialization of hardware that U-boot provides, or at least it does 
> not need it to boot the linux kernel. I want to load an uncompressed 
> linux kernel into memory and start the execution of the kernel, 
> without using any kind of bootloader. Is this possible? Or does linux 
> need some kind of firmware or other software to tell it to start 
> executing? Thanks for any info you might have.

You seem to be looking for a striped down U-boot functionality:
    o copy flash to ram and run code
but to do this:
    o processor registers need to be initilized
    o caches need to be flushed
    o interrupts need to be disabled
    o C environment (stack) needs to be setup
U-boot is fairly small compared to a x86 BIOS which has to find
multiple boot device choices, yet supports multiple architectures.

I'm using a BDI2000 to load/debug u-boot running in SDRAM
for a new PPC hardware design.  U-boot is probably easier to
debug than the kernel!
U-boot has other features that help with initial H/W turnon:
    o it's a debug/monitor
          o ram test
          o ram/register read/modify
    o u-boot environment
          o IP address, mac address
          o Linux boot options - NFS verses flash
          o Ethernet/NFS option using a server enables:
             o debugging kernel changes
             o debugging kernel driver modules
             o quick change of application processes
             o cross compile target code on server to local target
             o telnet to embedded H/W
    o knows how to flash partitions
          o u-boot (/dev/mtd0) (well I use the BDI to flash here)
          o can flash kernel (/dev/mtd1)
          o can flash root fs (/dev/mtd2)
          o can flash config data (/dev/mtd3)
          o this partitioning will help with future F/W updates
          o kind of required if your flash is soldered to the board
          o to read/write flash requires u-boot to relocate itself to ram

>  
> Clinton Thomas
> [email-masked]
>  _______________________________________________
>
>Linuxppc-embedded mailing list
>[email-masked]
>https://ozlabs.org/mailman/listinfo/linuxppc-embedded
>
Frank Bennett

*/Technical Contractor/*

/Triad Systems Engineering
200 West Mountain Avenue, Suite 103C
Ft. Collins, CO 80521
/http://www.traidsyseng.com <http://www.triadsyseng.com>
[email-masked] <mailto:[email-masked]>/
/
"I think there's a world market for about five computers."
        -- attr. Thomas J. Watson (Chairman of the Board, IBM), 1943