On Tue, Dec 21, 2010 at 4:05 PM, Alex Deucher <alexdeucher@xxxxxxxxx> wrote: > We were using the lockup struct from the wrong union. > > Signed-off-by: Alex Deucher <alexdeucher@xxxxxxxxx> > Cc: Jerome Glisse <jglisse@xxxxxxxxxx> Reviewed-by: Jerome Glisse <jglisse@xxxxxxxxxx> > --- > drivers/gpu/drm/radeon/r600.c | 10 ++++++++-- > 1 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c > index 2078108..292b282 100644 > --- a/drivers/gpu/drm/radeon/r600.c > +++ b/drivers/gpu/drm/radeon/r600.c > @@ -1345,13 +1345,19 @@ bool r600_gpu_is_lockup(struct radeon_device *rdev) > u32 srbm_status; > u32 grbm_status; > u32 grbm_status2; > + struct r100_gpu_lockup *lockup; > int r; > > + if (rdev->family >= CHIP_RV770) > + lockup = &rdev->config.rv770.lockup; > + else > + lockup = &rdev->config.r600.lockup; > + > srbm_status = RREG32(R_000E50_SRBM_STATUS); > grbm_status = RREG32(R_008010_GRBM_STATUS); > grbm_status2 = RREG32(R_008014_GRBM_STATUS2); > if (!G_008010_GUI_ACTIVE(grbm_status)) { > - r100_gpu_lockup_update(&rdev->config.r300.lockup, &rdev->cp); > + r100_gpu_lockup_update(lockup, &rdev->cp); > return false; > } > /* force CP activities */ > @@ -1363,7 +1369,7 @@ bool r600_gpu_is_lockup(struct radeon_device *rdev) > radeon_ring_unlock_commit(rdev); > } > rdev->cp.rptr = RREG32(R600_CP_RB_RPTR); > - return r100_gpu_cp_is_lockup(rdev, &rdev->config.r300.lockup, &rdev->cp); > + return r100_gpu_cp_is_lockup(rdev, lockup, &rdev->cp); > } > > int r600_asic_reset(struct radeon_device *rdev) > -- > 1.7.1.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/dri-devel > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel