MLBEDSW-5102 Update removal of memory only operators

Memory only operators such as Reshape, Squeeze and ExpandDims are
removed in the graph optimiser step.

- Added semantic check that memory only operators have same
  quantisation parameters on ifm/ofm.
- Added support for the ExpandDims operator.
- Addition and cleanup of related unit tests.
- Removed TOSA from the generated SUPPORTED_OPS.md documentation.

Signed-off-by: Jonas Ohlsson <jonas.ohlsson@arm.com>
Change-Id: If848d8afc58c18806e10997ed94e4dae83f30879
diff --git a/ethosu/vela/vela.py b/ethosu/vela/vela.py
index 9448749..8a80827 100644
--- a/ethosu/vela/vela.py
+++ b/ethosu/vela/vela.py
@@ -167,6 +167,10 @@
 
 
 def generate_supported_ops():
+    # Exclude network type from generation by adding value to exclude list.
+    # To easily exclude NetworkType from generated documentation.
+    exclude_generation_network_type_value = [NetworkType.TOSA.value]
+
     lines = [
         "# Supported Ops",
         "",
@@ -180,11 +184,17 @@
     ]
 
     for network_type in NetworkType:
+        if network_type.value in exclude_generation_network_type_value:
+            continue
+
         lines += [
             f"- [{network_type.name}](#{network_type.name.lower()}-summary-table)",
         ]
 
     for network_type in NetworkType:
+        if network_type.value in exclude_generation_network_type_value:
+            continue
+
         lines += [
             "",
             f"## {network_type.name} Summary Table",