09.12.2012 Views

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3.2.38 c6, Data Fault Address Register<br />

Table 3-70 shows the results of attempted access for each mode.<br />

To access the Auxiliary Fault Status Registers, read or write CP15 with:<br />

System Control Coprocessor<br />

Table 3-70 Results of access to the Auxiliary Fault Status Registers a<br />

Secure privileged Nonsecure privileged Secure User Nonsecure User<br />

Read Write Read Write Read Write Read Write<br />

Secure<br />

data<br />

Secure<br />

data<br />

Nonsecure<br />

data<br />

Nonsecure<br />

data<br />

MRC p15, 0, , c5, c1, 0; Read Data Auxiliary Fault Status Register<br />

MCR p15, 0, , c5, c1, 0; Write Data Auxiliary Fault Status Register<br />

MRC p15, 0, , c5, c1, 1; Read Instruction Auxiliary Fault Status Register<br />

MCR p15, 0, , c5, c1, 1; Write Instruction Auxiliary Fault Status Register<br />

There is no physical register for Auxiliary Data Fault Status Register or Auxiliary Instruction<br />

Fault Status Register as the register is always RAZ.<br />

The purpose of the Data Fault Address Register (DFAR) is to hold the Modified Virtual Address<br />

(MVA) of the fault when a precise abort occurs.<br />

The DFAR is:<br />

• a read/write register banked for Secure and Nonsecure states<br />

• accessible in privileged modes only.<br />

The Data Fault Address Register bits [31:0] contain the MVA where the precise abort occurred.<br />

Table 3-71 shows the results of attempted access for each mode.<br />

To access the DFAR, read or write CP15 with:<br />

MRC p15, 0, , c6, c0, 0 ; Read Data Fault Address Register<br />

MCR p15, 0, , c6, c0, 0 ; Write Data Fault Address Register<br />

Undefined Undefined Undefined Undefined<br />

a. An entry of Undefined in the table means that the access gives an Undefined Instruction exception when the<br />

coprocessor instruction is executed.<br />

Table 3-71 Results of access to the Data Fault Address Register a<br />

Secure privileged Nonsecure privileged Secure User Nonsecure User<br />

Read Write Read Write Read Write Read Write<br />

Secure<br />

data<br />

Secure<br />

data<br />

Nonsecure<br />

data<br />

Nonsecure<br />

data<br />

Undefined Undefined Undefined Undefined<br />

a. An entry of Undefined in the table means that the access gives an Undefined Instruction exception when the<br />

coprocessor instruction is executed.<br />

A write to this register sets the DFAR to the value of the data written. This is useful for a<br />

debugger to restore the value of the DFAR.<br />

The processor also updates the DFAR on debug exception entry because of watchpoints. See<br />

Effect of debug exceptions on CP15 registers and WFAR on page 12-54 for more information.<br />

<strong>ARM</strong> DDI 0344K Copyright © 2006-2010 <strong>ARM</strong> Limited. All rights reserved. 3-67<br />

ID060510 Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!