MLECO-2948: Minor refactoring for platform modules.

Reducing dependency on cmsis-device sources as these will
be removed under MLECO-2944. Also, starting to refactor
to allow HAL to drop NPU and TA init routines - this will
happen in future CRs.

Added platform driver for native, and subsequent patches
will attempt to get rid of the HAL "profile" specific
sources and allow platform stub implementations at a level
below HAL. This will allow platforms drivers to only
override the range of functions that they actually want to
implement and will fall back on stubs for the rest. In this
CR only "utils" have been removed.

Change-Id: I09b4a28e20847a07a956c818c6f47c74aab89063
diff --git a/source/hal/platform/simple/include/platform_drivers.h b/source/hal/platform/simple/include/platform_drivers.h
index 0fb092e..c9928c0 100644
--- a/source/hal/platform/simple/include/platform_drivers.h
+++ b/source/hal/platform/simple/include/platform_drivers.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2021 Arm Limited. All rights reserved.
+ * Copyright (c) 2021-2022 Arm Limited. All rights reserved.
  * SPDX-License-Identifier: Apache-2.0
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,18 +15,36 @@
  * limitations under the License.
  */
 
-#ifndef PLATFORM_DRIVER_H
-#define PLATFORM_DRIVER_H
+#ifndef PLATFORM_DRIVERS_H
+#define PLATFORM_DRIVERS_H
 
 #include "log_macros.h"   /* Logging related helpers. */
 
 /* Platform components */
-#include "uart_stdout.h"    /* stdout over UART. */
-#include "stubs/glcd.h"     /* LCD stubs to support use cases that use LCD */
+#include "stubs/glcd.h"             /* LCD stubs to support use cases that use LCD */
 #include "timer_simple_platform.h"  /* timer implementation */
+#include "cmsis.h"                  /* For CPU related defintiions */
 
-#include "cmsis.h"                  /* CPU device specific header file    */
-#include "peripheral_memmap.h"      /* peripheral memory map definitions */
-#include "peripheral_irqs.h"        /* IRQ numbers for the platform */
+/** Platform definitions. TODO: These should be removed. */
+#include "peripheral_memmap.h"  /* Peripheral memory map definitions. */
+#include "peripheral_irqs.h"    /* IRQ numbers for this platform. */
 
-#endif /* PLATFORM_DRIVER_H */
+/**
+ * @brief   Initialises the platform components.
+ * @return  0 if successful, error code otherwise.
+ */
+int platform_init(void);
+
+/**
+ * @brief   Teardown for platform components.
+ */
+void platform_release(void);
+
+/**
+ * @brief   Sets the platform name.
+ * @param[out] name     Name of the platform to be set
+ * @param[in]  size     Size of the input buffer
+ */
+void platform_name(char* name, size_t size);
+
+#endif /* PLATFORM_DRIVERS_H */