[Bug Fix][PDK-8103][PDK-5237][OSAL]'TimerP_getTimeInUsecs()' API return wrong time...
authorVivek Dhande <a0132295@ti.com>
Tue, 29 Sep 2020 10:52:54 +0000 (16:22 +0530)
committerSivaraj R <sivaraj@ti.com>
Tue, 29 Sep 2020 13:41:11 +0000 (08:41 -0500)
- Issue:
    - OSAL returns wrong time stamp value in microseconds when used in BM/nonOS mode
    - As a result, Applications report low performance (~2.5x less) in BM mode
- Root-cause:
    - R5 PMU frequency returned in BM is wrong
    - It is returned as 400MHz while is should be 1GHz
    - This is statically initiated for all K3 devices while it should be different for some SoCs
        - e.g. for J7 it is 1Ghz and for Maxwell, it is 400MHz
- Resolution:
    - Initialize this frequency differently for different SoCs

Signed-off-by: Vivek Dhande <a0132295@ti.com>
packages/ti/osal/src/nonos/Utils_nonos.c

index afaea5f1cc73e70b1d0aa3e63e549a604b23fe0f..e3d473ca8bb618aec957ac6cc77c076eb8d279b7 100644 (file)
@@ -59,8 +59,12 @@ uint32_t  gOsalSemAllocCnt   = 0U, gOsalSemPeak = 0U;
 uint32_t  gOsalTimerAllocCnt = 0U, gOsalTimerPeak = 0U;
 uint32_t  gOsalHwiAllocCnt   = 0U, gOsalHwiPeak = 0U;
 #ifndef OSAL_CPU_FREQ_KHZ_DEFAULT
+#if defined(SOC_J721E)
+#define OSAL_CPU_FREQ_KHZ_DEFAULT (1000000)
+#else
 #define OSAL_CPU_FREQ_KHZ_DEFAULT (400000)
 #endif
+#endif
 
 volatile bool Osal_DebugP_Assert_Val=(bool)true;