MLECO-2682: CMake and source refactoring.

MLECO-2930: logging macros were extracted from hal.h and used separately around the code.

MLECO-2931: arm_math lib introduced, cmsis-dsp removed from top level linkage.

MLECO-2915: platform related post-build steps.

Change-Id: Id718884e22f262a5c070ded3f3f5d4b048820147
Signed-off-by: alexander <alexander.efremov@arm.com>
diff --git a/tests/use_case/ad/InferenceTestAD.cc b/tests/use_case/ad/InferenceTestAD.cc
index 2933fbe..6a1813f 100644
--- a/tests/use_case/ad/InferenceTestAD.cc
+++ b/tests/use_case/ad/InferenceTestAD.cc
@@ -20,7 +20,7 @@
 
 #include "AdModel.hpp"
 #include "TestData_ad.hpp"
-#include "hal.h"
+#include "log_macros.h"
 #include "TensorFlowLiteMicro.hpp"
 
 #ifndef AD_FEATURE_VEC_DATA_SIZE
diff --git a/tests/use_case/ad/MelSpecTests.cc b/tests/use_case/ad/MelSpecTests.cc
index affc67a..59a0b97 100644
--- a/tests/use_case/ad/MelSpecTests.cc
+++ b/tests/use_case/ad/MelSpecTests.cc
@@ -198,15 +198,6 @@
 
 TEST_CASE("Mel Spec calculation") {
 
-    hal_platform    platform;
-    data_acq_module dataAcq;
-    data_psn_module dataPsn;
-    platform_timer  timer;
-
-    /* Initialise the HAL and platform */
-    hal_init(&platform, &dataAcq, &dataPsn, &timer);
-    hal_platform_init(&platform);
-
     SECTION("FP32") {
         auto melSpecOutput = GetMelSpecInstance().ComputeMelSpec(testWav1);
         REQUIRE_THAT( melSpecOutput, Catch::Approx( testWavMelSpec ).margin(0.1) );
diff --git a/tests/use_case/asr/AsrFeaturesTests.cc b/tests/use_case/asr/AsrFeaturesTests.cc
index 59fe29b..940c25f 100644
--- a/tests/use_case/asr/AsrFeaturesTests.cc
+++ b/tests/use_case/asr/AsrFeaturesTests.cc
@@ -16,10 +16,10 @@
  */
 #include "DataStructures.hpp"
 #include "AsrGoldenFeatures.hpp"
-#include "hal.h"
-#include "TensorFlowLiteMicro.hpp"
 #include "Wav2LetterPreprocess.hpp"
 
+#include "log_macros.h"
+
 #include <catch.hpp>
 #include <random>
 
diff --git a/tests/use_case/asr/InferenceTestWav2Letter.cc b/tests/use_case/asr/InferenceTestWav2Letter.cc
index 3e30bd2..53c92ab 100644
--- a/tests/use_case/asr/InferenceTestWav2Letter.cc
+++ b/tests/use_case/asr/InferenceTestWav2Letter.cc
@@ -14,7 +14,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include "hal.h"
 #include "TensorFlowLiteMicro.hpp"
 #include "Wav2LetterModel.hpp"
 #include "TestData_asr.hpp"
diff --git a/tests/use_case/asr/MfccTests.cc b/tests/use_case/asr/MfccTests.cc
index c70e53e..7568661 100644
--- a/tests/use_case/asr/MfccTests.cc
+++ b/tests/use_case/asr/MfccTests.cc
@@ -135,15 +135,6 @@
 
 TEST_CASE("MFCC calculation")
 {
-    hal_platform    platform;
-    data_acq_module dataAcq;
-    data_psn_module dataPsn;
-    platform_timer  timer;
-
-    /* Initialise the HAL and platform. */
-    hal_init(&platform, &dataAcq, &dataPsn, &timer);
-    hal_platform_init(&platform);
-
     SECTION("FP32")
     {
         auto mfccOutput = GetMFCCInstance().MfccCompute(testWav1);
diff --git a/tests/use_case/asr/Wav2LetterPreprocessingTest.cc b/tests/use_case/asr/Wav2LetterPreprocessingTest.cc
index 8af9014..457257f 100644
--- a/tests/use_case/asr/Wav2LetterPreprocessingTest.cc
+++ b/tests/use_case/asr/Wav2LetterPreprocessingTest.cc
@@ -17,7 +17,6 @@
 #include "Wav2LetterPreprocess.hpp"
 
 #include <limits>
-#include <algorithm>
 #include <catch.hpp>
 
 constexpr uint32_t numMfccFeatures = 13;
@@ -97,14 +96,6 @@
 
 TEST_CASE("Preprocessing calculation INT8")
 {
-    /* Initialise the HAL and platform. */
-    hal_platform    platform;
-    data_acq_module data_acq;
-    data_psn_module data_psn;
-    platform_timer  timer;
-    hal_init(&platform, &data_acq, &data_psn, &timer);
-    hal_platform_init(&platform);
-
     /* Constants. */
     const uint32_t  windowLen       = 512;
     const uint32_t  windowStride    = 160;
@@ -135,7 +126,7 @@
     REQUIRE(prep.Invoke(testWav.data(), testWav.size(), &tensor));
 
     /* Wrap the tensor with a std::vector for ease. */
-    int8_t * tensorData = tflite::GetTensorData<int8_t>(&tensor);
+    auto* tensorData = tflite::GetTensorData<int8_t>(&tensor);
     std::vector <int8_t> vecResults =
         std::vector<int8_t>(tensorData, tensorData + tensor.bytes);
 
diff --git a/tests/use_case/img_class/InferenceTestMobilenetV2.cc b/tests/use_case/img_class/InferenceTestMobilenetV2.cc
index 07bd78f..294215f 100644
--- a/tests/use_case/img_class/InferenceTestMobilenetV2.cc
+++ b/tests/use_case/img_class/InferenceTestMobilenetV2.cc
@@ -14,7 +14,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include "hal.h"
 #include "ImageUtils.hpp"
 #include "MobileNetModel.hpp"
 #include "TensorFlowLiteMicro.hpp"
diff --git a/tests/use_case/kws/InferenceTestMicroNetKws.cc b/tests/use_case/kws/InferenceTestMicroNetKws.cc
index e6e7753..41ecc3c 100644
--- a/tests/use_case/kws/InferenceTestMicroNetKws.cc
+++ b/tests/use_case/kws/InferenceTestMicroNetKws.cc
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 #include "MicroNetKwsModel.hpp"
-#include "hal.h"
 #include "TestData_kws.hpp"
 #include "TensorFlowLiteMicro.hpp"
 
@@ -92,7 +91,7 @@
         const int8_t* input_goldenFV = get_ifm_data_array(i);;
         const int8_t* output_goldenFV = get_ofm_data_array(i);
 
-        DYNAMIC_SECTION("Executing inference with re-init")
+        DYNAMIC_SECTION("Executing inference with re-init " << i)
         {
             arm::app::MicroNetKwsModel model{};
 
diff --git a/tests/use_case/kws/MfccTests.cc b/tests/use_case/kws/MfccTests.cc
index 1d30ef4..1f5e321 100644
--- a/tests/use_case/kws/MfccTests.cc
+++ b/tests/use_case/kws/MfccTests.cc
@@ -124,15 +124,6 @@
 
 
 TEST_CASE("MFCC calculation test") {
-    hal_platform    platform;
-    data_acq_module dataAcq;
-    data_psn_module dataPsn;
-    platform_timer  timer;
-
-    /* Initialise the HAL and platform. */
-    hal_init(&platform, &dataAcq, &dataPsn, &timer);
-    hal_platform_init(&platform);
-
     SECTION("FP32")
     {
         auto mfccOutput = GetMFCCInstance().MfccCompute(testWav);
diff --git a/tests/use_case/kws_asr/InferenceTestMicroNetKws.cc b/tests/use_case/kws_asr/InferenceTestMicroNetKws.cc
index fd379b6..a493021 100644
--- a/tests/use_case/kws_asr/InferenceTestMicroNetKws.cc
+++ b/tests/use_case/kws_asr/InferenceTestMicroNetKws.cc
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 #include "MicroNetKwsModel.hpp"
-#include "hal.h"
 #include "TestData_kws.hpp"
 #include "TensorFlowLiteMicro.hpp"
 
diff --git a/tests/use_case/kws_asr/InferenceTestWav2Letter.cc b/tests/use_case/kws_asr/InferenceTestWav2Letter.cc
index 477a1dd..1c5f20a 100644
--- a/tests/use_case/kws_asr/InferenceTestWav2Letter.cc
+++ b/tests/use_case/kws_asr/InferenceTestWav2Letter.cc
@@ -14,7 +14,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include "hal.h"
 #include "TensorFlowLiteMicro.hpp"
 #include "Wav2LetterModel.hpp"
 #include "TestData_asr.hpp"
diff --git a/tests/use_case/kws_asr/MfccTests.cc b/tests/use_case/kws_asr/MfccTests.cc
index c0fb723..3ebdcf4 100644
--- a/tests/use_case/kws_asr/MfccTests.cc
+++ b/tests/use_case/kws_asr/MfccTests.cc
@@ -124,15 +124,6 @@
 
 TEST_CASE("MFCC calculation test")
 {
-    hal_platform    platform;
-    data_acq_module dataAcq;
-    data_psn_module dataPsn;
-    platform_timer  timer;
-
-    /* Initialise the HAL and platform. */
-    hal_init(&platform, &dataAcq, &dataPsn, &timer);
-    hal_platform_init(&platform);
-
     SECTION("FP32")
     {
         auto mfccOutput = GetMFCCInstance().MfccCompute(testWav);
diff --git a/tests/use_case/kws_asr/Wav2LetterPreprocessingTest.cc b/tests/use_case/kws_asr/Wav2LetterPreprocessingTest.cc
index 16dbea2..26ddb24 100644
--- a/tests/use_case/kws_asr/Wav2LetterPreprocessingTest.cc
+++ b/tests/use_case/kws_asr/Wav2LetterPreprocessingTest.cc
@@ -97,13 +97,6 @@
 
 TEST_CASE("Preprocessing calculation INT8")
 {
-    /* Initialise the HAL and platform. */
-    hal_platform    platform;
-    data_acq_module data_acq;
-    data_psn_module data_psn;
-    platform_timer  timer;
-    hal_init(&platform, &data_acq, &data_psn, &timer);
-    hal_platform_init(&platform);
 
     /* Constants. */
     const uint32_t  windowLen       = 512;
diff --git a/tests/use_case/noise_reduction/InferenceTestRNNoise.cc b/tests/use_case/noise_reduction/InferenceTestRNNoise.cc
index f32a460..4c9786f 100644
--- a/tests/use_case/noise_reduction/InferenceTestRNNoise.cc
+++ b/tests/use_case/noise_reduction/InferenceTestRNNoise.cc
@@ -14,7 +14,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include "hal.h"
 #include "TensorFlowLiteMicro.hpp"
 #include "RNNoiseModel.hpp"
 #include "TestData_noise_reduction.hpp"
diff --git a/tests/use_case/noise_reduction/RNNoiseModelTests.cc b/tests/use_case/noise_reduction/RNNoiseModelTests.cc
index 705c41a..7798975 100644
--- a/tests/use_case/noise_reduction/RNNoiseModelTests.cc
+++ b/tests/use_case/noise_reduction/RNNoiseModelTests.cc
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 #include "RNNoiseModel.hpp"
-#include "hal.h"
 #include "TensorFlowLiteMicro.hpp"
 #include "TestData_noise_reduction.hpp"
 
diff --git a/tests/use_case/object_detection/InferenceTestYoloFastest.cc b/tests/use_case/object_detection/InferenceTestYoloFastest.cc
index e5a5efe..d9cabbd 100644
--- a/tests/use_case/object_detection/InferenceTestYoloFastest.cc
+++ b/tests/use_case/object_detection/InferenceTestYoloFastest.cc
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-#include "hal.h"
+#include "log_macros.h"
 #include "ImageUtils.hpp"
 #include "YoloFastestModel.hpp"
 #include "TensorFlowLiteMicro.hpp"
diff --git a/tests/use_case/vww/InferenceVisualWakeWordModelTests.cc b/tests/use_case/vww/InferenceVisualWakeWordModelTests.cc
index 82fea9f..04dce0d 100644
--- a/tests/use_case/vww/InferenceVisualWakeWordModelTests.cc
+++ b/tests/use_case/vww/InferenceVisualWakeWordModelTests.cc
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-#include "hal.h"
 #include "ImageUtils.hpp"
 #include "TestData_vww.hpp"
 #include "VisualWakeWordModel.hpp"