PUSH_NVSQ
PUSH_NVSQ(push, NV_SW, NV_SW_PAGE_FLIP, 0x00000000);
PUSH_NVSQ(push, NV05F, 0x012c, 0);
PUSH_NVSQ(push, NV05F, 0x0134, head);
PUSH_NVSQ(push, NV05F, 0x0100, 0);
PUSH_NVSQ(push, NV05F, 0x0130, 0);
PUSH_NVSQ(push, NVC37D, 0x2074 + (i * 0x400), m->v.blank2e << 16 | m->v.blank2s);
PUSH_NVSQ(push, NVC37D, 0x2008 + (i * 0x400), m->interlace);
PUSH_NVSQ(push, NVC57D, 0x2074 + (i * 0x400), m->v.blank2e << 16 | m->v.blank2s);
PUSH_NVSQ(push, NVC57D, 0x2008 + (i * 0x400), m->interlace);
PUSH_NVSQ(push, NVC57D, 0x2020 + (head->base.index * 0x400), display_id);
PUSH_NVSQ(push, NV74C1, 0x0304, new_reg->size,
PUSH_NVSQ(push, NV85B5, 0x030c, upper_32_bits(src_offset),
PUSH_NVSQ(push, NV85B5, 0x0300, 0x00000110);
PUSH_NVSQ(push, NV90B5, 0x030c, upper_32_bits(src_offset),
PUSH_NVSQ(push, NVA0B5, 0x0000, handle & 0x0000ffff);
PUSH_NVSQ(&chan->chan.push, NV_SW, 0x0000, chan->nvsw.handle);
PUSH_NVSQ(push, NV05F, 0x0000, drm->channel->blit.handle);
PUSH_NVSQ(push, NV09F, 0x0120, 0,
PUSH_NVSQ(push, NV_SW, 0x0000, drm->channel->nvsw.handle);
PUSH_NVSQ(push, NV_SW, 0x0150, fence->base.seqno);