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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 8/15/14 9:52, Max Filippov wrote:
> On Fri, Aug 15, 2014 at 5:47 AM, Max Filippov <jcmvbkbc@xxxxxxxxx> wrote:
>> Hi Chen,
>>
>> On Thu, Aug 14, 2014 at 8:54 PM, Chen Gang <gang.chen.5i5j@xxxxxxxxx> 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.

Please check this comments, thanks.

>>
>> [...]
>>
>>> 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.
> 

Yeah, at present, it always select CPU_LITTLE_ENDIAN, next, Kbuild need
be improved for it, just the comments said.

If this patch can be pass checking, I shall improve the Kbuild for it,
also will modify some individual drivers to use CPU_*_ENDIAN.

I guess, we need Cc to kbuild for getting more ideas, suggestions, or
completions.



THanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux