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

York Sun yorksun at freescale.com
Thu Sep 26 22:46:11 CEST 2013


On 09/26/2013 01: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?
> 

It can't. That's why I am struggling. My temporary workaround is to
include those headers in sub-arch headers.

York





More information about the U-Boot mailing list