The platform management provides the option to power down a PU or a
subsystem. The platform management can even power down the entire FPD if none
of the FPD devices are in use and existing latency requirements allow this. If the FPD
is powered off and the APU is woken up by an interrupt triggered by a device in the LPD
or PMC domain, the GIC Proxy must be configured to allow propagation of FPD wake events.
The APU can ensure this by calling XPm_SetWakeUpSource
for all devices that might need to issue wake interrupts.
Before suspending, the PU must call the XPm_SetWakeUpSource
API and add the slaves as a wake-up source. The PU can
then set requirement to zero. However, to set the requirement to zero, the following
conditions should be met:
- No other subsystem can share the devices. In the present case, because only default subsystem is supported, this is not a consideration.
- No other PM master (that is in Running state) present in the same subsystem, as the PU that is self suspending should use the slave device.
Setting the requirement to zero indicates to the platform management that the subsystem does not require these slaves to be up. After the PU finalizes the suspend procedure, provided no devices under FPD are being used, the PMC powers the entire FPD and configures the GIC proxy to enable propagation of the wake event of the LPD or PMC domain slaves.
For more information about XPm_SetWakeupSource
,
see
OS and
Libraries Document Collection (UG643).