gem5  v22.0.0.2
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 2242 of file hsa.h.

Member Data Documentation

◆ base_address

void* hsa_queue_s::base_address

Definition at line 2269 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 2283 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 2253 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 2296 of file hsa.h.

◆ reserved0

uint32_t hsa_queue_s::reserved0

Definition at line 2268 of file hsa.h.

◆ reserved1

uint32_t hsa_queue_s::reserved1

Reserved.

Must be 0.

Definition at line 2292 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 2288 of file hsa.h.

◆ type

hsa_queue_type32_t hsa_queue_s::type

Queue type.

Definition at line 2247 of file hsa.h.


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

Generated on Thu Jul 28 2022 13:32:54 for gem5 by doxygen 1.8.17