B.1.1 Allocating the Command queue
The MMU-600 uses the Command queue to receive commands. Software must allocate memory for the Command queue and configure the appropriate registers in the SMMU.
To allocate the Command queue, ensure that your software performs the following steps:
Allocate memory for the Command queue.
Configure the Command queue size and base address by writing to the
Note: The queue size can affect how many bits of the SMMU_CMDQ_CONS and
SMMU_CMDQ_PROD indices are writeable. It is therefore important that you
perform this step before writing to SMMU_CMDQ_CONS and
Set the queue read index in SMMU_CMDQ_CONS and the queue write index in
SMMU_CMDQ_PROD to 0.
Note: Setting the queue read index and the queue write index to the same value
indicates that the queue is empty.