[U-Boot] uboot_porting_guide

Albert ARIBAUD albert.u.boot at aribaud.net
Tue Apr 16 08:17:09 CEST 2013


Hi Carmine,

On Mon, 15 Apr 2013 13:16:24 +0200, Carmine Garripoli
<garripoli.carmine at gmail.com> wrote:

> Hi everybody,
> I'm an electronics engineering student and i'm very passionated about 
> embedded systems. I would like to design my own totally custom board. 
> Supposing that i've already choosen an ARM microprocessor supported by 
> linux kernel, ram and nand flash and i've designed my board, i would 
> like to know if there is a generic guide for "u-boot porting". I've 
> already done a search on the net for "uboot porting guide" but 99,9% of 
> material i found sounds like "...if your board is similar to another 
> already existing", "....use command  make <boardname>_config with 
> similar board" etc. etc.
> Now does a general porting guide for uboot exist somewhere?

If you mean a step-by-step recipe starting from the ground up, no, you
won't find this I think. Really, the simplest and, in my experience,
most efficient method, is indeed to study how support for a similar
board was added.

I would suggest cloning the official git tree and then either looking
for commits that have "add support to" in their summary, or doing a 'git
log' on files specific to a given board; the oldest commit logged
should be the one where support for this board was added. These support
addition commits will show you which files were specifically modified
and added, which should give you a starting point for preparing your
own support patch.

This does not mean that you should start supporting every feature and
the (watch)dog, though! You should start simple, with only low level,
DRAM and console init; forget about USB, Ethernet, I2C etc unless they
are vital to booting.

Once you get a booting U-Boot and can enter commands at the console
prompt, and truly basic commands like md, mw, mtest work, then you can
add further functions like Flash support and from there, environment
storage and filesystems will follow; same goes for Ethernet and network
functions, etc.

> I really thank you for your answer

np

> Metalgarri

Amicalement,
-- 
Albert.


More information about the U-Boot mailing list