
On 09/26/2013 02:03 PM, Tom Rini wrote:
On 09/26/2013 04:59 PM, Scott Wood wrote:
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@lists.denx.de >>> [mailto:u-boot-bounces@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.
That should also be fine, after a quick git grep around..
How about arch/arm/include/asm/gpio.h? it includes <asm/arch/gpio.h>.
York