[U-Boot] [PATCH v2 1/7] ARM: prepare armv7.h to be included from assembly source

Andre Przywara andre.przywara at linaro.org
Thu Jul 4 09:38:27 CEST 2013


On 06/28/2013 03:00 AM, Masahiro Yamada wrote:
> Hello Andre,

Hi,

thanks a lot for the review! I included most of the fixes you proposed
in the next version I will send out soon.
Very useful comments, thanks again!

>> diff --git a/arch/arm/include/asm/armv7.h b/arch/arm/include/asm/armv7.h
>> index a73630b..20caa7c 100644
>> --- a/arch/arm/include/asm/armv7.h
>> +++ b/arch/arm/include/asm/armv7.h
>> @@ -23,7 +23,6 @@
>>    */
>>   #ifndef ARMV7_H
>>   #define ARMV7_H
>> -#include <linux/types.h>
>>   
>>   /* Cortex-A9 revisions */
>>   #define MIDR_CORTEX_A9_R0P1	0x410FC091
>> @@ -57,6 +56,9 @@
>>   #define ARMV7_CLIDR_CTYPE_INSTRUCTION_DATA	3
>>   #define ARMV7_CLIDR_CTYPE_UNIFIED		4
>>   
>> +#ifndef __ASSEMBLY__
>> +#include <linux/types.h>
>> +
>>   /*
>>    * CP15 Barrier instructions
>>    * Please note that we have separate barrier instructions in ARMv7
>> @@ -74,4 +76,6 @@ void v7_outer_cache_inval_all(void);
>>   void v7_outer_cache_flush_range(u32 start, u32 end);
>>   void v7_outer_cache_inval_range(u32 start, u32 end);
>>   
>> +#endif /* ! __ASSEMBLY__ */
>> +
>>   #endif
> 
> 
> Instread of moving #include <linux/types.h> line,
> I'd like to suggest to add #ifndef __ASSEMBLY__ guard
> to include/linux/types.h.
> I think this is a more correct way of fixing.
> 
> 
> If I see Linux Kernel "include/linux/types.h",
> typedefs are placed inside #ifndef  __ASSEMBLEY__ .. #endif.
> 
> On the other hand, "include/linux/types.h" of U-Boot
> does not have #ifndef __ASSEMBLY__ guard.

I tried, but finally decided against it. It is not clear what parts of
types.h are actually usable from assembly files, so I stuck with my
solution. Feel free to send a follow-up patch if you think it's useful.

Regards,
Andre.



More information about the U-Boot mailing list