154 lines · c
1/*2 * Copyright (c) 2003-2004, NVIDIA CORPORATION. All rights reserved.3 *4 * Permission is hereby granted, free of charge, to any person obtaining a5 * copy of this software and associated documentation files (the "Software"),6 * to deal in the Software without restriction, including without limitation7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,8 * and/or sell copies of the Software, and to permit persons to whom the9 * Software is furnished to do so, subject to the following conditions:10 *11 * The above copyright notice and this permission notice shall be included in12 * all copies or substantial portions of the Software.13 *14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL17 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING19 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER20 * DEALINGS IN THE SOFTWARE.21 */22 23#ifndef _cl_nv50_memory_to_memory_format_h_24#define _cl_nv50_memory_to_memory_format_h_25 26#define NV5039_SET_OBJECT 0x000027#define NV5039_SET_OBJECT_POINTER 15:028 29#define NV5039_NO_OPERATION 0x010030#define NV5039_NO_OPERATION_V 31:031 32#define NV5039_SET_CONTEXT_DMA_NOTIFY 0x018033#define NV5039_SET_CONTEXT_DMA_NOTIFY_HANDLE 31:034 35#define NV5039_SET_CONTEXT_DMA_BUFFER_IN 0x018436#define NV5039_SET_CONTEXT_DMA_BUFFER_IN_HANDLE 31:037 38#define NV5039_SET_CONTEXT_DMA_BUFFER_OUT 0x018839#define NV5039_SET_CONTEXT_DMA_BUFFER_OUT_HANDLE 31:040 41#define NV5039_SET_SRC_MEMORY_LAYOUT 0x020042#define NV5039_SET_SRC_MEMORY_LAYOUT_V 0:043#define NV5039_SET_SRC_MEMORY_LAYOUT_V_BLOCKLINEAR 0x0000000044#define NV5039_SET_SRC_MEMORY_LAYOUT_V_PITCH 0x0000000145 46#define NV5039_SET_SRC_BLOCK_SIZE 0x020447#define NV5039_SET_SRC_BLOCK_SIZE_WIDTH 3:048#define NV5039_SET_SRC_BLOCK_SIZE_WIDTH_ONE_GOB 0x0000000049#define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT 7:450#define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_ONE_GOB 0x0000000051#define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_TWO_GOBS 0x0000000152#define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_FOUR_GOBS 0x0000000253#define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_EIGHT_GOBS 0x0000000354#define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_SIXTEEN_GOBS 0x0000000455#define NV5039_SET_SRC_BLOCK_SIZE_HEIGHT_THIRTYTWO_GOBS 0x0000000556#define NV5039_SET_SRC_BLOCK_SIZE_DEPTH 11:857#define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_ONE_GOB 0x0000000058#define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_TWO_GOBS 0x0000000159#define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_FOUR_GOBS 0x0000000260#define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_EIGHT_GOBS 0x0000000361#define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_SIXTEEN_GOBS 0x0000000462#define NV5039_SET_SRC_BLOCK_SIZE_DEPTH_THIRTYTWO_GOBS 0x0000000563 64#define NV5039_SET_SRC_WIDTH 0x020865#define NV5039_SET_SRC_WIDTH_V 31:066 67#define NV5039_SET_SRC_HEIGHT 0x020c68#define NV5039_SET_SRC_HEIGHT_V 31:069 70#define NV5039_SET_SRC_DEPTH 0x021071#define NV5039_SET_SRC_DEPTH_V 31:072 73#define NV5039_SET_SRC_LAYER 0x021474#define NV5039_SET_SRC_LAYER_V 31:075 76#define NV5039_SET_SRC_ORIGIN 0x021877#define NV5039_SET_SRC_ORIGIN_X 15:078#define NV5039_SET_SRC_ORIGIN_Y 31:1679 80#define NV5039_SET_DST_MEMORY_LAYOUT 0x021c81#define NV5039_SET_DST_MEMORY_LAYOUT_V 0:082#define NV5039_SET_DST_MEMORY_LAYOUT_V_BLOCKLINEAR 0x0000000083#define NV5039_SET_DST_MEMORY_LAYOUT_V_PITCH 0x0000000184 85#define NV5039_SET_DST_BLOCK_SIZE 0x022086#define NV5039_SET_DST_BLOCK_SIZE_WIDTH 3:087#define NV5039_SET_DST_BLOCK_SIZE_WIDTH_ONE_GOB 0x0000000088#define NV5039_SET_DST_BLOCK_SIZE_HEIGHT 7:489#define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_ONE_GOB 0x0000000090#define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_TWO_GOBS 0x0000000191#define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_FOUR_GOBS 0x0000000292#define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_EIGHT_GOBS 0x0000000393#define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_SIXTEEN_GOBS 0x0000000494#define NV5039_SET_DST_BLOCK_SIZE_HEIGHT_THIRTYTWO_GOBS 0x0000000595#define NV5039_SET_DST_BLOCK_SIZE_DEPTH 11:896#define NV5039_SET_DST_BLOCK_SIZE_DEPTH_ONE_GOB 0x0000000097#define NV5039_SET_DST_BLOCK_SIZE_DEPTH_TWO_GOBS 0x0000000198#define NV5039_SET_DST_BLOCK_SIZE_DEPTH_FOUR_GOBS 0x0000000299#define NV5039_SET_DST_BLOCK_SIZE_DEPTH_EIGHT_GOBS 0x00000003100#define NV5039_SET_DST_BLOCK_SIZE_DEPTH_SIXTEEN_GOBS 0x00000004101#define NV5039_SET_DST_BLOCK_SIZE_DEPTH_THIRTYTWO_GOBS 0x00000005102 103#define NV5039_SET_DST_WIDTH 0x0224104#define NV5039_SET_DST_WIDTH_V 31:0105 106#define NV5039_SET_DST_HEIGHT 0x0228107#define NV5039_SET_DST_HEIGHT_V 31:0108 109#define NV5039_SET_DST_DEPTH 0x022c110#define NV5039_SET_DST_DEPTH_V 31:0111 112#define NV5039_SET_DST_LAYER 0x0230113#define NV5039_SET_DST_LAYER_V 31:0114 115#define NV5039_SET_DST_ORIGIN 0x0234116#define NV5039_SET_DST_ORIGIN_X 15:0117#define NV5039_SET_DST_ORIGIN_Y 31:16118 119#define NV5039_OFFSET_IN_UPPER 0x0238120#define NV5039_OFFSET_IN_UPPER_VALUE 7:0121 122#define NV5039_OFFSET_OUT_UPPER 0x023c123#define NV5039_OFFSET_OUT_UPPER_VALUE 7:0124 125#define NV5039_OFFSET_IN 0x030c126#define NV5039_OFFSET_IN_VALUE 31:0127 128#define NV5039_OFFSET_OUT 0x0310129#define NV5039_OFFSET_OUT_VALUE 31:0130 131#define NV5039_PITCH_IN 0x0314132#define NV5039_PITCH_IN_VALUE 31:0133 134#define NV5039_PITCH_OUT 0x0318135#define NV5039_PITCH_OUT_VALUE 31:0136 137#define NV5039_LINE_LENGTH_IN 0x031c138#define NV5039_LINE_LENGTH_IN_VALUE 31:0139 140#define NV5039_LINE_COUNT 0x0320141#define NV5039_LINE_COUNT_VALUE 31:0142 143#define NV5039_FORMAT 0x0324144#define NV5039_FORMAT_IN 7:0145#define NV5039_FORMAT_IN_ONE 0x00000001146#define NV5039_FORMAT_OUT 15:8147#define NV5039_FORMAT_OUT_ONE 0x00000001148 149#define NV5039_BUFFER_NOTIFY 0x0328150#define NV5039_BUFFER_NOTIFY_TYPE 31:0151#define NV5039_BUFFER_NOTIFY_TYPE_WRITE_ONLY 0x00000000152#define NV5039_BUFFER_NOTIFY_TYPE_WRITE_THEN_AWAKEN 0x00000001153#endif /* _cl_nv50_memory_to_memory_format_h_ */154