| .. | .. |
|---|
| 53 | 53 | nvkm_error(subdev, "ch %d fini: %08x\n", user, |
|---|
| 54 | 54 | nvkm_rd32(device, 0x610490 + (ctrl * 0x10))); |
|---|
| 55 | 55 | } |
|---|
| 56 | + |
|---|
| 57 | + chan->suspend_put = nvkm_rd32(device, 0x640000 + (ctrl * 0x1000)); |
|---|
| 56 | 58 | } |
|---|
| 57 | 59 | |
|---|
| 58 | 60 | static int |
|---|
| .. | .. |
|---|
| 68 | 70 | nvkm_wr32(device, 0x610498 + (ctrl * 0x0010), 0x00010000); |
|---|
| 69 | 71 | nvkm_wr32(device, 0x61049c + (ctrl * 0x0010), 0x00000001); |
|---|
| 70 | 72 | nvkm_mask(device, 0x610490 + (ctrl * 0x0010), 0x00000010, 0x00000010); |
|---|
| 71 | | - nvkm_wr32(device, 0x640000 + (ctrl * 0x1000), 0x00000000); |
|---|
| 73 | + nvkm_wr32(device, 0x640000 + (ctrl * 0x1000), chan->suspend_put); |
|---|
| 72 | 74 | nvkm_wr32(device, 0x610490 + (ctrl * 0x0010), 0x00000013); |
|---|
| 73 | 75 | |
|---|
| 74 | 76 | /* wait for it to go inactive */ |
|---|