ARM SMMU versions 1 and 2: Difference between revisions

m
[unchecked revision][unchecked revision]
Line 84:
The number of SMMU_SMRn regs determines the number of SMMU_S2CRn regs (Section 2.3.2, "Stream matching": ''the optional Extended Stream Matching Extension, that provides up to 1024 Stream Match Registers and associated Stream-to-Context registers'').
 
* Support for Stream Matching is indicated via SMMU_IDR0.SMS == 1.
* Support for Extended Stream Matching is indicated via SMMU_IDR0.EXSMRGS == 1.
* Support for compressed Indexing (which is a subfeature under Stream Matching) is indicated via a secure read of SMMU_IDR2.COMPINDEXS == 1. A non-secure read of this bit only states whether or not compressed indexing is available for use by non-secure software.
* The number of Stream Mapping Register Groups is determined by reading SMMU_IDR0.NUMSMRG.
* It is possible for an implementation not to support Stream '''Matching''', but still allow software to reference the Stream '''Mapping''' Table (which is the '''combination''' of the SMMU_SMRn and SMMU_S2CRn register sets).
Line 96 ⟶ 99:
* Multiple SMMU_SMRn regs may cause multiple StreamIDs to map to the same Context when Stream Matching is used.
* Each incoming StreamID maps directly to a specific Context when Stream Indexing is used.
 
=== Support for stage1 and stage2 ===
 
== Client transaction flowchart ==
Anonymous user