Subject: Re: OHCI question...
To: Lennart Augustsson <lennart@augustsson.net>
From: Garrett D'Amore <garrett_damore@tadpole.com>
List: tech-kern
Date: 11/01/2005 15:30:53
I've submitted diffs to do this (tested, somewhat) as part of PR 
port-evbmips/31912

Have a gander, and if folks like it, someone can take it on and 
integrate it.

    -- Garrett

Lennart Augustsson wrote:

> Masao Uebayashi wrote:
>
>> Hi!  We have a similar patch for MPC5200 in a local tree, where
>> registers are big-endian.
>>
>>
>>> 1) add logic to ohci.c to support run-time conditionalized byte 
>>> swapping.  Probably via a function pointer in the softc, this would 
>>> work, but might be a little bit slower.  (I'd conditionalize this 
>>> support via a new OHCI_NATIVE_ORDER or somesuch.)
>>
>>
>>
>> I'm in favor of this approach.
>>
>
> I do too.  Having another version of the driver seems wrong.
>
> But I wouldn't want to penalize ports that don't require dynamic
> swapping either.  You could define some new swapping macros
> OHTOLE32() and OLE32TOH() that can be defined to either the
> usual swapping functions if the conditional swapper.
>
> Furthermore, those macros could have the conditional test inside
> them so there doesn't have to be a function call for each swap.
> (Assuming there is a performance problem.  I actually doubt there
> is.)
>
>     -- Lennart