From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mercury.testsyseng.com (unknown [209.120.144.205]) (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (168/168 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTP id F09B667B71 for ; Wed, 26 Jul 2006 09:57:56 +1000 (EST) Message-ID: <44C6AB80.9040000@digis.net> Date: Tue, 25 Jul 2006 17:38:40 -0600 From: bennett78 MIME-Version: 1.0 To: Clint Thomas Subject: Re: Booting Linux Kernel without bootloader References: <3C02138692C13C4BB675FE7EA240952915DF66@bluefin.Soneticom.local> In-Reply-To: <3C02138692C13C4BB675FE7EA240952915DF66@bluefin.Soneticom.local> Content-Type: multipart/alternative; boundary="------------060304030901080100020007" Cc: linuxppc-embedded@ozlabs.org Reply-To: bennett78@digis.net List-Id: Linux on Embedded PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , This is a multi-part message in MIME format. --------------060304030901080100020007 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit 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 > cthomas@soneticom.com > _______________________________________________ > >Linuxppc-embedded mailing list >Linuxppc-embedded@ozlabs.org >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 frank.bennett@triadsyseng.com / / "I think there's a world market for about five computers." -- attr. Thomas J. Watson (Chairman of the Board, IBM), 1943 --------------060304030901080100020007 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit 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
cthomas@soneticom.com
 _______________________________________________
Linuxppc-embedded mailing list
Linuxppc-embedded@ozlabs.org
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
frank.bennett@triadsyseng.com

"I think there's a world market for about five computers."
        -- attr. Thomas J. Watson (Chairman of the Board, IBM), 1943



--------------060304030901080100020007--