diff options
| author | Xia Yang <xiay@nvidia.com> | 2016-02-25 17:59:08 +0900 | 
|---|---|---|
| committer | Ben Skeggs <bskeggs@redhat.com> | 2016-03-14 10:13:30 +1000 | 
| commit | 0689aad70d719842c3a07f5782b7d35bb12efe9d (patch) | |
| tree | 74ae1433a9d3923472ba49d47a57a31c0a352de4 | |
| parent | 9d0394c6bed5b4b78167cc0eea294754a9cb2bbc (diff) | |
drm/nouveau/fifo/gk104: fix chid bit mask
Fix the channel id bit mask in FIFO schedule timeout error handling.
FIFO_ENGINE_STATUS_NEXT_ID is bit 27:16 thus 0x0fff0000.
FIFO_ENGINE_STATUS_ID      is bit 11:0  thus 0x00000fff.
Signed-off-by: Xia Yang <xiay@nvidia.com>
Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
| -rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c | 4 | 
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c index 4fcd147d43c8..d6a88cf67416 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c @@ -198,11 +198,11 @@ gk104_fifo_intr_sched_ctxsw(struct gk104_fifo *fifo)  	for (engn = 0; engn < ARRAY_SIZE(fifo->engine); engn++) {  		u32 stat = nvkm_rd32(device, 0x002640 + (engn * 0x08));  		u32 busy = (stat & 0x80000000); -		u32 next = (stat & 0x07ff0000) >> 16; +		u32 next = (stat & 0x0fff0000) >> 16;  		u32 chsw = (stat & 0x00008000);  		u32 save = (stat & 0x00004000);  		u32 load = (stat & 0x00002000); -		u32 prev = (stat & 0x000007ff); +		u32 prev = (stat & 0x00000fff);  		u32 chid = load ? next : prev;  		(void)save;  | 
