B.1.2 Allocating the Event queue

The MMU-600 uses the Event queue to signal events. Software must allocate memory for the Event queue and configure the appropriate registers in the MMU.

To allocate the Event queue, ensure that your software performs the following steps:


  1. Allocate memory for the Event queue.
  2. Configure the Event queue size and base address by writing to the SMMU_EVENTQ_BASE register.


    The queue size can affect how many bits of the SMMU_EVENTQ_CONS and SMMU_EVENTQ_PROD indices are writeable. It is therefore important that you perform this step before writing to SMMU_EVENTQ_CONS and SMMU_EVENTQ_PROD.
  3. Set the queue read index in SMMU_EVENTQ_CONS and the queue write index in SMMU_EVENTQ_PROD to 0.


    Setting the queue read index and the queue write index to the same value indicates that the queue is empty.
Non-ConfidentialPDF file icon PDF version100310_0100_00_en
Copyright © 2016–2018 Arm Limited or its affiliates. All rights reserved.