[U-Boot] [PATCH][v2] driver/ifc:Change accessor function to take care of endianness

York Sun yorksun at freescale.com
Tue Jan 21 18:34:07 CET 2014


On 01/21/2014 09:29 AM, Scott Wood wrote:
> On Tue, 2014-01-21 at 10:14 +0100, Wolfgang Denk wrote:
>> Dear York,
>>
>> In message <F1D691E4-180A-4A2D-BE07-812547D46419 at freescale.com> you wrote:
>>>
>>>> On second thought, I also think we should avoid solutions where the
>>>> BE/LE test has to be done for each and every I/O accessor call again
>>>> and again.  We should rather do this just once, and for example set
>>>> function pointers as needed (hoping that this driver will only be
>>>> needed after relocation, so we have writable data segment).
>>>
>>> I like the idea of setting it just once, but I don't see how to
>>> implement it. A pointer is probably not the solution, because we do need
>>> some drivers before relocation.
>>
>> "some drivers before relocation" - how many which are these?

IFC, DDR, I2C (only 32-bit controller is concerned), GUT

>>
>> Also, is it really necessary to make the decision about endianess at
>> runtime?  We don't have multi-board support in U-Boot yet, so when you
>> build an image you know exactly which SoC you are building for, so you
>> should be able to make the selection at compile time?
> 
> It is done at compile time in this patch.
> 

No. It is not necessary to do it at run time. It would be easier to use a switch
to decide at compiling time. It does involve many changes to implement the wrapper.

York




More information about the U-Boot mailing list