Skip to contentSkip to conversation

arm SoC code in U-Boot.

U-Boot-Users Txema Lopez 2 participants 2 messages Mar 2, 2007 – Mar 5, 2007 Kbuild

lore
Share & tools
lore
#0 lore raw

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.

NewMakefile 2007-03-02 09:19:33.000000000 +0100 renamed from Makefile 2007-02-27 09:59:17.000000000 +0100 +4 -0
@@ -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.

Best regards,

-------------- next part --------------
A non-text attachment was scrubbed...
Name: tlopez.vcf
Type: text/x-vcard
Size: 324 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20070302/3aa6a6e8/attachment.vcf

#1 lore raw

----- Original Message -----
From: "Txema Lopez" <[email protected]>
To: <[email protected]>
Sent: Friday, March 02, 2007 11:03 AM
Subject: [U-Boot-Users] arm SoC code in U-Boot.

Quoted 37 lines

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.

NewMakefile 2007-03-02 09:19:33.000000000 +0100 renamed from Makefile 2007-02-27 09:59:17.000000000 +0100 +0 -0
@@ -191,8 +191,12 @@ LIBS  = lib_generic/libgeneric.a

LIBS += board/$(BOARDDIR)/lib$(BOARD).a
LIBS += cpu/$(CPU)/lib$(CPU).a
ifdef SOC

NewMakefile 2007-03-02 09:19:33.000000000 +0100 renamed from Makefile 2007-02-27 09:59:17.000000000 +0100 +3 -0
+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.

Quoted 9 lines

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