From 46fa02ba07f2a6438cb9a2197a36e56b3e8e2df0 Mon Sep 17 00:00:00 2001 From: Om Mishra <om.prakash.mishra@xilinx.com> Date: Tue, 13 Jan 2015 14:34:22 +0530 Subject: [PATCH] emacps_v3_0: modification has been done with respect to versioin id register This patch has modified source code of emacps_v3_0 driver on Zynq and Zynq ultrascale MP Signed-off-by: Om Mishra <omprakas@xilinx.com> --- XilinxProcessorIPLib/drivers/emacps/src/xemacps.c | 8 ++++---- XilinxProcessorIPLib/drivers/emacps/src/xemacps_intr.c | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/XilinxProcessorIPLib/drivers/emacps/src/xemacps.c b/XilinxProcessorIPLib/drivers/emacps/src/xemacps.c index 41b3784b..5df69d2d 100644 --- a/XilinxProcessorIPLib/drivers/emacps/src/xemacps.c +++ b/XilinxProcessorIPLib/drivers/emacps/src/xemacps.c @@ -198,7 +198,7 @@ void XEmacPs_Start(XEmacPs *InstancePtr) (u32)XEMACPS_IXR_TXCOMPL_MASK)); /* Enable TX Q1 Interrupts */ - if (InstancePtr->Version == 7) + if (InstancePtr->Version > 2) XEmacPs_IntQ1Enable(InstancePtr, XEMACPS_INTQ1_IXR_ALL_MASK); /* Mark as started */ @@ -317,7 +317,7 @@ void XEmacPs_Reset(XEmacPs *InstancePtr) ((u32)XEMACPS_NWCFG_100_MASK | (u32)XEMACPS_NWCFG_FDEN_MASK | (u32)XEMACPS_NWCFG_UCASTHASHEN_MASK)); - if (InstancePtr->Version == 7) { + if (InstancePtr->Version > 2) { XEmacPs_WriteReg(InstancePtr->Config.BaseAddress, XEMACPS_NWCFG_OFFSET, (XEmacPs_ReadReg(InstancePtr->Config.BaseAddress, XEMACPS_NWCFG_OFFSET) | XEMACPS_NWCFG_DWIDTH_64_MASK)); @@ -336,7 +336,7 @@ void XEmacPs_Reset(XEmacPs *InstancePtr) /* Single bursts */ /* FIXME: Why Single bursts? */ - if (InstancePtr->Version == 7) { + if (InstancePtr->Version > 2) { XEmacPs_WriteReg(InstancePtr->Config.BaseAddress, XEMACPS_DMACR_OFFSET, (XEmacPs_ReadReg(InstancePtr->Config.BaseAddress, XEMACPS_DMACR_OFFSET) | (u32)XEMACPS_DMACR_INCR4_AHB_BURST)); @@ -352,7 +352,7 @@ void XEmacPs_Reset(XEmacPs *InstancePtr) XEMACPS_TXSR_OFFSET, 0x0U); XEmacPs_SetQueuePtr(InstancePtr, 0, 0x00U, (u16)XEMACPS_SEND); - if (InstancePtr->Version == 7) + if (InstancePtr->Version > 2) XEmacPs_SetQueuePtr(InstancePtr, 0, 0x01U, (u16)XEMACPS_SEND); XEmacPs_SetQueuePtr(InstancePtr, 0, 0x00U, (u16)XEMACPS_RECV); diff --git a/XilinxProcessorIPLib/drivers/emacps/src/xemacps_intr.c b/XilinxProcessorIPLib/drivers/emacps/src/xemacps_intr.c index 40bde82b..de01f79b 100644 --- a/XilinxProcessorIPLib/drivers/emacps/src/xemacps_intr.c +++ b/XilinxProcessorIPLib/drivers/emacps/src/xemacps_intr.c @@ -162,7 +162,7 @@ void XEmacPs_IntrHandler(void *XEmacPsPtr) /* Read Transmit Q1 ISR */ - if (InstancePtr->Version == 7) + if (InstancePtr->Version > 2) RegQ1ISR = XEmacPs_ReadReg(InstancePtr->Config.BaseAddress, XEMACPS_INTQ1_STS_OFFSET); @@ -182,7 +182,7 @@ void XEmacPs_IntrHandler(void *XEmacPsPtr) } /* Transmit Q1 complete interrupt */ - if ((InstancePtr->Version == 7) && + if ((InstancePtr->Version > 2) && ((RegQ1ISR & XEMACPS_INTQ1SR_TXCOMPL_MASK) != 0x00000000U)) { /* Clear TX status register TX complete indication but preserve * error bits if there is any */ @@ -235,7 +235,7 @@ void XEmacPs_IntrHandler(void *XEmacPsPtr) * Have to distinguish this bit to handle the real error condition. */ /* Transmit Q1 error conditions interrupt */ - if ((InstancePtr->Version == 7) && + if ((InstancePtr->Version > 2) && ((RegQ1ISR & XEMACPS_INTQ1SR_TXERR_MASK) != 0x00000000U) && ((RegQ1ISR & XEMACPS_INTQ1SR_TXCOMPL_MASK) != 0x00000000U)) { /* Clear Interrupt Q1 status register */