All interrupts that come into PMU are exposed to user as Events with specific EVENTIDs defined in xpfw_events.h. Any module can register for an event (usually in CfgHandler) and the module's EventHandler will be called when an event is triggered.
To register for an RTC Event:
Status = XPfw_CoreRegisterEvent(ModPtr,XPFW_EV_RTC_SECONDS);
Example of an EventHandler:
void RtcEventHandler(const XPfw_Module_t *ModPtr, u32 EventId)
{
xil_printf("MOD%d:EVENTID: %d\r\n", ModPtr->ModId, EventId);
if(XPFW_EV_RTC_SECONDS == EventId){
/* Ack the Int in RTC Module */
Xil_Out32(RTC_RTC_INT_STATUS,1U);
xil_printf("RTC: %d \r\n", Xil_In32(RTC_CURRENT_TIME));
}
}