On Tue, Mar 9, 2010 at 2:35 PM, Michael Cree <mc...@orcon.net.nz> wrote: > On 10/03/10 05:17, Matt Turner wrote: >> >> On Mon, Mar 8, 2010 at 6:30 PM, Michael Cree<mc...@orcon.net.nz> wrote: >>> >>> On 9/03/2010, at 5:41 AM, Alex Deucher wrote: >>>> >>>> On Sun, Mar 7, 2010 at 3:47 AM, Michael Cree<mc...@orcon.net.nz> wrote: >>>>> >>>>> Thanks, that hint was helpful. I have drummed up a patch (attached) >>>>> that >>>>> replaces some use of the UINT16LE_TO_CPU(), etc., macros with generic >>>>> interfaces from the Xserver's compiler.h header file. Now works >>>>> correctly >>>>> on RV610 video card on an Alpha XP1000. Have also verified that the >>>>> driver >>>>> still works on an RV710 card on AMD64 architecture. >>>>> >>>>> The patch applies cleanly against the 6.12.5 branch and also upstream >>>>> git >>>>> master. >>>>> >>>>> Alex: may I presume that you will handle getting it upstream for review >>>>> and >>>>> hopefully acceptance into the fdo git master. >>>> >>>> I'll take a look at it. My only concern would be making sure these >>>> changes don't break big endian which is the reason the macros were >>>> added in the first place. >>> >>> It should work, but worth running a check. My understanding is that the >>> ldw_u(), etc., macros/functions in compiler.h are supposed to handle all >>> architectural issues, including endianess, alignment, and certain >>> hardware >>> limitations on byte/word access. >> >> I'm not sure they cover endianness. I cleaned them up last >> summer--there are no #ifdef BIGENDIANs in there. > > Bother, it looks like you are right. On re-looking at compiler.h I now see > that there is only one definition of them and it doesn't appear to address > endianess. Double bother! >
Can you add the alignment stuff to the ATOM_BSWAP16/32 functions in radeon_atombios.c? e.g., return ldw_u(bswap_16(x)); etc. Alex > So what do you recommend we use to access the AtomBios that will handle both > endianess and alignment issues? The alignment issue on Alpha only occurs > when one can't use BWX instructions which is the case for Debian as it is > compiled for generic Alpha architecture. > > Could we use the MMIO_IN/OUT routines and pass the address as the base and a > zero offset? > > Cheers > Michael. > -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/a728f9f91003091144o3884ac18q193353dbe4b3d...@mail.gmail.com