Power Domain and Module Topology
167
SPRUH82C – April 2013 – Revised September 2016
Copyright © 2013–2016, Texas Instruments Incorporated
Power and Sleep Controller (PSC)
8.2.2 Module States
The PSC defines several possible states for a module. This various states are essentially a combination of
the module reset asserted or de-asserted and module clock on/enabled or off/disabled. The various
module states are defined in
The key difference between the Auto Sleep and Auto Wake states is that once the module is configured in
Auto Sleep mode, it will transition back to the clock disabled state (automatically sleep) after servicing the
internal read/write access request where as in Auto Wake mode, on receiving the first internal read/write
access request, the module will permanently transition from the clock disabled to clock enabled state
(automatically wake).
When the module state is programmed to Disable, SwRstDisable, Auto Sleep or Auto Wake modes,
where in the module clocks are off/disabled, an external event or I/O request cannot enable the clocks.
For the module to appropriately respond to such external request, it would need to be reconfigured to the
Enable state.
8.2.2.1
Auto Sleep/Wake Only Configurations and Limitation
NOTE:
Currently no modules should be configured in Auto Sleep or Auto Wake modes. If the
module clocks need to gated/disabled for power savings, you should program the module
state to Disable. For Auto Sleep/Auto Wake Only modules, disabling the clock is not
supported and they should be kept in their default “Enable” state.
and
each have a column to indicate whether or not the LPSC configuration for a
module is Auto Sleep/Wake Only. Modules that have a “Yes” marked for the Auto Sleep/Wake Only
column can be programmed in software to be in Enable, Auto Sleep and Auto Wake states only; that is, if
the software tries to program these modules to Disable, SyncReset, or SwRstDisable state the power
sleep controller ignores these transition requests and transitions the module state to Enable.
8.2.2.2
Local Reset
In addition to module reset, the following module can be reset using a special local reset that is also a part
of the PSC module control for resets.
•
ARM: When the ARM local reset is asserted the entire ARM processor is reset , including cache etc.
This does not include the ARM RAM/ROM or ARM interrupt controller module as these exist outside
the ARM core. The local reset for ARM additionally ensures that any outstanding requests are
completed before ARM is reset, therefore for scenarios where it is needed to just reset the ARM locally
but not change the state of clocks, user can use ARM local reset feature.
The procedures for asserting and de-asserting the local reset are as follows (where
n
corresponds to the
module that supports local reset):
1. Clear the LRST bit in the module control register (MDCTL
n
) to 0 to assert the module’s local reset.
2. Set the LRST bit in the module control register (MDCTL
n
) to 1 to de-assert module’s local reset.
If the CPU is in the enable state, it immediately executes program instructions after reset is de-asserted.