lib/sw_services/xilpm/src/versal/server/xpm_gic_proxy.c
static void XPm_GicProxyDisable(void)
{
	u32 g;
	const XPm_Pmc *Pmc = (XPm_Pmc *)XPmDevice_GetById(PM_DEV_PMC_PROC);

	for (g = 0U; g < XPm_GicProxy.GroupsCnt; g++) {
		/* PMC Global base address */
		u32 BaseAddress = Pmc->PmcGlobalBaseAddr;
		u32 DisableAddr = BaseAddress +
				  PMC_GLOBAL_GIC_PROXY_BASE_OFFSET +
				  GIC_PROXY_GROUP_OFFSET(g) +
				  GIC_PROXY_IRQ_DISABLE_OFFSET;

		u32 StatusAddr = BaseAddress +
				 PMC_GLOBAL_GIC_PROXY_BASE_OFFSET +
				 GIC_PROXY_GROUP_OFFSET(g) +
				 GIC_PROXY_IRQ_STATUS_OFFSET;

		u32 MaskAddr = BaseAddress +
			       PMC_GLOBAL_GIC_PROXY_BASE_OFFSET +
			       GIC_PROXY_GROUP_OFFSET(g) +
			       GIC_PROXY_IRQ_MASK_OFFSET;

		/* Clear interrupts in the GIC Proxy group that are set as wake */
		XPm_Out32(StatusAddr, XPm_GicProxy.Groups[g].SetMask);

		/* Disable interrupts in the GIC Proxy group that are set as wake */
		XPm_Out32(DisableAddr, XPm_GicProxy.Groups[g].SetMask);

		if (GIC_PROXY_ALL_MASK == XPm_In32(MaskAddr)) {
			XPm_Out32(BaseAddress +
				  PMC_GLOBAL_GICP_IRQ_DISABLE_OFFSET, BIT32(g));
		}
	}

	XPm_GicProxy.Flags &= (u8)(~XPM_GIC_PROXY_IS_ENABLED);
}
/**
 * XPm_GicProxyDisable() - Disable all interrupts in the GIC Proxy
 */
Disable all interrupts in the GIC Proxy
Disable all interrupts in the GIC Proxy
static void XPm_GicProxyDisable(void)
{
	u32 g;
	const XPm_Pmc *Pmc = (XPm_Pmc *)XPmDevice_GetById(PM_DEV_PMC_PROC);
	for (g = 0U; g < XPm_GicProxy.GroupsCnt; g++) {
		u32 BaseAddress = Pmc->PmcGlobalBaseAddr;
		u32 DisableAddr = BaseAddress +
				  PMC_GLOBAL_GIC_PROXY_BASE_OFFSET +
				  GIC_PROXY_GROUP_OFFSET(g) +
				  GIC_PROXY_IRQ_DISABLE_OFFSET;
		u32 StatusAddr = BaseAddress +
				 PMC_GLOBAL_GIC_PROXY_BASE_OFFSET +
				 GIC_PROXY_GROUP_OFFSET(g) +
				 GIC_PROXY_IRQ_STATUS_OFFSET;
		u32 MaskAddr = BaseAddress +
			       PMC_GLOBAL_GIC_PROXY_BASE_OFFSET +
			       GIC_PROXY_GROUP_OFFSET(g) +
			       GIC_PROXY_IRQ_MASK_OFFSET;
		XPm_Out32(StatusAddr, XPm_GicProxy.Groups[g].SetMask);
		XPm_Out32(DisableAddr, XPm_GicProxy.Groups[g].SetMask);
		if (GIC_PROXY_ALL_MASK == XPm_In32(MaskAddr)) {
			XPm_Out32(BaseAddress +
				  PMC_GLOBAL_GICP_IRQ_DISABLE_OFFSET, BIT32(g));
		}
	}
	XPm_GicProxy.Flags &= (u8)(~XPM_GIC_PROXY_IS_ENABLED);
}
static void XPm_GicProxyDisable ( void ) { u32 g ; const XPm_Pmc * Pmc = ( XPm_Pmc * ) XPmDevice_GetById ( PM_DEV_PMC_PROC ) ; for ( g = 0U ; g < XPm_GicProxy . GroupsCnt ; g ++ ) { u32 BaseAddress = Pmc -> PmcGlobalBaseAddr ; u32 DisableAddr = BaseAddress + PMC_GLOBAL_GIC_PROXY_BASE_OFFSET + GIC_PROXY_GROUP_OFFSET ( g ) + GIC_PROXY_IRQ_DISABLE_OFFSET ; u32 StatusAddr = BaseAddress + PMC_GLOBAL_GIC_PROXY_BASE_OFFSET + GIC_PROXY_GROUP_OFFSET ( g ) + GIC_PROXY_IRQ_STATUS_OFFSET ; u32 MaskAddr = BaseAddress + PMC_GLOBAL_GIC_PROXY_BASE_OFFSET + GIC_PROXY_GROUP_OFFSET ( g ) + GIC_PROXY_IRQ_MASK_OFFSET ; XPm_Out32 ( StatusAddr , XPm_GicProxy . Groups [ g ] . SetMask ) ; XPm_Out32 ( DisableAddr , XPm_GicProxy . Groups [ g ] . SetMask ) ; if ( GIC_PROXY_ALL_MASK == XPm_In32 ( MaskAddr ) ) { XPm_Out32 ( BaseAddress + PMC_GLOBAL_GICP_IRQ_DISABLE_OFFSET , BIT32 ( g ) ) ; } } XPm_GicProxy . Flags &= ( u8 ) ( ~ XPM_GIC_PROXY_IS_ENABLED ) ; }
XPm_GicProxyDisable() - Disable all interrupts in the GIC Proxy
XPm_GicProxyDisable () - Disable all interrupts in the GIC Proxy
/* PMC Global base address */ /* Clear interrupts in the GIC Proxy group that are set as wake */ /* Disable interrupts in the GIC Proxy group that are set as wake */