During the subsystem definition following line are added in the cdo for the APU subsystem:
# Healthy Boot configuration for APU subsystem
#Add HB_MON_0 to APU subsystem. Timeout(last argument) = 120000ms (0x1D4C0)
pm_add_requirement 0x1c000003 0x18250000 0x46 0xFFFFF 0x1 0x1D4C0
#Set the error action (SRST) for HB_MON_0 in case of subsystem not healthy
#Second Argument = error action; POR=0x1; SRST=0x2; ERR_OUT=0x4;
em_set_action 0x28110000 0x2 0x1
This configures the healthy boot monitoring for APU subsystem by PLM. The minimum timeout value for which PLM will wait to allow subsystem mark itself healthy is configured for 120 seconds in this case. If the subsystem fails to mark itself healthy with in 120 seconds, PLM assumes that the subsystem failed to boot properly and triggers SRST (system wide reset)
The subsystem marks itself healthy by issuing XPm_InitFinalize . The Linux system, when complete all the boot activities, calls XPm_InitFinalize to finalize its PM requirements. When Linux fails (or is not allowed) to boot, this never called and hence PLM will trigger the recovery.