diff --git a/dependencies/cmsis b/dependencies/cmsis
index e9637de..c43379b 160000
--- a/dependencies/cmsis
+++ b/dependencies/cmsis
@@ -1 +1 @@
-Subproject commit e9637de2b4cfd99cd5c93893d88593262d8660c1
+Subproject commit c43379be65dec9d808b72b8efbe52cad762909be
diff --git a/dependencies/core-driver b/dependencies/core-driver
index d1ea036..6eab40b 160000
--- a/dependencies/core-driver
+++ b/dependencies/core-driver
@@ -1 +1 @@
-Subproject commit d1ea036bd870663d737db9bfbb25e2aa04a389e0
+Subproject commit 6eab40b2051882833dd446cd56ba7c17a5f7082c
diff --git a/dependencies/core-software b/dependencies/core-software
index 8b1d9de..3bd3423 160000
--- a/dependencies/core-software
+++ b/dependencies/core-software
@@ -1 +1 @@
-Subproject commit 8b1d9ded33ec59545897ff45019d05403dba7eee
+Subproject commit 3bd342372638b185d097308445747a1a668fce01
diff --git a/dependencies/tensorflow b/dependencies/tensorflow
index f510d38..4e091a4 160000
--- a/dependencies/tensorflow
+++ b/dependencies/tensorflow
@@ -1 +1 @@
-Subproject commit f510d38d0eaa3195ce3af66e3f32648740f08afb
+Subproject commit 4e091a46e935afcb27035e538044e37892d4a983
diff --git a/download_dependencies.py b/download_dependencies.py
index 7219203..dbdeffb 100755
--- a/download_dependencies.py
+++ b/download_dependencies.py
@@ -25,10 +25,10 @@
 from urllib.request import urlopen
 from zipfile import ZipFile
 
-tf = "https://github.com/tensorflow/tflite-micro/archive/f510d38d0eaa3195ce3af66e3f32648740f08afb.zip"
-cmsis = "https://github.com/ARM-software/CMSIS_5/archive/e9637de2b4cfd99cd5c93893d88593262d8660c1.zip"
-ethos_u_core_sw = "https://git.mlplatform.org/ml/ethos-u/ethos-u-core-software.git/snapshot/ethos-u-core-software-8b1d9ded33ec59545897ff45019d05403dba7eee.tar.gz"
-ethos_u_core_driver = "https://git.mlplatform.org/ml/ethos-u/ethos-u-core-driver.git/snapshot/ethos-u-core-driver-d1ea036bd870663d737db9bfbb25e2aa04a389e0.tar.gz"
+tf = "https://github.com/tensorflow/tflite-micro/archive/4e091a46e935afcb27035e538044e37892d4a983.zip"
+cmsis = "https://github.com/ARM-software/CMSIS_5/archive/c43379be65dec9d808b72b8efbe52cad762909be.zip"
+ethos_u_core_sw = "https://git.mlplatform.org/ml/ethos-u/ethos-u-core-software.git/snapshot/ethos-u-core-software-21.08.tar.gz"
+ethos_u_core_driver = "https://git.mlplatform.org/ml/ethos-u/ethos-u-core-driver.git/snapshot/ethos-u-core-driver-21.08.tar.gz"
 
 
 def download(url_file: str, post_process=None):
diff --git a/scripts/make/cortex_m_ethos_eval_makefile.inc b/scripts/make/cortex_m_ethos_eval_makefile.inc
index 407bc85..27bb9d6 100644
--- a/scripts/make/cortex_m_ethos_eval_makefile.inc
+++ b/scripts/make/cortex_m_ethos_eval_makefile.inc
@@ -127,15 +127,6 @@
     $(error "TOOLCHAIN=$(TOOLCHAIN) is not supported.")
   endif
 
-# TODO(#47718): resolve warnings.
-CXX_OMIT_ERRORS = \
-  -Wno-implicit-fallthrough \
-  -Wno-unused-variable
-
-# TODO: Remove when Arm Ethos-U NPU driver is updated to version > 21.05
-CC_OMIT_ERRORS = \
-  ${CXX_OMIT_ERRORS} \
-  -Wno-int-conversion
 
   PLATFORM_FLAGS = \
     -DTF_LITE_MCU_DEBUG_LOG \
@@ -151,7 +142,7 @@
     $(TARGET_SPECIFIC_FLAGS)
 
   # Common + C/C++ flags
-  CXXFLAGS += $(PLATFORM_FLAGS) ${CXX_OMIT_ERRORS}
-  CCFLAGS += $(PLATFORM_FLAGS) ${CC_OMIT_ERRORS}
+  CXXFLAGS += $(PLATFORM_FLAGS)
+  CCFLAGS += $(PLATFORM_FLAGS)
 
 endif
diff --git a/source/application/hal/hal.c b/source/application/hal/hal.c
index 1515697..12bb7ef 100644
--- a/source/application/hal/hal.c
+++ b/source/application/hal/hal.c
@@ -28,7 +28,7 @@
 #include "timing_adapter.h"             /* Arm Ethos-U timing adapter driver header */
 #include "timing_adapter_settings.h"    /* Arm Ethos-U timing adapter settings */
 
-extern struct ethosu_driver ethosu_drv; /* Default Ethos-U device driver */
+struct ethosu_driver ethosu_drv; /* Default Ethos-U device driver */
 
 /**
  * @brief   Initialises the Arm Ethos-U NPU
@@ -245,22 +245,24 @@
     info("Ethos-U device initialised\n");
 
     /* Get Ethos-U version */
-    struct ethosu_version version;
-    if (0 != (err = ethosu_get_version(&ethosu_drv, &version))) {
-        printf_err("failed to fetch Ethos-U version info\n");
-        return err;
-    }
+    struct ethosu_driver_version driver_version;
+    struct ethosu_hw_info hw_info;
+    
+    ethosu_get_driver_version(&driver_version);
+    ethosu_get_hw_info(&ethosu_drv, &hw_info);
 
     info("Ethos-U version info:\n");
-    info("\tArch:       v%u.%u.%u\n", version.id.arch_major_rev,
-                                    version.id.arch_minor_rev,
-                                    version.id.arch_patch_rev);
-    info("\tDriver:     v%u.%u.%u\n", version.id.driver_major_rev,
-                                    version.id.driver_minor_rev,
-                                    version.id.driver_patch_rev);
-    info("\tMACs/cc:    %u\n", (1 << version.cfg.macs_per_cc));
-    info("\tCmd stream: v%u\n", version.cfg.cmd_stream_version);
-    info("\tSHRAM size: %u\n", version.cfg.shram_size);
+    info("\tArch:       v%"PRIu32".%"PRIu32".%"PRIu32"\n", 
+                                    hw_info.version.arch_major_rev,
+                                    hw_info.version.arch_minor_rev,
+                                    hw_info.version.arch_patch_rev);
+    info("\tDriver:     v%"PRIu8".%"PRIu8".%"PRIu8"\n", 
+                                    driver_version.major,
+                                    driver_version.minor,
+                                    driver_version.patch);
+    info("\tMACs/cc:    %"PRIu32"\n", (uint32_t)(1 << hw_info.cfg.macs_per_cc));
+    info("\tCmd stream: v%"PRIu32"\n", hw_info.cfg.cmd_stream_version);
+    info("\tSHRAM size: %"PRIu32"\n", hw_info.cfg.shram_size);
 
     return 0;
 }
