We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

Showing results for 
Search instead for 
Did you mean: 
Visitor epech
Registered: ‎07-21-2016


I'm trying to run a very simple "Hello World" baremetal program on the Zedboard. 


I wrote a function where I'm trying to configure a VDMA:


static unsigned long g_Framebuffer1[FRAMEBUFFER_SIZE];
static unsigned long g_Framebuffer2[FRAMEBUFFER_SIZE];
static unsigned long g_Framebuffer3[FRAMEBUFFER_SIZE];

static XAxiVdma_Config* pAxiVdmaConfig;
static XAxiVdma g_AxiVdma;
static XAxiVdma_DmaSetup g_DmaSetup;

void ConfigureVDMA()
	pAxiVdmaConfig = XAxiVdma_LookupConfig(XPAR_AXI_VDMA_0_DEVICE_ID);

	XAxiVdma_CfgInitialize(&g_AxiVdma, pAxiVdmaConfig, 0);
	g_DmaSetup.EnableCircularBuf = 1;
	g_DmaSetup.EnableFrameCounter = 0;
	g_DmaSetup.EnableSync = 0;
	g_DmaSetup.FixedFrameStoreAddr = 0;
	g_DmaSetup.FrameStoreStartAddr[0] = (u32) &g_Framebuffer1;
	g_DmaSetup.FrameStoreStartAddr[1] = (u32) &g_Framebuffer2;
	g_DmaSetup.FrameStoreStartAddr[2] = (u32) &g_Framebuffer3;
	g_DmaSetup.FrameDelay = 0;
	g_DmaSetup.GenLockRepeat = 0;
	g_DmaSetup.HoriSizeInput = 1280;
	g_DmaSetup.PointNum = 0;
	g_DmaSetup.Stride = 1280;
	g_DmaSetup.VertSizeInput = 1080;

	XAxiVdma_StartWriteFrame(&g_AxiVdma, &g_DmaSetup);




When I try to debug the software, if I have that function in the code it will go directly to the PrefetchAbortHandler, even if the function is not called from anywhere in the software.


If I comment out the function then the debugger will run correctly and it'll start at main where I can step through the code as expected.


I tried the following:

* Commented out the function and the call to the function => OK

* Leave function in the code, commented out the call to the function from main => Error

* Leave function in the code, leave the call to the function from main => Error


I have the same problem when I try to configure a VTC.


Any ideas are welcome.






0 Kudos
1 Reply
Observer ajk
Registered: ‎12-22-2016

Re: PrefetchAbortHandler


I am using SDK 2016.2 and have exactly the same problem. I have added a file with some functions for SPI IP. As I was trying out the working of the SPI, I coded different functions. So, when I finally ended up with the functions that I know works right for the SPI, I commented out the unwanted functions. These were also not called in any other part of code. When starting debug with SDK, it lands at FreeRTOS_PrefetchAbortHandler. If I simply removed the comments around the functions, the Debug works.


Kindly help. Thanks.

0 Kudos