From 4078f75cce41d446aece889c103297954d2dcfd4 Mon Sep 17 00:00:00 2001 From: Sarat Chand Savitala Date: Mon, 13 Apr 2015 19:20:02 +0530 Subject: [PATCH] sw_apps:zynq_fsbl: Corrected logic to clear DMA done count for PCAP Corresponding fields in the devcfg.STATUS register are written to, for clearing DMA done count. Signed-off-by: Sarat Chand Savitala --- lib/sw_apps/zynq_fsbl/src/fsbl.h | 5 +++++ lib/sw_apps/zynq_fsbl/src/pcap.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/sw_apps/zynq_fsbl/src/fsbl.h b/lib/sw_apps/zynq_fsbl/src/fsbl.h index 4e6d2fe9..97e60125 100644 --- a/lib/sw_apps/zynq_fsbl/src/fsbl.h +++ b/lib/sw_apps/zynq_fsbl/src/fsbl.h @@ -223,6 +223,11 @@ * from build 2015.1_1210_1, causing compilation error. * Resolution: Arguments for f_mount in InitSD() are * changed as per new signature. +* 13.00a ssc 04/10/15 846899 - FSBL -In the file pcap.c, to clear DMA done +* count, devcfg.INT_STS register is written to, which is +* not correct. +* Resolution: Corresponding fields in the devcfg.STATUS +* register are written to, for clearing DMA done count. * * * diff --git a/lib/sw_apps/zynq_fsbl/src/pcap.c b/lib/sw_apps/zynq_fsbl/src/pcap.c index a2f3f23c..9f6777c3 100644 --- a/lib/sw_apps/zynq_fsbl/src/pcap.c +++ b/lib/sw_apps/zynq_fsbl/src/pcap.c @@ -72,6 +72,8 @@ * 8.00a kc 2/20/14 Fix for CR#775631 - FSBL: FsblGetGlobalTimer() * is not proper * 10.00a kc 07/24/14 Fix for CR#809336 - Minor code cleanup +* 13.00a ssc 04/10/15 Fix for CR#846899 - Corrected logic to clear +* DMA done count * * * @note @@ -566,7 +568,7 @@ u32 ClearPcapStatus(void) } if ((StatusReg & XDCFG_STATUS_DMA_DONE_CNT_MASK) != 0) { - XDcfg_IntrClear(DcfgInstPtr, StatusReg & + XDcfg_SetStatusRegister(DcfgInstPtr, StatusReg | XDCFG_STATUS_DMA_DONE_CNT_MASK); }