/* driver receive an phy status change interrupt while in D0 and check that phy_status is down.  */
void EnablePhyComa(struct et131x_adapter *etdev)
/* driver receive an phy status change interrupt while in D0 and check that phy_status is down.  */
void EnablePhyComa(struct et131x_adapter *etdev)
{
	unsigned long flags;
	u32 GlobalPmCSR;
	GlobalPmCSR = readl(&etdev->regs->global.pm_csr);
	etdev->PoMgmt.PowerDownSpeed = etdev->AiForceSpeed;
	etdev->PoMgmt.PowerDownDuplex = etdev->AiForceDpx;
	spin_lock_irqsave(&etdev->SendHWLock, flags);
	etdev->Flags |= fMP_ADAPTER_LOWER_POWER;
	spin_unlock_irqrestore(&etdev->SendHWLock, flags);
	GlobalPmCSR &= ~ET_PMCSR_INIT;
	writel(GlobalPmCSR, &etdev->regs->global.pm_csr);
	GlobalPmCSR |= ET_PM_PHY_SW_COMA;
	writel(GlobalPmCSR, &etdev->regs->global.pm_csr);
}