[U-Boot] When to create a SoC directory for ARM

Scott Wood scottwood at freescale.com
Thu Sep 26 22:59:45 CEST 2013


On Thu, 2013-09-26 at 16:49 -0400, Tom Rini wrote:
> On 09/26/2013 04:44 PM, Scott Wood wrote:
> > On Thu, 2013-09-26 at 12:57 -0700, York Sun wrote:
> >> On 09/26/2013 12:55 PM, Scott Wood wrote:
> >>> On Thu, 2013-09-26 at 12:48 -0700, York Sun wrote:
> >>>> On 09/26/2013 12:46 PM, Sharma Bhupesh-B45370 wrote:
> >>>>> 
> >>>>>> -----Original Message----- From:
> >>>>>> u-boot-bounces at lists.denx.de
> >>>>>> [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Scott
> >>>>>> Wood Sent: Friday, September 27, 2013 12:53 AM To:
> >>>>>> FengHua Cc: trini; sun york-R58495; u-boot Subject: Re:
> >>>>>> [U-Boot] When to create a SoC directory for ARM
> >>>>>> 
> >>>>>> On Thu, 2013-09-26 at 13:23 +0800, FengHua wrote:
> >>>>>>> all SOC specific include file should be in 
> >>>>>>> arch/arm/include/asm/arch-SOC/ or some common
> >>>>>>> directory(like include/asm/imx-common). Currently,
> >>>>>>> u-boot only link SOC specific(arch-SOC) include
> >>>>>>> directory. You could touch a mmu.h file in
> >>>>>>> arch/arm/include/asm/arch-ls2/ and include
> >>>>>>> arch/arm/include/asm/arch-armv8/mmu.h. or move
> >>>>>>> arch-armv8/mmu.h to arch/arm/include/asm/ to make it as
> >>>>>>> a generic file. Maybe we should distinguish
> >>>>>>> architecture specific include directory and SOC
> >>>>>>> specific include directory.
> >>>>>> 
> >>>>>> Is the XXX arch-XXX supposed to be an SoC family or a
> >>>>>> CPU family/architectutre?
> >>>>>> 
> >>>>> 
> >>>>> Usually in 'arch/arm/include/asm' we have both: -
> >>>>> arch-armv7 (Arch specific. Houses stuff common to ARMv7
> >>>>> CPU, e.g. Global timer, SP805 WDT..) - arch-mx6 (SoC family
> >>>>> specific. Houses stuff like SoC specific IOMUX pads..)
> >>> 
> >>> Which one does "#inculde <asm/arch/foo.h>" refer to?
> >>> 
> >> 
> >> arm/arch is a symbolic link created at compiling time. It points
> >> to arm/arch-$(soc), if $(soc) is not defined, then it points to 
> >> asm/arch-$(arch). That's my understanding.
> > 
> > How is that supposed to work when both arch-$(soc) and arch-$(arch)
> > are present?  Why are SoC and CPU arch confused in this way?
> 
> Primarily because it hasn't been an issue until now really.  What's
> wrong with just saying <asm/arch-armv[78]/foo.h> as needed ?

Hmm, the only relevant <asm/arch/mmu.h> are in armv8-specific files, so
I suppose we could do that.  Why not just rename it asm/armv[78],
though?  There are only a handful of files in both armv7 and armv8, so
it shouldn't be too much of a problem.  Then there's no question of
where the symlink points.

-Scott





More information about the U-Boot mailing list