Skip to content

Commit

Permalink
drm/radeon: use packet2 for nop on hawaii with old firmware
Browse files Browse the repository at this point in the history
Older firmware didn't support the new nop packet.

v2 (Andreas Boll):
 - Drop usage of packet3 for new firmware

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com> (v1)
Signed-off-by: Andreas Boll <andreas.boll.dev@gmail.com>
Cc: stable@vger.kernel.org
  • Loading branch information
Alex Deucher committed Aug 5, 2014
1 parent cc6f353 commit 0e16e4c
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions drivers/gpu/drm/radeon/cik.c
Original file line number Diff line number Diff line change
Expand Up @@ -8259,6 +8259,7 @@ int cik_irq_process(struct radeon_device *rdev)
static int cik_startup(struct radeon_device *rdev)
{
struct radeon_ring *ring;
u32 nop;
int r;

/* enable pcie gen2/3 link */
Expand Down Expand Up @@ -8392,17 +8393,23 @@ static int cik_startup(struct radeon_device *rdev)
}
cik_irq_set(rdev);

if (rdev->family == CHIP_HAWAII) {
nop = RADEON_CP_PACKET2;
} else {
nop = PACKET3(PACKET3_NOP, 0x3FFF);
}

ring = &rdev->ring[RADEON_RING_TYPE_GFX_INDEX];
r = radeon_ring_init(rdev, ring, ring->ring_size, RADEON_WB_CP_RPTR_OFFSET,
PACKET3(PACKET3_NOP, 0x3FFF));
nop);
if (r)
return r;

/* set up the compute queues */
/* type-2 packets are deprecated on MEC, use type-3 instead */
ring = &rdev->ring[CAYMAN_RING_TYPE_CP1_INDEX];
r = radeon_ring_init(rdev, ring, ring->ring_size, RADEON_WB_CP1_RPTR_OFFSET,
PACKET3(PACKET3_NOP, 0x3FFF));
nop);
if (r)
return r;
ring->me = 1; /* first MEC */
Expand All @@ -8413,7 +8420,7 @@ static int cik_startup(struct radeon_device *rdev)
/* type-2 packets are deprecated on MEC, use type-3 instead */
ring = &rdev->ring[CAYMAN_RING_TYPE_CP2_INDEX];
r = radeon_ring_init(rdev, ring, ring->ring_size, RADEON_WB_CP2_RPTR_OFFSET,
PACKET3(PACKET3_NOP, 0x3FFF));
nop);
if (r)
return r;
/* dGPU only have 1 MEC */
Expand Down

0 comments on commit 0e16e4c

Please sign in to comment.