This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

SMMU related question.

when reading  ARM® System Memory Management Unit Architecture Specification, I noticed that there is a saying in about chapter 5, the last section named <cache maintenance operations>.

          In SMMUv2, client devices might perform cache maintenance operations on data and instruction caches, such as evicting data to memory.


Does this mean that SMMU are able to issue some cache coherency transactions to affect caches in ARM core platforms, through CCI for example?

If yes, how?

If no, what does it mean?

Another question is about the address translation in ARM cores platforms, will they go through SMMU too, or use their own MMUs?


Parents
  • A client device (the master connected to the SMMU) might generate broadcast cache operations, which would then pass through the SMMU.  Assuming that you had a cache coherent interconnect with DVM, these might then affect the processor.  Depending on how the shareability domains were set up, and the details of the transaction.

    The SMMU can also directly generate DVM requests, if software writes to one of the TLB operation registers (see section 5.4 of the SMMUv2 spec).

Reply
  • A client device (the master connected to the SMMU) might generate broadcast cache operations, which would then pass through the SMMU.  Assuming that you had a cache coherent interconnect with DVM, these might then affect the processor.  Depending on how the shareability domains were set up, and the details of the transaction.

    The SMMU can also directly generate DVM requests, if software writes to one of the TLB operation registers (see section 5.4 of the SMMUv2 spec).

Children