Bug#572311: No display output from Radeon RV610 on Alpha

Michael Cree mcree at orcon.net.nz
Fri Mar 12 01:57:01 PST 2010


On 10/03/10 08:44, Alex Deucher wrote:
>>>>> On Sun, Mar 7, 2010 at 3:47 AM, Michael Cree<mcree at 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.
>
> Can you add the alignment stuff to the ATOM_BSWAP16/32 functions in
> radeon_atombios.c?
> e.g.,
> return ldw_u(bswap_16(x));

That's a good idea, however I think the ldw_u() must be inside the byte 
swap as the (mis)alignment issues must be dealt with at the point of 
loading the datum, whereas endianess can be fixed later.

Attached is a new patch that uses the ldw_u() macros and also leaves the 
UINT16LE_TO_CPU, etc., macros in place.  Verified working on Alpha and 
AMD64 architectures, but I don't have a suitable big-endian machine to 
test this.

Cheers
Michael.


More information about the xorg-driver-ati mailing list