System Control Coprocessor
ARM DDI 0301H
Copyright © 2004-2009 ARM Limited. All rights reserved.
3-130
ID012310
Non-Confidential, Unrestricted Access
•
Opcode_2 set to:
—
2, User Read/Write Thread and Process ID Register
—
3, User Read Only Thread and Process ID Register
—
4, Privileged Only Thread and Process ID Register.
For example:
MRC p15, 0, <Rd>, c13, c0, 2
;Read User Read/Write Thread and Proc. ID Register
MCR p15, 0, <Rd>, c13, c0, 2
;Write User Read/Write Thread and Proc. ID Register
MRC p15, 0, <Rd>, c13, c0, 3
;Read User Read Only Thread and Proc. ID Register
MCR p15, 0, <Rd>, c13, c0, 3
;Write User Read Only Thread and Proc. ID Register
MRC p15, 0, <Rd>, c13, c0, 4
;Read Privileged Only Thread and Proc. ID Register
MCR p15, 0, <Rd>, c13, c0, 4
;Write Privileged Only Thread and Proc. ID Register
Reading or writing the thread and process ID registers has no effect on processor state or
operation. These registers provide OS support and must be managed by the OS.
You must clear the contents of all thread and process ID registers on process switches to prevent
data leaking from one process to another. This is important to ensure the security of secure data.
The reset value of these registers is 0.
3.2.49
c15, Peripheral Port Memory Remap Register
The purpose of the Peripheral Port Memory Remap Register is to remap the memory attributes
to Non-Shared Device. This forces access to the peripheral port and overrides what is
programmed in the page tables. The remapping happens both with the MMU enabled and with
the MMU disabled, therefore you can remap the peripheral port even when you do not use the
MMU. The Peripheral Port Memory Remap Register has the highest priority, higher than that
of the Primary and Normal memory remap registers.
Table 3-132 on page 3-131 lists the purposes of the individual bits in the Peripheral Port
Memory Remap Register.
The Peripheral Port Memory Remap Register is:
•
in CP15 c15
•
a 32-bit read/write register banked for Secure and Non-secure worlds
•
accessible in privileged modes only.
Figure 3-71 shows the arrangement of the bits in the register.
Figure 3-71 Peripheral Port Memory Remap Register format
Base address
31
12 11
4
0
UNP/SBZ
Size
5