0001 #ifndef __NVIF_PUSH507C_H__
0002 #define __NVIF_PUSH507C_H__
0003 #include <nvif/push.h>
0004
0005 #include <nvhw/class/cl507c.h>
0006
0007 #define PUSH_HDR(p,m,c) do { \
0008 PUSH_ASSERT(!((m) & ~DRF_SMASK(NV507C_DMA_METHOD_OFFSET)), "mthd"); \
0009 PUSH_ASSERT(!((c) & ~DRF_MASK(NV507C_DMA_METHOD_COUNT)), "size"); \
0010 PUSH_DATA__((p), NVDEF(NV507C, DMA, OPCODE, METHOD) | \
0011 NVVAL(NV507C, DMA, METHOD_COUNT, (c)) | \
0012 NVVAL(NV507C, DMA, METHOD_OFFSET, (m) >> 2), \
0013 " mthd 0x%04x size %d - %s", (u32)(m), (u32)(c), __func__); \
0014 } while(0)
0015
0016 #define PUSH_MTHD_HDR(p,s,m,c) PUSH_HDR(p,m,c)
0017 #define PUSH_MTHD_INC 4:4
0018
0019 #define PUSH_JUMP(p,o) do { \
0020 PUSH_ASSERT(!((o) & ~DRF_SMASK(NV507C_DMA_JUMP_OFFSET)), "offset"); \
0021 PUSH_DATA__((p), NVDEF(NV507C, DMA, OPCODE, JUMP) | \
0022 NVVAL(NV507C, DMA, JUMP_OFFSET, (o) >> 2), \
0023 " jump 0x%08x - %s", (u32)(o), __func__); \
0024 } while(0)
0025 #endif