23#ifndef HIP_INCLUDE_HIP_DRIVER_TYPES_H
24#define HIP_INCLUDE_HIP_DRIVER_TYPES_H
28#if !(defined(__HIP_PLATFORM_HCC__) || defined(__HIP_PLATFORM_AMD__)) && (defined(__HIP_PLATFORM_NVCC__) || defined(__HIP_PLATFORM_NVIDIA__))
30#elif (defined(__HIP_PLATFORM_HCC__) || defined(__HIP_PLATFORM_AMD__)) && !(defined(__HIP_PLATFORM_NVCC__) || defined(__HIP_PLATFORM_NVIDIA__))
34#define HIP_INCLUDE_HIP_HCC_DETAIL_DRIVER_TYPES_H
35#if !defined(__HIPCC_RTC__)
54#define HIP_TRSA_OVERRIDE_FORMAT 0x01
55#define HIP_TRSF_READ_AS_INTEGER 0x01
56#define HIP_TRSF_NORMALIZED_COORDINATES 0x02
57#define HIP_TRSF_SRGB 0x10
95#if !defined(__HIPCC_RTC__)
141typedef enum HIPresourcetype_enum {
150typedef enum HIPaddress_mode_enum {
159typedef enum HIPfilter_mode_enum {
166typedef struct HIP_TEXTURE_DESC_st {
175 float borderColor[4];
218typedef enum HIPresourceViewFormat_enum
282typedef struct HIP_RESOURCE_DESC_st
301 unsigned int numChannels;
328typedef struct HIP_RESOURCE_VIEW_DESC_st
338 unsigned int reserved[16];
344#if !defined(__HIPCC_RTC__)
405static inline struct hipPitchedPtr make_hipPitchedPtr(void* d,
size_t p,
size_t xsz,
414static inline struct hipPos make_hipPos(size_t
x, size_t
y, size_t
z) {
421static inline struct hipExtent make_hipExtent(size_t w, size_t h, size_t d) {
477#error("Must define exactly one of __HIP_PLATFORM_AMD__ or __HIP_PLATFORM_NVIDIA__");
hipChannelFormatKind
Definition driver_types.h:41
@ hipChannelFormatKindFloat
Definition driver_types.h:44
@ hipChannelFormatKindNone
Definition driver_types.h:45
@ hipChannelFormatKindUnsigned
Definition driver_types.h:43
@ hipChannelFormatKindSigned
Definition driver_types.h:42
hipResourcetype
Definition driver_types.h:141
@ HIP_RESOURCE_TYPE_ARRAY
Definition driver_types.h:142
@ HIP_RESOURCE_TYPE_PITCH2D
Definition driver_types.h:145
@ HIP_RESOURCE_TYPE_MIPMAPPED_ARRAY
Definition driver_types.h:143
@ HIP_RESOURCE_TYPE_LINEAR
Definition driver_types.h:144
HIPfilter_mode
Definition driver_types.h:159
@ HIP_TR_FILTER_MODE_POINT
Definition driver_types.h:160
@ HIP_TR_FILTER_MODE_LINEAR
Definition driver_types.h:161
hipMemcpyKind
Definition driver_types.h:345
@ hipMemcpyDefault
Runtime will automatically determine copy-kind based on virtual addresses.
Definition driver_types.h:350
@ hipMemcpyHostToHost
Host-to-Host Copy.
Definition driver_types.h:346
@ hipMemcpyDeviceToHost
Device-to-Host Copy.
Definition driver_types.h:348
@ hipMemcpyDeviceToDevice
Device-to-Device Copy.
Definition driver_types.h:349
@ hipMemcpyHostToDevice
Host-to-Device Copy.
Definition driver_types.h:347
HIPresourceViewFormat
Definition driver_types.h:219
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC1
Definition driver_types.h:245
@ HIP_RES_VIEW_FORMAT_UINT_1X8
Definition driver_types.h:221
@ HIP_RES_VIEW_FORMAT_FLOAT_4X32
Definition driver_types.h:244
@ HIP_RES_VIEW_FORMAT_UINT_1X32
Definition driver_types.h:233
@ HIP_RES_VIEW_FORMAT_UINT_1X16
Definition driver_types.h:227
@ HIP_RES_VIEW_FORMAT_UINT_2X16
Definition driver_types.h:228
@ HIP_RES_VIEW_FORMAT_SINT_2X16
Definition driver_types.h:231
@ HIP_RES_VIEW_FORMAT_SINT_2X8
Definition driver_types.h:225
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC6H
Definition driver_types.h:252
@ HIP_RES_VIEW_FORMAT_SINT_4X16
Definition driver_types.h:232
@ HIP_RES_VIEW_FORMAT_UINT_2X8
Definition driver_types.h:222
@ HIP_RES_VIEW_FORMAT_UINT_4X8
Definition driver_types.h:223
@ HIP_RES_VIEW_FORMAT_SINT_1X32
Definition driver_types.h:236
@ HIP_RES_VIEW_FORMAT_NONE
Definition driver_types.h:220
@ HIP_RES_VIEW_FORMAT_SINT_2X32
Definition driver_types.h:237
@ HIP_RES_VIEW_FORMAT_SINT_4X8
Definition driver_types.h:226
@ HIP_RES_VIEW_FORMAT_SIGNED_BC4
Definition driver_types.h:249
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC7
Definition driver_types.h:254
@ HIP_RES_VIEW_FORMAT_SIGNED_BC6H
Definition driver_types.h:253
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC4
Definition driver_types.h:248
@ HIP_RES_VIEW_FORMAT_UINT_4X16
Definition driver_types.h:229
@ HIP_RES_VIEW_FORMAT_FLOAT_4X16
Definition driver_types.h:241
@ HIP_RES_VIEW_FORMAT_SINT_1X8
Definition driver_types.h:224
@ HIP_RES_VIEW_FORMAT_SIGNED_BC5
Definition driver_types.h:251
@ HIP_RES_VIEW_FORMAT_FLOAT_2X32
Definition driver_types.h:243
@ HIP_RES_VIEW_FORMAT_SINT_1X16
Definition driver_types.h:230
@ HIP_RES_VIEW_FORMAT_FLOAT_2X16
Definition driver_types.h:240
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC5
Definition driver_types.h:250
@ HIP_RES_VIEW_FORMAT_UINT_4X32
Definition driver_types.h:235
@ HIP_RES_VIEW_FORMAT_FLOAT_1X16
Definition driver_types.h:239
@ HIP_RES_VIEW_FORMAT_SINT_4X32
Definition driver_types.h:238
@ HIP_RES_VIEW_FORMAT_UINT_2X32
Definition driver_types.h:234
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC3
Definition driver_types.h:247
@ HIP_RES_VIEW_FORMAT_FLOAT_1X32
Definition driver_types.h:242
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC2
Definition driver_types.h:246
hipPointer_attribute
Definition driver_types.h:442
@ HIP_POINTER_ATTRIBUTE_DEVICE_ORDINAL
Definition driver_types.h:454
@ HIP_POINTER_ATTRIBUTE_IS_LEGACY_HIP_IPC_CAPABLE
Definition driver_types.h:456
@ HIP_POINTER_ATTRIBUTE_RANGE_SIZE
Size of the address range for this requested pointer.
Definition driver_types.h:460
@ HIP_POINTER_ATTRIBUTE_DEVICE_POINTER
address at which the pointer is allocated on device
Definition driver_types.h:446
@ HIP_POINTER_ATTRIBUTE_BUFFER_ID
Unique ID for an allocated memory region.
Definition driver_types.h:452
@ HIP_POINTER_ATTRIBUTE_MAPPED
Definition driver_types.h:461
@ HIP_POINTER_ATTRIBUTE_MEMPOOL_HANDLE
Definition driver_types.h:470
@ HIP_POINTER_ATTRIBUTE_CONTEXT
Definition driver_types.h:443
@ HIP_POINTER_ATTRIBUTE_HOST_POINTER
address at which the pointer is allocated on host
Definition driver_types.h:447
@ HIP_POINTER_ATTRIBUTE_IS_GPU_DIRECT_RDMA_CAPABLE
Definition driver_types.h:465
@ HIP_POINTER_ATTRIBUTE_SYNC_MEMOPS
Definition driver_types.h:450
@ HIP_POINTER_ATTRIBUTE_P2P_TOKENS
Definition driver_types.h:448
@ HIP_POINTER_ATTRIBUTE_ACCESS_FLAGS
Definition driver_types.h:468
@ HIP_POINTER_ATTRIBUTE_IS_MANAGED
Indicates if the pointer points to managed memory.
Definition driver_types.h:453
@ HIP_POINTER_ATTRIBUTE_MEMORY_TYPE
memory type describing location of a pointer
Definition driver_types.h:445
@ HIP_POINTER_ATTRIBUTE_RANGE_START_ADDR
Starting address for this requested pointer.
Definition driver_types.h:459
@ HIP_POINTER_ATTRIBUTE_ALLOWED_HANDLE_TYPES
for this allocation
Definition driver_types.h:463
void * hipDeviceptr_t
Definition driver_types.h:40
hipFunction_attribute
Definition driver_types.h:428
@ HIP_FUNC_ATTRIBUTE_MAX
Definition driver_types.h:439
@ HIP_FUNC_ATTRIBUTE_BINARY_VERSION
Definition driver_types.h:435
@ HIP_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK
Definition driver_types.h:429
@ HIP_FUNC_ATTRIBUTE_CACHE_MODE_CA
Definition driver_types.h:436
@ HIP_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT
Definition driver_types.h:438
@ HIP_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES
Definition driver_types.h:432
@ HIP_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES
Definition driver_types.h:430
@ HIP_FUNC_ATTRIBUTE_NUM_REGS
Definition driver_types.h:433
@ HIP_FUNC_ATTRIBUTE_CONST_SIZE_BYTES
Definition driver_types.h:431
@ HIP_FUNC_ATTRIBUTE_PTX_VERSION
Definition driver_types.h:434
@ HIP_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES
Definition driver_types.h:437
const struct hipArray * hipArray_const_t
Definition driver_types.h:117
hipResourceViewFormat
Definition driver_types.h:181
@ hipResViewFormatSignedInt2
Definition driver_types.h:199
@ hipResViewFormatSignedChar4
Definition driver_types.h:188
@ hipResViewFormatFloat1
Definition driver_types.h:204
@ hipResViewFormatUnsignedBlockCompressed5
Definition driver_types.h:212
@ hipResViewFormatNone
Definition driver_types.h:182
@ hipResViewFormatUnsignedChar2
Definition driver_types.h:184
@ hipResViewFormatSignedShort4
Definition driver_types.h:194
@ hipResViewFormatUnsignedBlockCompressed4
Definition driver_types.h:210
@ hipResViewFormatSignedInt4
Definition driver_types.h:200
@ hipResViewFormatUnsignedInt2
Definition driver_types.h:196
@ hipResViewFormatSignedShort2
Definition driver_types.h:193
@ hipResViewFormatHalf4
Definition driver_types.h:203
@ hipResViewFormatFloat4
Definition driver_types.h:206
@ hipResViewFormatUnsignedBlockCompressed1
Definition driver_types.h:207
@ hipResViewFormatUnsignedInt1
Definition driver_types.h:195
@ hipResViewFormatUnsignedChar4
Definition driver_types.h:185
@ hipResViewFormatUnsignedInt4
Definition driver_types.h:197
@ hipResViewFormatSignedBlockCompressed6H
Definition driver_types.h:215
@ hipResViewFormatUnsignedBlockCompressed2
Definition driver_types.h:208
@ hipResViewFormatHalf2
Definition driver_types.h:202
@ hipResViewFormatUnsignedShort1
Definition driver_types.h:189
@ hipResViewFormatSignedBlockCompressed5
Definition driver_types.h:213
@ hipResViewFormatSignedBlockCompressed4
Definition driver_types.h:211
@ hipResViewFormatHalf1
Definition driver_types.h:201
@ hipResViewFormatSignedChar2
Definition driver_types.h:187
@ hipResViewFormatFloat2
Definition driver_types.h:205
@ hipResViewFormatUnsignedBlockCompressed3
Definition driver_types.h:209
@ hipResViewFormatUnsignedChar1
Definition driver_types.h:183
@ hipResViewFormatSignedChar1
Definition driver_types.h:186
@ hipResViewFormatUnsignedBlockCompressed6H
Definition driver_types.h:214
@ hipResViewFormatUnsignedBlockCompressed7
Definition driver_types.h:216
@ hipResViewFormatSignedShort1
Definition driver_types.h:192
@ hipResViewFormatUnsignedShort2
Definition driver_types.h:190
@ hipResViewFormatUnsignedShort4
Definition driver_types.h:191
@ hipResViewFormatSignedInt1
Definition driver_types.h:198
hipArray_Format
Definition driver_types.h:58
@ HIP_AD_FORMAT_UNSIGNED_INT16
Definition driver_types.h:60
@ HIP_AD_FORMAT_HALF
Definition driver_types.h:65
@ HIP_AD_FORMAT_UNSIGNED_INT32
Definition driver_types.h:61
@ HIP_AD_FORMAT_UNSIGNED_INT8
Definition driver_types.h:59
@ HIP_AD_FORMAT_SIGNED_INT8
Definition driver_types.h:62
@ HIP_AD_FORMAT_SIGNED_INT32
Definition driver_types.h:64
@ HIP_AD_FORMAT_SIGNED_INT16
Definition driver_types.h:63
@ HIP_AD_FORMAT_FLOAT
Definition driver_types.h:66
hipResourceType
Definition driver_types.h:135
@ hipResourceTypeArray
Definition driver_types.h:136
@ hipResourceTypeMipmappedArray
Definition driver_types.h:137
@ hipResourceTypePitch2D
Definition driver_types.h:139
@ hipResourceTypeLinear
Definition driver_types.h:138
hipArray_t hiparray
Definition driver_types.h:116
const struct hipMipmappedArray * hipMipmappedArray_const_t
Definition driver_types.h:131
HIPaddress_mode
Definition driver_types.h:150
@ HIP_TR_ADDRESS_MODE_WRAP
Definition driver_types.h:151
@ HIP_TR_ADDRESS_MODE_BORDER
Definition driver_types.h:154
@ HIP_TR_ADDRESS_MODE_MIRROR
Definition driver_types.h:153
@ HIP_TR_ADDRESS_MODE_CLAMP
Definition driver_types.h:152
hipMemoryType
Definition hip_runtime_api.h:161
Definition driver_types.h:74
size_t Width
Definition driver_types.h:75
size_t Depth
Definition driver_types.h:77
size_t Height
Definition driver_types.h:76
enum hipArray_Format Format
Definition driver_types.h:78
unsigned int NumChannels
Definition driver_types.h:79
unsigned int Flags
Definition driver_types.h:80
Definition driver_types.h:68
size_t Width
Definition driver_types.h:69
unsigned int NumChannels
Definition driver_types.h:72
enum hipArray_Format Format
Definition driver_types.h:71
size_t Height
Definition driver_types.h:70
Definition driver_types.h:380
unsigned int srcY
Definition driver_types.h:382
hipArray_t srcArray
Definition driver_types.h:388
unsigned int WidthInBytes
Definition driver_types.h:401
unsigned int dstLOD
Definition driver_types.h:394
hipDeviceptr_t dstDevice
Definition driver_types.h:397
hipDeviceptr_t srcDevice
Definition driver_types.h:387
unsigned int dstXInBytes
Definition driver_types.h:391
unsigned int srcXInBytes
Definition driver_types.h:381
unsigned int srcLOD
Definition driver_types.h:384
unsigned int srcZ
Definition driver_types.h:383
unsigned int srcHeight
Definition driver_types.h:390
hipMemoryType dstMemoryType
Definition driver_types.h:395
unsigned int Height
Definition driver_types.h:402
hipArray_t dstArray
Definition driver_types.h:398
hipMemoryType srcMemoryType
Definition driver_types.h:385
unsigned int srcPitch
Definition driver_types.h:389
unsigned int dstY
Definition driver_types.h:392
void * dstHost
Definition driver_types.h:396
unsigned int dstHeight
Definition driver_types.h:400
unsigned int Depth
Definition driver_types.h:403
const void * srcHost
Definition driver_types.h:386
unsigned int dstPitch
Definition driver_types.h:399
unsigned int dstZ
Definition driver_types.h:393
Definition driver_types.h:283
unsigned int flags
Definition driver_types.h:310
size_t height
Definition driver_types.h:303
hipArray_t hArray
Definition driver_types.h:287
size_t pitchInBytes
Definition driver_types.h:304
HIPresourcetype resType
Definition driver_types.h:284
hipDeviceptr_t devPtr
Definition driver_types.h:293
hipMipmappedArray_t hMipmappedArray
Definition driver_types.h:290
hipArray_Format format
Definition driver_types.h:294
size_t width
Definition driver_types.h:302
unsigned int numChannels
Definition driver_types.h:295
size_t sizeInBytes
Definition driver_types.h:296
Definition driver_types.h:329
size_t width
Definition driver_types.h:331
unsigned int firstMipmapLevel
Definition driver_types.h:334
unsigned int lastMipmapLevel
Definition driver_types.h:335
unsigned int firstLayer
Definition driver_types.h:336
size_t depth
Definition driver_types.h:333
size_t height
Definition driver_types.h:332
HIPresourceViewFormat format
Definition driver_types.h:330
unsigned int lastLayer
Definition driver_types.h:337
Definition driver_types.h:166
float maxMipmapLevelClamp
Definition driver_types.h:174
unsigned int flags
Definition driver_types.h:169
float mipmapLevelBias
Definition driver_types.h:172
float minMipmapLevelClamp
Definition driver_types.h:173
unsigned int maxAnisotropy
Definition driver_types.h:170
HIPfilter_mode filterMode
Definition driver_types.h:168
HIPfilter_mode mipmapFilterMode
Definition driver_types.h:171
Definition driver_types.h:96
void * dstHost
Definition driver_types.h:107
size_t srcXInBytes
Definition driver_types.h:97
size_t WidthInBytes
Definition driver_types.h:111
size_t dstPitch
Definition driver_types.h:110
size_t dstY
Definition driver_types.h:105
hipMemoryType dstMemoryType
Definition driver_types.h:106
hipDeviceptr_t srcDevice
Definition driver_types.h:101
hipDeviceptr_t dstDevice
Definition driver_types.h:108
hipMemoryType srcMemoryType
Definition driver_types.h:99
size_t srcY
Definition driver_types.h:98
size_t Height
Definition driver_types.h:112
hipArray * dstArray
Definition driver_types.h:109
const void * srcHost
Definition driver_types.h:100
size_t dstXInBytes
Definition driver_types.h:104
hipArray * srcArray
Definition driver_types.h:102
size_t srcPitch
Definition driver_types.h:103
Definition driver_types.h:82
unsigned int type
Definition driver_types.h:85
bool isDrv
Definition driver_types.h:91
enum hipArray_Format Format
Definition driver_types.h:89
unsigned int NumChannels
Definition driver_types.h:90
unsigned int width
Definition driver_types.h:86
void * data
Definition driver_types.h:83
unsigned int height
Definition driver_types.h:87
unsigned int depth
Definition driver_types.h:88
unsigned int flags
Definition driver_types.h:93
unsigned int textureType
Definition driver_types.h:92
struct hipChannelFormatDesc desc
Definition driver_types.h:84
Definition driver_types.h:359
size_t depth
Definition driver_types.h:363
size_t width
Definition driver_types.h:360
size_t height
Definition driver_types.h:362
Definition driver_types.h:370
struct hipPitchedPtr srcPtr
Definition driver_types.h:373
struct hipPitchedPtr dstPtr
Definition driver_types.h:376
hipArray_t srcArray
Definition driver_types.h:371
enum hipMemcpyKind kind
Definition driver_types.h:378
hipArray_t dstArray
Definition driver_types.h:374
struct hipPos srcPos
Definition driver_types.h:372
struct hipPos dstPos
Definition driver_types.h:375
struct hipExtent extent
Definition driver_types.h:377
Definition driver_types.h:118
unsigned int depth
Definition driver_types.h:124
unsigned int height
Definition driver_types.h:123
unsigned int flags
Definition driver_types.h:127
unsigned int max_mipmap_level
Definition driver_types.h:126
void * data
Definition driver_types.h:119
struct hipChannelFormatDesc desc
Definition driver_types.h:120
enum hipArray_Format format
Definition driver_types.h:128
unsigned int type
Definition driver_types.h:121
unsigned int min_mipmap_level
Definition driver_types.h:125
unsigned int width
Definition driver_types.h:122
Definition driver_types.h:353
void * ptr
Definition driver_types.h:354
size_t ysize
Definition driver_types.h:357
size_t pitch
Definition driver_types.h:355
size_t xsize
Definition driver_types.h:356
Definition driver_types.h:365
size_t z
Definition driver_types.h:368
size_t x
Definition driver_types.h:366
size_t y
Definition driver_types.h:367
Definition driver_types.h:259
struct hipResourceDesc::@0::@4 pitch2D
size_t height
Definition driver_types.h:277
enum hipResourceType resType
Definition driver_types.h:260
void * devPtr
Definition driver_types.h:269
struct hipResourceDesc::@0::@3 linear
struct hipChannelFormatDesc desc
Definition driver_types.h:270
size_t pitchInBytes
Definition driver_types.h:278
size_t sizeInBytes
Definition driver_types.h:271
size_t width
Definition driver_types.h:276
hipMipmappedArray_t mipmap
Definition driver_types.h:266
hipArray_t array
Definition driver_types.h:263
union hipResourceDesc::@0 res
Definition driver_types.h:315
unsigned int firstMipmapLevel
Definition driver_types.h:320
size_t depth
Definition driver_types.h:319
enum hipResourceViewFormat format
Definition driver_types.h:316
size_t height
Definition driver_types.h:318
unsigned int lastMipmapLevel
Definition driver_types.h:321
unsigned int firstLayer
Definition driver_types.h:322
size_t width
Definition driver_types.h:317
unsigned int lastLayer
Definition driver_types.h:323