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

Andre Przywara
2013-07-04T07:38:27Z

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.