ARM SMMU versions 1 and 2: Difference between revisions
Jump to navigation
Jump to search
[unchecked revision] | [unchecked revision] |
Content deleted Content added
Line 84: | 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''). |
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. |
* 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). |
* 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: | Line 99: | ||
* Multiple SMMU_SMRn regs may cause multiple StreamIDs to map to the same Context when Stream Matching is used. |
* 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. |
* Each incoming StreamID maps directly to a specific Context when Stream Indexing is used. |
||
=== Support for stage1 and stage2 === |
|||
== Client transaction flowchart == |
== Client transaction flowchart == |