[U-Boot-Users] arm SoC code in U-Boot.

Ulf Samuelsson ulf at atmel.com
Mon Mar 5 12:38:22 CET 2007

----- Original Message ----- 
From: "Txema Lopez" <tlopez at aotek.es>
To: <u-boot-users at lists.sourceforge.net>
Sent: Friday, March 02, 2007 11:03 AM
Subject: [U-Boot-Users] arm SoC code in U-Boot.

> Hi all,
> I'm working in a port for the csb535fs board. I sent a patch to U-Boot 
> that includes a new directory (imx21) for the i.MX21 SoC related code 
> following the actual policy of U-Boot. Grant Likely thinks (and now I'm 
> agree) this code is very similar to imx code and must be put in the same 
> directory. But, the SoC related code in U-Boot is located on the 
> cpu/arm**** directories, so it's depends on the arm core. My idea is to 
> put all this SoC related code in a specific directory (cpu/arm_soc).
> This would be the patch for the makefile.
> --- Makefile    2007-02-27 09:59:17.000000000 +0100
> +++ NewMakefile    2007-03-02 09:19:33.000000000 +0100
> @@ -191,8 +191,12 @@ LIBS  = lib_generic/libgeneric.a
> LIBS += board/$(BOARDDIR)/lib$(BOARD).a
> LIBS += cpu/$(CPU)/lib$(CPU).a
> ifdef SOC
> +ifeq ($(ARCH),arm)
> +LIBS += cpu/arm_soc/$(SOC)/lib$(SOC).a
> +else
> LIBS += cpu/$(CPU)/$(SOC)/lib$(SOC).a
> endif
> +endif
> LIBS += lib_$(ARCH)/lib$(ARCH).a
> LIBS += fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a 
> fs/jffs2/libjffs2.a \
>     fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a
> So, these directories
>    at91rm9200
>    imx
>    ks8695
>    omap
>    s3c240x0
>    versatile
> Must be moved from cpu/arm**** directories to cpu/arm_soc directory.
> This change could be a quite intrusive and would affect quite a few 
> boards, so I need some feedback from the list.
> Wolfgang proposed a particular solution for the imx related code putting 
> it in a new directory (cpu/arm/imx_common). For me is OK too. I don't 
> know who has the last say in these questions but I would like to know 
> what will be the solution to not work in vain.

It won't fix the problem when you have chips with different CPU core
architectures sharing the same peripherals
I.E: ARM926 and AVR32

It is probably better to have directories for IP-vendors.

I.E. cpu/freescale/imx

This have already been proposed by Wolfgang.

Best Regards
Ulf Samuelsson

More information about the U-Boot mailing list