[PATCH v3] arch: Kconfig: Let all architectures set endian explicitly

Max Filippov jcmvbkbc at gmail.com
Fri Aug 15 11:52:09 EST 2014


On Fri, Aug 15, 2014 at 5:47 AM, Max Filippov <jcmvbkbc at gmail.com> wrote:
> Hi Chen,
>
> On Thu, Aug 14, 2014 at 8:54 PM, Chen Gang <gang.chen.5i5j at gmail.com> wrote:
>> Normal architectures:
>>
>>  - Big endian: avr32, frv, m68k, openrisc, parisc, s390, sparc
>>
>>  - Little endian: alpha, blackfin, cris, hexagon, ia64, metag, mn10300,
>>                   score, unicore32, x86
>>
>>  - Choose in config time: arc, arm, arm64, c6x, m32r, mips, powerpc, sh
>>
>> Special architectures:
>>
>>  - Deside by compiler: microblaze, tile, xtensa.
>>
>>  - Deside by building host: um
>>
>>  - Next, need improve Kbuild to probe endian to deside whether need mark
>>    __BUILDING_TIME_BIG_ENDIAN__ before real config.
>
> [...]
>
>> diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
>> index 3a617af..a3e8f7e 100644
>> --- a/arch/xtensa/Kconfig
>> +++ b/arch/xtensa/Kconfig
>> @@ -22,6 +22,8 @@ config XTENSA
>>         select HAVE_IRQ_TIME_ACCOUNTING
>>         select HAVE_PERF_EVENTS
>>         select COMMON_CLK
>> +       select CPU_BIG_ENDIAN if __BUILDING_TIME_BIG_ENDIAN__
>> +       select CPU_LITTLE_ENDIAN if !CPU_BIG_ENDIAN
>>         help
>>           Xtensa processors are 32-bit RISC machines designed by Tensilica
>>           primarily for embedded systems.  These processors are both
>
> I've tested this part and it doesn't select neither CPU_BIG_ENDIAN,
> nor CPU_LITTLE_ENDIAN. And looking into the Kconfig/Kbuild I cound't

Correction: it always selects CPU_LITTLE_ENDIAN, regardless of the
compiler endianness.

> find anything related to __BUILDING_TIME_BIG_ENDIAN__. Am I missing
> something?

-- 
Thanks.
-- Max


More information about the Linuxppc-dev mailing list