23#ifndef HIP_INCLUDE_HIP_DRIVER_TYPES_H
24#define HIP_INCLUDE_HIP_DRIVER_TYPES_H
26#if !defined(__HIPCC_RTC__)
30#if !(defined(__HIP_PLATFORM_HCC__) || defined(__HIP_PLATFORM_AMD__)) && (defined(__HIP_PLATFORM_NVCC__) || defined(__HIP_PLATFORM_NVIDIA__))
32#elif (defined(__HIP_PLATFORM_HCC__) || defined(__HIP_PLATFORM_AMD__)) && !(defined(__HIP_PLATFORM_NVCC__) || defined(__HIP_PLATFORM_NVIDIA__))
36#define HIP_INCLUDE_HIP_HCC_DETAIL_DRIVER_TYPES_H
37#if !defined(__HIPCC_RTC__)
56#define HIP_TRSA_OVERRIDE_FORMAT 0x01
57#define HIP_TRSF_READ_AS_INTEGER 0x01
58#define HIP_TRSF_NORMALIZED_COORDINATES 0x02
59#define HIP_TRSF_SRGB 0x10
97#if !defined(__HIPCC_RTC__)
145typedef enum HIPresourcetype_enum {
154typedef enum HIPaddress_mode_enum {
163typedef enum HIPfilter_mode_enum {
170typedef struct HIP_TEXTURE_DESC_st {
179 float borderColor[4];
222typedef enum HIPresourceViewFormat_enum
286typedef struct HIP_RESOURCE_DESC_st
305 unsigned int numChannels;
332typedef struct HIP_RESOURCE_VIEW_DESC_st
342 unsigned int reserved[16];
348#if !defined(__HIPCC_RTC__)
409static inline struct hipPitchedPtr make_hipPitchedPtr(void* d,
size_t p,
size_t xsz,
418static inline struct hipPos make_hipPos(size_t
x, size_t
y, size_t
z) {
425static inline struct hipExtent make_hipExtent(size_t w, size_t h, size_t d) {
481#error("Must define exactly one of __HIP_PLATFORM_AMD__ or __HIP_PLATFORM_NVIDIA__");
hipChannelFormatKind
Definition driver_types.h:43
@ hipChannelFormatKindFloat
Definition driver_types.h:46
@ hipChannelFormatKindNone
Definition driver_types.h:47
@ hipChannelFormatKindUnsigned
Definition driver_types.h:45
@ hipChannelFormatKindSigned
Definition driver_types.h:44
hipResourcetype
Definition driver_types.h:145
@ HIP_RESOURCE_TYPE_ARRAY
Definition driver_types.h:146
@ HIP_RESOURCE_TYPE_PITCH2D
Definition driver_types.h:149
@ HIP_RESOURCE_TYPE_MIPMAPPED_ARRAY
Definition driver_types.h:147
@ HIP_RESOURCE_TYPE_LINEAR
Definition driver_types.h:148
HIPfilter_mode
Definition driver_types.h:163
@ HIP_TR_FILTER_MODE_POINT
Definition driver_types.h:164
@ HIP_TR_FILTER_MODE_LINEAR
Definition driver_types.h:165
hipMemcpyKind
Definition driver_types.h:349
@ hipMemcpyDefault
Runtime will automatically determine copy-kind based on virtual addresses.
Definition driver_types.h:354
@ hipMemcpyHostToHost
Host-to-Host Copy.
Definition driver_types.h:350
@ hipMemcpyDeviceToHost
Device-to-Host Copy.
Definition driver_types.h:352
@ hipMemcpyDeviceToDevice
Device-to-Device Copy.
Definition driver_types.h:353
@ hipMemcpyHostToDevice
Host-to-Device Copy.
Definition driver_types.h:351
HIPresourceViewFormat
Definition driver_types.h:223
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC1
Definition driver_types.h:249
@ HIP_RES_VIEW_FORMAT_UINT_1X8
Definition driver_types.h:225
@ HIP_RES_VIEW_FORMAT_FLOAT_4X32
Definition driver_types.h:248
@ HIP_RES_VIEW_FORMAT_UINT_1X32
Definition driver_types.h:237
@ HIP_RES_VIEW_FORMAT_UINT_1X16
Definition driver_types.h:231
@ HIP_RES_VIEW_FORMAT_UINT_2X16
Definition driver_types.h:232
@ HIP_RES_VIEW_FORMAT_SINT_2X16
Definition driver_types.h:235
@ HIP_RES_VIEW_FORMAT_SINT_2X8
Definition driver_types.h:229
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC6H
Definition driver_types.h:256
@ HIP_RES_VIEW_FORMAT_SINT_4X16
Definition driver_types.h:236
@ HIP_RES_VIEW_FORMAT_UINT_2X8
Definition driver_types.h:226
@ HIP_RES_VIEW_FORMAT_UINT_4X8
Definition driver_types.h:227
@ HIP_RES_VIEW_FORMAT_SINT_1X32
Definition driver_types.h:240
@ HIP_RES_VIEW_FORMAT_NONE
Definition driver_types.h:224
@ HIP_RES_VIEW_FORMAT_SINT_2X32
Definition driver_types.h:241
@ HIP_RES_VIEW_FORMAT_SINT_4X8
Definition driver_types.h:230
@ HIP_RES_VIEW_FORMAT_SIGNED_BC4
Definition driver_types.h:253
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC7
Definition driver_types.h:258
@ HIP_RES_VIEW_FORMAT_SIGNED_BC6H
Definition driver_types.h:257
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC4
Definition driver_types.h:252
@ HIP_RES_VIEW_FORMAT_UINT_4X16
Definition driver_types.h:233
@ HIP_RES_VIEW_FORMAT_FLOAT_4X16
Definition driver_types.h:245
@ HIP_RES_VIEW_FORMAT_SINT_1X8
Definition driver_types.h:228
@ HIP_RES_VIEW_FORMAT_SIGNED_BC5
Definition driver_types.h:255
@ HIP_RES_VIEW_FORMAT_FLOAT_2X32
Definition driver_types.h:247
@ HIP_RES_VIEW_FORMAT_SINT_1X16
Definition driver_types.h:234
@ HIP_RES_VIEW_FORMAT_FLOAT_2X16
Definition driver_types.h:244
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC5
Definition driver_types.h:254
@ HIP_RES_VIEW_FORMAT_UINT_4X32
Definition driver_types.h:239
@ HIP_RES_VIEW_FORMAT_FLOAT_1X16
Definition driver_types.h:243
@ HIP_RES_VIEW_FORMAT_SINT_4X32
Definition driver_types.h:242
@ HIP_RES_VIEW_FORMAT_UINT_2X32
Definition driver_types.h:238
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC3
Definition driver_types.h:251
@ HIP_RES_VIEW_FORMAT_FLOAT_1X32
Definition driver_types.h:246
@ HIP_RES_VIEW_FORMAT_UNSIGNED_BC2
Definition driver_types.h:250
hipPointer_attribute
Definition driver_types.h:446
@ HIP_POINTER_ATTRIBUTE_DEVICE_ORDINAL
Definition driver_types.h:458
@ HIP_POINTER_ATTRIBUTE_IS_LEGACY_HIP_IPC_CAPABLE
Definition driver_types.h:460
@ HIP_POINTER_ATTRIBUTE_RANGE_SIZE
Size of the address range for this requested pointer.
Definition driver_types.h:464
@ HIP_POINTER_ATTRIBUTE_DEVICE_POINTER
address at which the pointer is allocated on device
Definition driver_types.h:450
@ HIP_POINTER_ATTRIBUTE_BUFFER_ID
Unique ID for an allocated memory region.
Definition driver_types.h:456
@ HIP_POINTER_ATTRIBUTE_MAPPED
Definition driver_types.h:465
@ HIP_POINTER_ATTRIBUTE_MEMPOOL_HANDLE
Definition driver_types.h:474
@ HIP_POINTER_ATTRIBUTE_CONTEXT
Definition driver_types.h:447
@ HIP_POINTER_ATTRIBUTE_HOST_POINTER
address at which the pointer is allocated on host
Definition driver_types.h:451
@ HIP_POINTER_ATTRIBUTE_IS_GPU_DIRECT_RDMA_CAPABLE
Definition driver_types.h:469
@ HIP_POINTER_ATTRIBUTE_SYNC_MEMOPS
Definition driver_types.h:454
@ HIP_POINTER_ATTRIBUTE_P2P_TOKENS
Definition driver_types.h:452
@ HIP_POINTER_ATTRIBUTE_ACCESS_FLAGS
Definition driver_types.h:472
@ HIP_POINTER_ATTRIBUTE_IS_MANAGED
Indicates if the pointer points to managed memory.
Definition driver_types.h:457
@ HIP_POINTER_ATTRIBUTE_MEMORY_TYPE
memory type describing location of a pointer
Definition driver_types.h:449
@ HIP_POINTER_ATTRIBUTE_RANGE_START_ADDR
Starting address for this requested pointer.
Definition driver_types.h:463
@ HIP_POINTER_ATTRIBUTE_ALLOWED_HANDLE_TYPES
for this allocation
Definition driver_types.h:467
hipMipmappedArray_t hipmipmappedArray
Definition driver_types.h:134
void * hipDeviceptr_t
Definition driver_types.h:42
hipFunction_attribute
Definition driver_types.h:432
@ HIP_FUNC_ATTRIBUTE_MAX
Definition driver_types.h:443
@ HIP_FUNC_ATTRIBUTE_BINARY_VERSION
Definition driver_types.h:439
@ HIP_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK
Definition driver_types.h:433
@ HIP_FUNC_ATTRIBUTE_CACHE_MODE_CA
Definition driver_types.h:440
@ HIP_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT
Definition driver_types.h:442
@ HIP_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES
Definition driver_types.h:436
@ HIP_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES
Definition driver_types.h:434
@ HIP_FUNC_ATTRIBUTE_NUM_REGS
Definition driver_types.h:437
@ HIP_FUNC_ATTRIBUTE_CONST_SIZE_BYTES
Definition driver_types.h:435
@ HIP_FUNC_ATTRIBUTE_PTX_VERSION
Definition driver_types.h:438
@ HIP_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES
Definition driver_types.h:441
const struct hipArray * hipArray_const_t
Definition driver_types.h:119
hipResourceViewFormat
Definition driver_types.h:185
@ hipResViewFormatSignedInt2
Definition driver_types.h:203
@ hipResViewFormatSignedChar4
Definition driver_types.h:192
@ hipResViewFormatFloat1
Definition driver_types.h:208
@ hipResViewFormatUnsignedBlockCompressed5
Definition driver_types.h:216
@ hipResViewFormatNone
Definition driver_types.h:186
@ hipResViewFormatUnsignedChar2
Definition driver_types.h:188
@ hipResViewFormatSignedShort4
Definition driver_types.h:198
@ hipResViewFormatUnsignedBlockCompressed4
Definition driver_types.h:214
@ hipResViewFormatSignedInt4
Definition driver_types.h:204
@ hipResViewFormatUnsignedInt2
Definition driver_types.h:200
@ hipResViewFormatSignedShort2
Definition driver_types.h:197
@ hipResViewFormatHalf4
Definition driver_types.h:207
@ hipResViewFormatFloat4
Definition driver_types.h:210
@ hipResViewFormatUnsignedBlockCompressed1
Definition driver_types.h:211
@ hipResViewFormatUnsignedInt1
Definition driver_types.h:199
@ hipResViewFormatUnsignedChar4
Definition driver_types.h:189
@ hipResViewFormatUnsignedInt4
Definition driver_types.h:201
@ hipResViewFormatSignedBlockCompressed6H
Definition driver_types.h:219
@ hipResViewFormatUnsignedBlockCompressed2
Definition driver_types.h:212
@ hipResViewFormatHalf2
Definition driver_types.h:206
@ hipResViewFormatUnsignedShort1
Definition driver_types.h:193
@ hipResViewFormatSignedBlockCompressed5
Definition driver_types.h:217
@ hipResViewFormatSignedBlockCompressed4
Definition driver_types.h:215
@ hipResViewFormatHalf1
Definition driver_types.h:205
@ hipResViewFormatSignedChar2
Definition driver_types.h:191
@ hipResViewFormatFloat2
Definition driver_types.h:209
@ hipResViewFormatUnsignedBlockCompressed3
Definition driver_types.h:213
@ hipResViewFormatUnsignedChar1
Definition driver_types.h:187
@ hipResViewFormatSignedChar1
Definition driver_types.h:190
@ hipResViewFormatUnsignedBlockCompressed6H
Definition driver_types.h:218
@ hipResViewFormatUnsignedBlockCompressed7
Definition driver_types.h:220
@ hipResViewFormatSignedShort1
Definition driver_types.h:196
@ hipResViewFormatUnsignedShort2
Definition driver_types.h:194
@ hipResViewFormatUnsignedShort4
Definition driver_types.h:195
@ hipResViewFormatSignedInt1
Definition driver_types.h:202
hipArray_Format
Definition driver_types.h:60
@ HIP_AD_FORMAT_UNSIGNED_INT16
Definition driver_types.h:62
@ HIP_AD_FORMAT_HALF
Definition driver_types.h:67
@ HIP_AD_FORMAT_UNSIGNED_INT32
Definition driver_types.h:63
@ HIP_AD_FORMAT_UNSIGNED_INT8
Definition driver_types.h:61
@ HIP_AD_FORMAT_SIGNED_INT8
Definition driver_types.h:64
@ HIP_AD_FORMAT_SIGNED_INT32
Definition driver_types.h:66
@ HIP_AD_FORMAT_SIGNED_INT16
Definition driver_types.h:65
@ HIP_AD_FORMAT_FLOAT
Definition driver_types.h:68
hipResourceType
Definition driver_types.h:139
@ hipResourceTypeArray
Definition driver_types.h:140
@ hipResourceTypeMipmappedArray
Definition driver_types.h:141
@ hipResourceTypePitch2D
Definition driver_types.h:143
@ hipResourceTypeLinear
Definition driver_types.h:142
hipArray_t hiparray
Definition driver_types.h:118
const struct hipMipmappedArray * hipMipmappedArray_const_t
Definition driver_types.h:135
HIPaddress_mode
Definition driver_types.h:154
@ HIP_TR_ADDRESS_MODE_WRAP
Definition driver_types.h:155
@ HIP_TR_ADDRESS_MODE_BORDER
Definition driver_types.h:158
@ HIP_TR_ADDRESS_MODE_MIRROR
Definition driver_types.h:157
@ HIP_TR_ADDRESS_MODE_CLAMP
Definition driver_types.h:156
hipMemoryType
Definition hip_runtime_api.h:175
Definition driver_types.h:76
size_t Width
Definition driver_types.h:77
size_t Depth
Definition driver_types.h:79
size_t Height
Definition driver_types.h:78
enum hipArray_Format Format
Definition driver_types.h:80
unsigned int NumChannels
Definition driver_types.h:81
unsigned int Flags
Definition driver_types.h:82
Definition driver_types.h:70
size_t Width
Definition driver_types.h:71
unsigned int NumChannels
Definition driver_types.h:74
enum hipArray_Format Format
Definition driver_types.h:73
size_t Height
Definition driver_types.h:72
Definition driver_types.h:384
unsigned int srcY
Definition driver_types.h:386
hipArray_t srcArray
Definition driver_types.h:392
unsigned int WidthInBytes
Definition driver_types.h:405
unsigned int dstLOD
Definition driver_types.h:398
hipDeviceptr_t dstDevice
Definition driver_types.h:401
hipDeviceptr_t srcDevice
Definition driver_types.h:391
unsigned int dstXInBytes
Definition driver_types.h:395
unsigned int srcXInBytes
Definition driver_types.h:385
unsigned int srcLOD
Definition driver_types.h:388
unsigned int srcZ
Definition driver_types.h:387
unsigned int srcHeight
Definition driver_types.h:394
hipMemoryType dstMemoryType
Definition driver_types.h:399
unsigned int Height
Definition driver_types.h:406
hipArray_t dstArray
Definition driver_types.h:402
hipMemoryType srcMemoryType
Definition driver_types.h:389
unsigned int srcPitch
Definition driver_types.h:393
unsigned int dstY
Definition driver_types.h:396
void * dstHost
Definition driver_types.h:400
unsigned int dstHeight
Definition driver_types.h:404
unsigned int Depth
Definition driver_types.h:407
const void * srcHost
Definition driver_types.h:390
unsigned int dstPitch
Definition driver_types.h:403
unsigned int dstZ
Definition driver_types.h:397
Definition driver_types.h:287
unsigned int flags
Definition driver_types.h:314
size_t height
Definition driver_types.h:307
hipArray_t hArray
Definition driver_types.h:291
size_t pitchInBytes
Definition driver_types.h:308
HIPresourcetype resType
Definition driver_types.h:288
hipDeviceptr_t devPtr
Definition driver_types.h:297
hipMipmappedArray_t hMipmappedArray
Definition driver_types.h:294
hipArray_Format format
Definition driver_types.h:298
size_t width
Definition driver_types.h:306
unsigned int numChannels
Definition driver_types.h:299
size_t sizeInBytes
Definition driver_types.h:300
Definition driver_types.h:333
size_t width
Definition driver_types.h:335
unsigned int firstMipmapLevel
Definition driver_types.h:338
unsigned int lastMipmapLevel
Definition driver_types.h:339
unsigned int firstLayer
Definition driver_types.h:340
size_t depth
Definition driver_types.h:337
size_t height
Definition driver_types.h:336
HIPresourceViewFormat format
Definition driver_types.h:334
unsigned int lastLayer
Definition driver_types.h:341
Definition driver_types.h:170
float maxMipmapLevelClamp
Definition driver_types.h:178
unsigned int flags
Definition driver_types.h:173
float mipmapLevelBias
Definition driver_types.h:176
float minMipmapLevelClamp
Definition driver_types.h:177
unsigned int maxAnisotropy
Definition driver_types.h:174
HIPfilter_mode filterMode
Definition driver_types.h:172
HIPfilter_mode mipmapFilterMode
Definition driver_types.h:175
Definition driver_types.h:98
void * dstHost
Definition driver_types.h:109
size_t srcXInBytes
Definition driver_types.h:99
size_t WidthInBytes
Definition driver_types.h:113
size_t dstPitch
Definition driver_types.h:112
size_t dstY
Definition driver_types.h:107
hipMemoryType dstMemoryType
Definition driver_types.h:108
hipDeviceptr_t srcDevice
Definition driver_types.h:103
hipDeviceptr_t dstDevice
Definition driver_types.h:110
hipMemoryType srcMemoryType
Definition driver_types.h:101
size_t srcY
Definition driver_types.h:100
size_t Height
Definition driver_types.h:114
hipArray * dstArray
Definition driver_types.h:111
const void * srcHost
Definition driver_types.h:102
size_t dstXInBytes
Definition driver_types.h:106
hipArray * srcArray
Definition driver_types.h:104
size_t srcPitch
Definition driver_types.h:105
Definition driver_types.h:84
unsigned int type
Definition driver_types.h:87
bool isDrv
Definition driver_types.h:93
enum hipArray_Format Format
Definition driver_types.h:91
unsigned int NumChannels
Definition driver_types.h:92
unsigned int width
Definition driver_types.h:88
void * data
Definition driver_types.h:85
unsigned int height
Definition driver_types.h:89
unsigned int depth
Definition driver_types.h:90
unsigned int flags
Definition driver_types.h:95
unsigned int textureType
Definition driver_types.h:94
struct hipChannelFormatDesc desc
Definition driver_types.h:86
Definition driver_types.h:363
size_t depth
Definition driver_types.h:367
size_t width
Definition driver_types.h:364
size_t height
Definition driver_types.h:366
Definition driver_types.h:374
struct hipPitchedPtr srcPtr
Definition driver_types.h:377
struct hipPitchedPtr dstPtr
Definition driver_types.h:380
hipArray_t srcArray
Definition driver_types.h:375
enum hipMemcpyKind kind
Definition driver_types.h:382
hipArray_t dstArray
Definition driver_types.h:378
struct hipPos srcPos
Definition driver_types.h:376
struct hipPos dstPos
Definition driver_types.h:379
struct hipExtent extent
Definition driver_types.h:381
Definition driver_types.h:120
unsigned int depth
Definition driver_types.h:126
unsigned int height
Definition driver_types.h:125
unsigned int num_channels
Definition driver_types.h:131
unsigned int flags
Definition driver_types.h:129
unsigned int max_mipmap_level
Definition driver_types.h:128
void * data
Definition driver_types.h:121
struct hipChannelFormatDesc desc
Definition driver_types.h:122
enum hipArray_Format format
Definition driver_types.h:130
unsigned int type
Definition driver_types.h:123
unsigned int min_mipmap_level
Definition driver_types.h:127
unsigned int width
Definition driver_types.h:124
Definition driver_types.h:357
void * ptr
Definition driver_types.h:358
size_t ysize
Definition driver_types.h:361
size_t pitch
Definition driver_types.h:359
size_t xsize
Definition driver_types.h:360
Definition driver_types.h:369
size_t z
Definition driver_types.h:372
size_t x
Definition driver_types.h:370
size_t y
Definition driver_types.h:371
Definition driver_types.h:263
struct hipResourceDesc::@0::@4 pitch2D
size_t height
Definition driver_types.h:281
enum hipResourceType resType
Definition driver_types.h:264
void * devPtr
Definition driver_types.h:273
struct hipResourceDesc::@0::@3 linear
struct hipChannelFormatDesc desc
Definition driver_types.h:274
size_t pitchInBytes
Definition driver_types.h:282
size_t sizeInBytes
Definition driver_types.h:275
size_t width
Definition driver_types.h:280
hipMipmappedArray_t mipmap
Definition driver_types.h:270
hipArray_t array
Definition driver_types.h:267
union hipResourceDesc::@0 res
Definition driver_types.h:319
unsigned int firstMipmapLevel
Definition driver_types.h:324
size_t depth
Definition driver_types.h:323
enum hipResourceViewFormat format
Definition driver_types.h:320
size_t height
Definition driver_types.h:322
unsigned int lastMipmapLevel
Definition driver_types.h:325
unsigned int firstLayer
Definition driver_types.h:326
size_t width
Definition driver_types.h:321
unsigned int lastLayer
Definition driver_types.h:327