SPRUJ17H March 2022 – October 2024 AM2631 , AM2631-Q1 , AM2632 , AM2632-Q1 , AM2634 , AM2634-Q1
Active memory protection is a feature that allows or prevents read and write accesses to the EDMA_TPCC registers. Active memory protection is achieved by a set of memory protection permissions attribute EDMA_TPCC_MPPAN_k registers.
The EDMA_TPCC register map is divided into three categories:
Each shadow region consists of the respective shadow region registers and the associated PaRAM. For more detailed information regarding the contents of a shadow region, refer to the associated Register Addendum.
Each of the eight shadow regions has an associated EDMA_TPCC_MPPAN_k registers that defines the specific requestor(s) and types of requests that are allowed to the regions resources.
The global channel region is also protected with a memory-mapped register EDMA_TPCC_MPPAG. The EDMA_TPCC_MPPAG applies to the global region and to the global channel region, except the other EDMA_TPCC_MPPAN_k registers themselves.
Table 11-18 shows the accesses that are allowed or not allowed to the EDMA_TPCC_MPPAG and EDMA_TPCC_MPPAN_k. The active memory protection uses the EDMA_TPCC_OPT_n[31] PRIV and EDMA_TPCC_OPT_n[27:24] PRIVID attributes of the EDMA peripheral modules. TheEDMA_TPCC_OPT_n[31] PRIV is the privilege level (i.e., user vs. supervisor).
The EDMA_TPCC_OPT_n[27:24] PRIVID refers to a privilege ID with a number that is associated with an EDMA peripheral modules.
Access | Supervisor | User |
---|---|---|
Read | Yes | Yes |
Write | Yes | No |
Table 11-19 describes the EDMA_TPCC_MPPAN_k register mapping for the shadow regions (which includes shadow region registers and PaRAM addresses).
The region-based EDMA_TPCC_MPPAN_k registers are used to protect accesses to the DMA shadow regions and the associated region PaRAM. Because there are eight regions, there are eight EDMA_TPCC_MPPAN_k region registers (MPPA[0-7]).
Register | Registers Protect | Address Range | PaRAM Protect(1) | Address Range |
---|---|---|---|---|
EDMA_TPCC_MPPAG | Global Range | 0000h-1FFCh | N/A | N/A |
EDMA_TPCC_MPPAN_k. MPPAN_0 | DMA Shadow 0 | 2000h-21FCh | 1st octant | 4000h-47FCh |
MPPAN_1 | DMA Shadow 1 | 2200h-23FCh | 2nd octant | 4800h-4FFCh |
MPPAN_2 | DMA Shadow 2 | 2400h-25FCh | 3rd octant | 5000h-57FCh |
MPPAN_3 | DMA Shadow 3 | 2600h-27FCh | 4th octant | 5800h-5FFCh |
MPPAN_4 | DMA Shadow 4 | 2800h-29FCh | 5th octant | 6000h-67FCh |
MPPAN_5 | DMA Shadow 5 | 2A00h-2BFCh | 6th octant | 6800h-6FFCh |
MPPAN_6 | DMA Shadow 6 | 2C00h-2DFCh | 7th octant | 7000h-77FCh |
MPPAN_7 | DMA Shadow 7 | 2E00h-2FFCh | 8th octant | 7800h-7FFCh |
Example Access denied.
Write access to shadow region 7's event enable set register EDMA_TPCC_EESR:
The EDMA_TPCC_EER is a read-only register and the only way that write to it is by writing to the EDMA_TPCC_EESR. There is only one physical register for EDMA_TPCC_EER, EDMA_TPCC_EESR, etc. and that the shadow regions only provide to the same physical set.
Example Access Allowed
Write access to shadow region 7's event enable set register EDMA_TPCC_EESR:
The EDMA_TPCC_EER is a read-only register and the only way that write to it is by writing to the EDMA_TPCC_EESR. There is only one physical register for EDMA_TPCC_EER, EDMA_TPCC_EESR, etc. and that the shadow regions only provide to the same physical set.