MLECO-3096: Removing "timer" from HAL profile.

Attempting to have timer functionality contained within
the platform drivers "package" as it should (in line with
the refactoring work done so far under HAL). This will
ensure that we don't need two timer implementations under
HAL "profiles" and therefore, this whole directory can be
removed.

This change also addressed issue with the applicatio level
Profiler code knowing about how the PMU has been set up by
the platform code. This link has been removed completely.
This will make it much easier to add/amend the Ethos-U PMU
event counters types and give each platform the capability
of populating their relvant counters. The application level
Profiler doesn't know which metrics it is displaying but
just calculates and maintains statistics for whatever PMU
counters it receives from the HAL level.

A fix for timing adapter issue introduced in the last CR
is also included.

Change-Id: Ia46e03a06e7b8e42b9ed2ba8f2af2dcd2229c110
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
diff --git a/source/profiler/include/Profiler.hpp b/source/profiler/include/Profiler.hpp
index 503d805..b8f9089 100644
--- a/source/profiler/include/Profiler.hpp
+++ b/source/profiler/include/Profiler.hpp
@@ -45,14 +45,7 @@
 
     /** A single profiling unit definition. */
     struct ProfilingUnit {
-        uint64_t npuCycles = 0;
-        uint64_t activeNpuCycles = 0;
-        uint64_t idleNpuCycles = 0;
-        uint64_t axi0writes = 0;
-        uint64_t axi0reads = 0;
-        uint64_t axi1reads = 0;
-        uint64_t cpuCycles = 0;
-        time_t time = 0;
+        pmu_counters counters;
     };
 
     /* A collection of profiling units. */
@@ -108,8 +101,8 @@
 
     private:
         ProfilingMap    m_series;                /* Profiling series map. */
-        time_counter    m_tstampSt{};            /* Container for a current starting timestamp. */
-        time_counter    m_tstampEnd{};           /* Container for a current ending timestamp. */
+        pmu_counters    m_tstampSt{};            /* Container for a current starting timestamp. */
+        pmu_counters    m_tstampEnd{};           /* Container for a current ending timestamp. */
         hal_platform *  m_pPlatform = nullptr;   /* Platform pointer - to get the timer. */
 
         bool            m_started = false;       /* Indicates profiler has been started. */
@@ -125,7 +118,7 @@
          * @param[in]   name    Name for the profiling unit series to be
          *                      appended to.
          **/
-        void AddProfilingUnit(time_counter start, time_counter end,
+        void AddProfilingUnit(pmu_counters start, pmu_counters end,
                               const std::string& name);
     };