[U-Boot-Users] Customizing U-boot

T Michael Turney tmike at recipes4linux.com
Mon Sep 6 06:03:13 CEST 2004


-----Original Message-----
From: u-boot-users-admin at lists.sourceforge.net
[mailto:u-boot-users-admin at lists.sourceforge.net]On Behalf Of Roy
Sent: Friday, September 03, 2004 8:58 PM
To: u-boot-users at lists.sourceforge.net
Subject: [U-Boot-Users] Customizing U-boot



U-boot is made to suport many referense boards, but that the use of that?
it looks more like small OS than bootloader. It finaly must be customized to
support some specific design only.


> What would you like to have as a reference when you start writing
> firmware for a new board, especially if it isn't COTS hardware?  Do you
> really want to wonder about both the hardware and the firmware you
> are porting?  Of course it has to be customized, this is the nature of
> boot firmware, every hardware board that runs firmware is different.


But I have some problems with this. Can someone tell boot functions
sequence? they are highly scattered between c modules.
it taked very long even to find reset vector. u-boot source is not very
clear.
why random pars are in assembler and others in  C ?


> If you can't follow the boot sequence from .../cpu/XYZ/start.S,
> you don't have any business trying to port u-boot


When init.S from /board/walnut405 directory is used?
seems it is dublicated in /board/walnut405/walnut405.c but now in c
language.
when I dissasembled the compiled image I was unable to find anything from
init.S


> If you ever work for a commercial company that distributes software
> in the embedded space, you will come to recognize this hierarchy...
>
>	CPUA
>		BOARD1
>		BOARD2
>		BOARD3
>
>	CPUB
>		BOARD99
>		BOARD100
>		BOARD101
>
>Commercial products, generally, are created and distributed against a
>COTS hardware reference platform.  Every 8260 COTS hardware board
>has to do some things during boot that every other 8260 board has to
>do.  And it has to do some things that are specific to its own collection
>of hardware pieces.  I would expect that most public (non static)
> entry points in a file in cpua/board3 would be found somewhere in
>the cpua/board2 directory.


cpu/start.S does similar stuff and by some reason attempts to intialize some
unknnown FPGA which is clearly unrelated to cpu at all, and should be moved
to board specific module.


> Someone who worked on this particular piece of code before you
> obviously had a different opinion.  I'm not pretending to know which
> is correct, but would like to share an anecdote.  Once, while having
> supervisory responsibilities, I had a guy working on GUIs, with lots of
> supporting libraries and classes already provided.  In deference to some
> praise I offered him once, he replied, "Boss, if you like what I done,
> remember, I only reach these heights because I'm walking on the shoulders
> of the giants who came before me."


basicaly I would like to completely rewrite initialization procedure, and
put it all in one source file.
probably the best would be to discard all exsisting initialization source
and write new one.


> fine, do it.  You don't need permission.


but I need boot function sequence for that.
and point where the low level initialization is finished.


> .../cpu/XYZ/start.s
> .../lib_abc/board.c
>.../common/main.c


I need to make custom initialization for ram ,rom, blink leds on gpio.
and mainly remove al pnp stuff, like spd. probably no real board will ever
use spd for sram.
also removing everyhing unnesecary is required, flash is not hdd aftreall.
I need it for linuxAP the board is with single ppc405gp cpu with 1mb flash
and 8mb ram, uart1 pins, and probably pci interface.
so I need to fit uboot in something like 16kb or less, but first I need to
make it run at least.
(that 1mb must fit kernel , rootfs, cfgdata, and bootloader) with 486 type
cpu it is not big problem

Maybe someone know how much  u-boot can be stripped?



-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users





More information about the U-Boot mailing list