05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

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.

Debug Register Interfaces<br />

the external debug interface knows when the core power domain is powered down, <strong>and</strong> can<br />

communicate this information to the external debugger.<br />

For details of these signals see DBGNOPWRDWN on page AppxA-9 <strong>and</strong> DBGPWRDUP on<br />

page AppxA-10.<br />

If the core power domain is not being powered down at the same time as the debug power domain then the<br />

authentication signal DBGEN must be pulled LOW before power is removed from the debug power domain.<br />

The behavior of the debug logic, <strong>and</strong> in particular the generation of debug events, is UNPREDICTABLE when<br />

the debug power domain is not powered if DBGEN is not LOW. Pulling DBGEN LOW ensures that debug<br />

events are ignored by the processor. For more information, see Changing the authentication signals on<br />

page AppxA-4.<br />

Reads <strong>and</strong> writes of debug registers when the debug logic is powered down are UNPREDICTABLE.<br />

The performance monitors must be implemented in the core power domain, <strong>and</strong> must continue to operate<br />

when debug power is removed.<br />

The rest of this part of this manual assumes that two power domains are implemented as described in this<br />

section, <strong>and</strong> that therefore the implementation supports debug over power-down. Features that are not<br />

required for an <strong>ARM</strong>v7 implementation with a single power domain are identified as SinglePower, with a<br />

description of the differences in behavior. A SinglePower implementation cannot support debug over<br />

power-down.<br />

C6.2.3 The OS Save <strong>and</strong> Restore mechanism<br />

The OS Save <strong>and</strong> Restore mechanism enables an operating system to save the debug registers before<br />

power-down <strong>and</strong> restore them when power is restored. This extends the support for debug over power-down,<br />

<strong>and</strong> permits debug tools to work at a higher level of abstraction when there are no power-down events.<br />

In v7 Debug:<br />

If an implementation supports debug over power-down, then it must implement the OS Save <strong>and</strong><br />

Restore mechanism.<br />

On a SinglePower implementation, <strong>and</strong> on any other implementation that does not support debug over<br />

power-down, it is IMPLEMENTATION DEFINED whether the OS Save <strong>and</strong> Restore mechanism is<br />

implemented.<br />

If the OS Save <strong>and</strong> Restore mechanism is not implemented, the DBGOSLSR must be implemented<br />

as RAZ, <strong>and</strong> the other OS Save <strong>and</strong> Restore mechanism register encodings must be RAZ/WI.<br />

In v6 Debug <strong>and</strong> v6.1 Debug, these registers are not defined.<br />

Two of the requirements for an implementation that supports debug over power-down are:<br />

An operating system must be able to save <strong>and</strong> restore the much of the debug logic state over a<br />

power-down. This requirement is met by the OS Save <strong>and</strong> Restore mechanism.<br />

A debugger must be able to detect that a processor has powered-down. For more information, see<br />

Permissions in relation to power-down on page C6-28.<br />

C6-8 Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DDI 0406B

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

Saved successfully!

Ooh no, something went wrong!