Compare commits

..

1 commit

View file

@ -221,31 +221,31 @@ int XAxiDma_UpdateBdRingCDesc(XAxiDma_BdRing* RingPtr)
if (!RingIndex) {
XAxiDma_WriteReg(RegBase,
XAXIDMA_CDESC_OFFSET,
(u32)(BdPtr & XAXIDMA_DESC_LSB_MASK));
(XAXIDMA_VIRT_TO_PHYS(BdPtr) & XAXIDMA_DESC_LSB_MASK));
if (RingPtr->Addr_ext)
XAxiDma_WriteReg(RegBase,
XAXIDMA_CDESC_MSB_OFFSET,
UPPER_32_BITS(BdPtr));
UPPER_32_BITS(XAXIDMA_VIRT_TO_PHYS(BdPtr)));
}
else {
XAxiDma_WriteReg(RegBase,
(XAXIDMA_RX_CDESC0_OFFSET +
(RingIndex - 1) * XAXIDMA_RX_NDESC_OFFSET),
(u32)(BdPtr & XAXIDMA_DESC_LSB_MASK));
(XAXIDMA_VIRT_TO_PHYS(BdPtr) & XAXIDMA_DESC_LSB_MASK));
if (RingPtr->Addr_ext)
XAxiDma_WriteReg(RegBase,
(XAXIDMA_RX_CDESC0_MSB_OFFSET +
(RingIndex - 1) * XAXIDMA_RX_NDESC_OFFSET),
UPPER_32_BITS(BdPtr));
UPPER_32_BITS(XAXIDMA_VIRT_TO_PHYS(BdPtr)));
}
}
else {
XAxiDma_WriteReg(RegBase,
XAXIDMA_CDESC_OFFSET,
(u32)(BdPtr & XAXIDMA_DESC_LSB_MASK));
(XAXIDMA_VIRT_TO_PHYS(BdPtr) & XAXIDMA_DESC_LSB_MASK));
if (RingPtr->Addr_ext)
XAxiDma_WriteReg(RegBase, XAXIDMA_CDESC_MSB_OFFSET,
UPPER_32_BITS(BdPtr));
UPPER_32_BITS(XAXIDMA_VIRT_TO_PHYS(BdPtr)));
}
}
else {
@ -265,29 +265,29 @@ int XAxiDma_UpdateBdRingCDesc(XAxiDma_BdRing* RingPtr)
if (RingPtr->IsRxChannel) {
if (!RingIndex) {
XAxiDma_WriteReg(RegBase,
XAXIDMA_CDESC_OFFSET,(u32) (BdPtr & XAXIDMA_DESC_LSB_MASK));
XAXIDMA_CDESC_OFFSET,(XAXIDMA_VIRT_TO_PHYS(BdPtr) & XAXIDMA_DESC_LSB_MASK));
if (RingPtr->Addr_ext)
XAxiDma_WriteReg(RegBase, XAXIDMA_CDESC_MSB_OFFSET,
UPPER_32_BITS(BdPtr));
UPPER_32_BITS(XAXIDMA_VIRT_TO_PHYS(BdPtr)));
}
else {
XAxiDma_WriteReg(RegBase,
(XAXIDMA_RX_CDESC0_OFFSET +
(RingIndex - 1) * XAXIDMA_RX_NDESC_OFFSET),
(u32)(BdPtr & XAXIDMA_DESC_LSB_MASK));
(XAXIDMA_VIRT_TO_PHYS(BdPtr) & XAXIDMA_DESC_LSB_MASK));
if (RingPtr->Addr_ext)
XAxiDma_WriteReg(RegBase,
(XAXIDMA_RX_CDESC0_MSB_OFFSET +
(RingIndex - 1) * XAXIDMA_RX_NDESC_OFFSET),
UPPER_32_BITS(BdPtr));
UPPER_32_BITS(XAXIDMA_VIRT_TO_PHYS(BdPtr)));
}
}
else {
XAxiDma_WriteReg(RegBase,
XAXIDMA_CDESC_OFFSET, (u32)(BdPtr & XAXIDMA_DESC_LSB_MASK));
XAXIDMA_CDESC_OFFSET, (XAXIDMA_VIRT_TO_PHYS(BdPtr) & XAXIDMA_DESC_LSB_MASK));
if (RingPtr->Addr_ext)
XAxiDma_WriteReg(RegBase, XAXIDMA_CDESC_MSB_OFFSET,
UPPER_32_BITS(BdPtr));
UPPER_32_BITS(XAXIDMA_VIRT_TO_PHYS(BdPtr)));
}
break;
}
@ -471,7 +471,7 @@ u32 XAxiDma_BdRingCreate(XAxiDma_BdRing *RingPtr, UINTPTR PhysAddr,
RingPtr->HwHead = (XAxiDma_Bd *) VirtAddr;
RingPtr->HwTail = (XAxiDma_Bd *) VirtAddr;
RingPtr->PostHead = (XAxiDma_Bd *) VirtAddr;
RingPtr->BdaRestart = (XAxiDma_Bd *) PhysAddr;
RingPtr->BdaRestart = (XAxiDma_Bd *) VirtAddr;
return XST_SUCCESS;
}