From 4d686c08e011e0817f4bc9b1c4da026472edb21a Mon Sep 17 00:00:00 2001 From: Andrei-Liviu Simion Date: Wed, 21 Jan 2015 10:25:48 -0800 Subject: [PATCH] dp: Check for ARM first for usleep. Zynq systems may have both MicroBlaze and ARM. If this is the case, assume that the application is running on an ARM processor. Signed-off-by: Andrei-Liviu Simion --- XilinxProcessorIPLib/drivers/dp/src/xdprx.c | 8 ++++---- XilinxProcessorIPLib/drivers/dp/src/xdptx.c | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/XilinxProcessorIPLib/drivers/dp/src/xdprx.c b/XilinxProcessorIPLib/drivers/dp/src/xdprx.c index 9c7ab787..fb857cad 100644 --- a/XilinxProcessorIPLib/drivers/dp/src/xdprx.c +++ b/XilinxProcessorIPLib/drivers/dp/src/xdprx.c @@ -457,7 +457,10 @@ void XDprx_WaitUs(XDprx *InstancePtr, u32 MicroSeconds) return; } -#if defined(__MICROBLAZE__) +#if defined(__arm__) + /* Wait the requested amount of time. */ + usleep(MicroSeconds); +#elif defined(__MICROBLAZE__) if (InstancePtr->UserTimerWaitUs != NULL) { /* Use the timer handler specified by the user for better * accuracy. */ @@ -468,9 +471,6 @@ void XDprx_WaitUs(XDprx *InstancePtr, u32 MicroSeconds) u32 MilliSeconds = (MicroSeconds + 999) / 1000; MB_Sleep(MilliSeconds); } -#elif defined(__arm__) - /* Wait the requested amount of time. */ - usleep(MicroSeconds); #endif } diff --git a/XilinxProcessorIPLib/drivers/dp/src/xdptx.c b/XilinxProcessorIPLib/drivers/dp/src/xdptx.c index c6b12cf8..be4638be 100644 --- a/XilinxProcessorIPLib/drivers/dp/src/xdptx.c +++ b/XilinxProcessorIPLib/drivers/dp/src/xdptx.c @@ -1387,7 +1387,10 @@ void XDptx_WaitUs(XDptx *InstancePtr, u32 MicroSeconds) return; } -#if defined(__MICROBLAZE__) +#if defined(__arm__) + /* Wait the requested amount of time. */ + usleep(MicroSeconds); +#elif defined(__MICROBLAZE__) if (InstancePtr->UserTimerWaitUs != NULL) { /* Use the timer handler specified by the user for better * accuracy. */ @@ -1398,9 +1401,6 @@ void XDptx_WaitUs(XDptx *InstancePtr, u32 MicroSeconds) u32 MilliSeconds = (MicroSeconds + 999) / 1000; MB_Sleep(MilliSeconds); } -#elif defined(__arm__) - /* Wait the requested amount of time. */ - usleep(MicroSeconds); #endif }