0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 #ifndef _cl_nv50_memory_to_memory_format_h_
0024 #define _cl_nv50_memory_to_memory_format_h_
0025
0026 #define NV5039_SET_OBJECT 0x0000
0027 #define NV5039_SET_OBJECT_POINTER 15:0
0028
0029 #define NV5039_NO_OPERATION 0x0100
0030 #define NV5039_NO_OPERATION_V 31:0
0031
0032 #define NV5039_SET_CONTEXT_DMA_NOTIFY 0x0180
0033 #define NV5039_SET_CONTEXT_DMA_NOTIFY_HANDLE 31:0
0034
0035 #define NV5039_SET_CONTEXT_DMA_BUFFER_IN 0x0184
0036 #define NV5039_SET_CONTEXT_DMA_BUFFER_IN_HANDLE 31:0
0037
0038 #define NV5039_SET_CONTEXT_DMA_BUFFER_OUT 0x0188
0039 #define NV5039_SET_CONTEXT_DMA_BUFFER_OUT_HANDLE 31:0
0040
0041 #define NV5039_SET_SRC_MEMORY_LAYOUT 0x0200
0042 #define NV5039_SET_SRC_MEMORY_LAYOUT_V 0:0
0043 #define NV5039_SET_SRC_MEMORY_LAYOUT_V_BLOCKLINEAR 0x00000000
0044 #define NV5039_SET_SRC_MEMORY_LAYOUT_V_PITCH 0x00000001
0045
0046 #define NV5039_SET_SRC_BLOCK_SIZE 0x0204
0047 #define NV5039_SET_SRC_BLOCK_SIZE_WIDTH 3:0
0048 #define NV5039_SET_SRC_BLOCK_SIZE_WIDTH_ONE_GOB 0x00000000
0049 #define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT 7:4
0050 #define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_ONE_GOB 0x00000000
0051 #define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_TWO_GOBS 0x00000001
0052 #define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_FOUR_GOBS 0x00000002
0053 #define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_EIGHT_GOBS 0x00000003
0054 #define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_SIXTEEN_GOBS 0x00000004
0055 #define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_THIRTYTWO_GOBS 0x00000005
0056 #define NV5039_SET_SRC_BLOCK_SIZE_DEPTH 11:8
0057 #define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_ONE_GOB 0x00000000
0058 #define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_TWO_GOBS 0x00000001
0059 #define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_FOUR_GOBS 0x00000002
0060 #define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_EIGHT_GOBS 0x00000003
0061 #define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_SIXTEEN_GOBS 0x00000004
0062 #define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_THIRTYTWO_GOBS 0x00000005
0063
0064 #define NV5039_SET_SRC_WIDTH 0x0208
0065 #define NV5039_SET_SRC_WIDTH_V 31:0
0066
0067 #define NV5039_SET_SRC_HEIGHT 0x020c
0068 #define NV5039_SET_SRC_HEIGHT_V 31:0
0069
0070 #define NV5039_SET_SRC_DEPTH 0x0210
0071 #define NV5039_SET_SRC_DEPTH_V 31:0
0072
0073 #define NV5039_SET_SRC_LAYER 0x0214
0074 #define NV5039_SET_SRC_LAYER_V 31:0
0075
0076 #define NV5039_SET_SRC_ORIGIN 0x0218
0077 #define NV5039_SET_SRC_ORIGIN_X 15:0
0078 #define NV5039_SET_SRC_ORIGIN_Y 31:16
0079
0080 #define NV5039_SET_DST_MEMORY_LAYOUT 0x021c
0081 #define NV5039_SET_DST_MEMORY_LAYOUT_V 0:0
0082 #define NV5039_SET_DST_MEMORY_LAYOUT_V_BLOCKLINEAR 0x00000000
0083 #define NV5039_SET_DST_MEMORY_LAYOUT_V_PITCH 0x00000001
0084
0085 #define NV5039_SET_DST_BLOCK_SIZE 0x0220
0086 #define NV5039_SET_DST_BLOCK_SIZE_WIDTH 3:0
0087 #define NV5039_SET_DST_BLOCK_SIZE_WIDTH_ONE_GOB 0x00000000
0088 #define NV5039_SET_DST_BLOCK_SIZE_HEIGHT 7:4
0089 #define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_ONE_GOB 0x00000000
0090 #define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_TWO_GOBS 0x00000001
0091 #define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_FOUR_GOBS 0x00000002
0092 #define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_EIGHT_GOBS 0x00000003
0093 #define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_SIXTEEN_GOBS 0x00000004
0094 #define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_THIRTYTWO_GOBS 0x00000005
0095 #define NV5039_SET_DST_BLOCK_SIZE_DEPTH 11:8
0096 #define NV5039_SET_DST_BLOCK_SIZE_DEPTH_ONE_GOB 0x00000000
0097 #define NV5039_SET_DST_BLOCK_SIZE_DEPTH_TWO_GOBS 0x00000001
0098 #define NV5039_SET_DST_BLOCK_SIZE_DEPTH_FOUR_GOBS 0x00000002
0099 #define NV5039_SET_DST_BLOCK_SIZE_DEPTH_EIGHT_GOBS 0x00000003
0100 #define NV5039_SET_DST_BLOCK_SIZE_DEPTH_SIXTEEN_GOBS 0x00000004
0101 #define NV5039_SET_DST_BLOCK_SIZE_DEPTH_THIRTYTWO_GOBS 0x00000005
0102
0103 #define NV5039_SET_DST_WIDTH 0x0224
0104 #define NV5039_SET_DST_WIDTH_V 31:0
0105
0106 #define NV5039_SET_DST_HEIGHT 0x0228
0107 #define NV5039_SET_DST_HEIGHT_V 31:0
0108
0109 #define NV5039_SET_DST_DEPTH 0x022c
0110 #define NV5039_SET_DST_DEPTH_V 31:0
0111
0112 #define NV5039_SET_DST_LAYER 0x0230
0113 #define NV5039_SET_DST_LAYER_V 31:0
0114
0115 #define NV5039_SET_DST_ORIGIN 0x0234
0116 #define NV5039_SET_DST_ORIGIN_X 15:0
0117 #define NV5039_SET_DST_ORIGIN_Y 31:16
0118
0119 #define NV5039_OFFSET_IN_UPPER 0x0238
0120 #define NV5039_OFFSET_IN_UPPER_VALUE 7:0
0121
0122 #define NV5039_OFFSET_OUT_UPPER 0x023c
0123 #define NV5039_OFFSET_OUT_UPPER_VALUE 7:0
0124
0125 #define NV5039_OFFSET_IN 0x030c
0126 #define NV5039_OFFSET_IN_VALUE 31:0
0127
0128 #define NV5039_OFFSET_OUT 0x0310
0129 #define NV5039_OFFSET_OUT_VALUE 31:0
0130
0131 #define NV5039_PITCH_IN 0x0314
0132 #define NV5039_PITCH_IN_VALUE 31:0
0133
0134 #define NV5039_PITCH_OUT 0x0318
0135 #define NV5039_PITCH_OUT_VALUE 31:0
0136
0137 #define NV5039_LINE_LENGTH_IN 0x031c
0138 #define NV5039_LINE_LENGTH_IN_VALUE 31:0
0139
0140 #define NV5039_LINE_COUNT 0x0320
0141 #define NV5039_LINE_COUNT_VALUE 31:0
0142
0143 #define NV5039_FORMAT 0x0324
0144 #define NV5039_FORMAT_IN 7:0
0145 #define NV5039_FORMAT_IN_ONE 0x00000001
0146 #define NV5039_FORMAT_OUT 15:8
0147 #define NV5039_FORMAT_OUT_ONE 0x00000001
0148
0149 #define NV5039_BUFFER_NOTIFY 0x0328
0150 #define NV5039_BUFFER_NOTIFY_TYPE 31:0
0151 #define NV5039_BUFFER_NOTIFY_TYPE_WRITE_ONLY 0x00000000
0152 #define NV5039_BUFFER_NOTIFY_TYPE_WRITE_THEN_AWAKEN 0x00000001
0153 #endif