B.1.3 Configuring the Stream table

The Stream table is a configuration structure in memory that uses a Context Descriptor (CD) to locate translation data for a transaction. Software must allocate memory for the Stream table, configure the table format, and populate the table with Stream Table Entries (STEs).

To configure the Stream table, ensure that your software performs the following steps:


  1. Allocate memory for the Stream table.
  2. Configure the format and size of the Stream table by writing to SMMU_STRTAB_BASE_CFG.
  3. Configure the base address for the Stream table by writing to SMMU_STRTAB_BASE.
  4. Prevent uninitialized memory being interpreted as a valid configuration by setting STE.V = 0 for each STE to mark it as invalid.
  5. Ensure that written data is observable to the SMMU by performing a Data Synchronization Barrier (DSB) operation.
    If SMMU_IDR0.COHACC = 0, the system does not support coherent access to memory for the TCU. In such cases, additional steps might be required to ensure that the written data is observable to the SMMU.
Non-ConfidentialPDF file icon PDF version100310_0100_00_en
Copyright © 2016–2018 Arm Limited or its affiliates. All rights reserved.