[PATCH] drm/radeon: fix cursor corruption on aruba and newer

Alex Deucher alexdeucher at gmail.com
Mon Jan 21 14:10:48 PST 2013


On Mon, Jan 21, 2013 at 4:22 PM, Alex Deucher <alexdeucher at gmail.com> wrote:
> On Mon, Jan 21, 2013 at 3:50 PM,  <j.glisse at gmail.com> wrote:
>> From: Jerome Glisse <jglisse at redhat.com>
>>
>> Aruba and newer gpu does not need the avivo cursor work around,
>> quite the opposite this work around lead to corruption.
>>
>> Signed-off-by: Jerome Glisse <jglisse at redhat.com>
>> ---
>>  drivers/gpu/drm/radeon/radeon_cursor.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/radeon_cursor.c b/drivers/gpu/drm/radeon/radeon_cursor.c
>> index ad6df62..30f71cc 100644
>> --- a/drivers/gpu/drm/radeon/radeon_cursor.c
>> +++ b/drivers/gpu/drm/radeon/radeon_cursor.c
>> @@ -241,7 +241,7 @@ int radeon_crtc_cursor_move(struct drm_crtc *crtc,
>>                 y = 0;
>>         }
>>
>> -       if (ASIC_IS_AVIVO(rdev)) {
>> +       if (ASIC_IS_AVIVO(rdev) && (rdev->family < CHIP_ARUBA)) {
>
> I believe these issues were fixed on DCE6, but I'm verifying now.  SI
> is dce6 as well so the check here should probably be:
>
> if (ASIC_IS_AVIVO(rdev) && !ASIC_IS_DCE6(rdev)) {

Actually, the two patches are identical since:
#define ASIC_IS_DCE6(rdev) ((rdev->family >= CHIP_ARUBA))
but I think the DCE6 variant is clearer.  Once I verify with the hw
team I'll add the patch with that change.

Thanks!

Alex

>
> Alex
>
>>                 int i = 0;
>>                 struct drm_crtc *crtc_p;
>>
>> --
>> 1.7.11.7
>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/dri-devel


More information about the dri-devel mailing list