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

arm MMU-500 code samples

Hello.

I am looking for sample source code to understand how to program the MMU-500 SMMU.

The MMU-500 Technical Reference Manual (DDI0517F) does not contain any code samples.

Our processor is arm A53, and we are running bare metal (no OS).

The MMU-500 TRM does mention another document called the "Technical Reference Manual Supplement".

Technical Reference Manual Supplement
This supplement describes how to initialize the MMU-500, and how the
MMU-500 generates final memory attributes.
The TRM Supplement is a confidential book that is only available to licensees.

Does this document contain initialization code samples? We are not a licensee.

thx,

bob

Parents
  • Not much to find, but in the SMMUv2 TRM I found this:
    2.7.1 Translation table format
    The SMMU translation table formats and translation process are generally the same as those in described in the
    ARM ®  Architecture Reference Manual, ARMv8, for ARMv8-A architecture profile, for the AArch32 and AArch64
    translation regimes. The AArch32 formats and processes are compatible with those for ARMv7, as described in the
    ARM ®  Architecture Reference Manual, ARMv7-A and ARMv7-R edition. Stage 2 translation table format describes
    an SMMU extension to those formats.

    So at least a hint.

Reply
  • Not much to find, but in the SMMUv2 TRM I found this:
    2.7.1 Translation table format
    The SMMU translation table formats and translation process are generally the same as those in described in the
    ARM ®  Architecture Reference Manual, ARMv8, for ARMv8-A architecture profile, for the AArch32 and AArch64
    translation regimes. The AArch32 formats and processes are compatible with those for ARMv7, as described in the
    ARM ®  Architecture Reference Manual, ARMv7-A and ARMv7-R edition. Stage 2 translation table format describes
    an SMMU extension to those formats.

    So at least a hint.

Children
  • Hello,

    I contacted ARM and they informed me I will need access to the MMU-500 Technical Supplement.

    That's the document I mentioned in the original post, so it looks like it is needed.

    I will need to work with our folks who handle IP, as this document is not public.

    The ARM contact also provided some sample code separately which I need to review.

    So overall it looks like the TRM Supplement document and sample code provided by ARM are the best answer.

    Thanks again for the help. I am marking this ticket closed.

    bob