gem5  v20.1.0.0
Public Attributes | List of all members
hsa_queue_s Struct Reference

User mode queue. More...

#include <hsa.h>

Public Attributes

hsa_queue_type32_t type
 Queue type. More...
 
uint32_t features
 Queue features mask. More...
 
uint32_t reserved0
 
void * base_address
 
hsa_signal_t doorbell_signal
 Signal object used by the application to indicate the ID of a packet that is ready to be processed. More...
 
uint32_t size
 Maximum number of packets the queue can hold. More...
 
uint32_t reserved1
 Reserved. More...
 
uint64_t id
 Queue identifier, which is unique over the lifetime of the application. More...
 

Detailed Description

User mode queue.

The queue structure is read-only and allocated by the HSA runtime, but agents can directly modify the contents of the buffer pointed by base_address, or use HSA runtime APIs to access the doorbell signal.

Definition at line 2216 of file hsa.h.

Member Data Documentation

◆ base_address

void* hsa_queue_s::base_address

Definition at line 2242 of file hsa.h.

◆ doorbell_signal

hsa_signal_t hsa_queue_s::doorbell_signal

Signal object used by the application to indicate the ID of a packet that is ready to be processed.

The HSA runtime manages the doorbell signal. If the application tries to replace or destroy this signal, the behavior is undefined.

If type is HSA_QUEUE_TYPE_SINGLE, the doorbell signal value must be updated in a monotonically increasing fashion. If type is HSA_QUEUE_TYPE_MULTI, the doorbell signal value can be updated with any value.

Definition at line 2256 of file hsa.h.

◆ features

uint32_t hsa_queue_s::features

Queue features mask.

This is a bit-field of hsa_queue_feature_t values. Applications should ignore any unknown set bits.

Definition at line 2226 of file hsa.h.

◆ id

uint64_t hsa_queue_s::id

Queue identifier, which is unique over the lifetime of the application.

Definition at line 2269 of file hsa.h.

◆ reserved0

uint32_t hsa_queue_s::reserved0

Definition at line 2241 of file hsa.h.

◆ reserved1

uint32_t hsa_queue_s::reserved1

Reserved.

Must be 0.

Definition at line 2265 of file hsa.h.

◆ size

uint32_t hsa_queue_s::size

Maximum number of packets the queue can hold.

Must be a power of 2.

Definition at line 2261 of file hsa.h.

◆ type

hsa_queue_type32_t hsa_queue_s::type

Queue type.

Definition at line 2220 of file hsa.h.


The documentation for this struct was generated from the following file:

Generated on Wed Sep 30 2020 14:02:26 for gem5 by doxygen 1.8.17