diff --git a/ethosu/vela/model_reader.py b/ethosu/vela/model_reader.py
index bb49b64..f48645d 100644
--- a/ethosu/vela/model_reader.py
+++ b/ethosu/vela/model_reader.py
@@ -16,7 +16,9 @@
 # Description:
 # Dispatcher for reading a neural network model.
 from . import tflite_reader
+from . import tosa_reader
 from .errors import InputFileError
+from .nn_graph import NetworkType
 
 
 class ModelReaderOptions:
@@ -37,12 +39,33 @@
             output_node_names = []
         if initialisation_nodes is None:
             initialisation_nodes = []
-        return tflite_reader.read_tflite(
-            fname,
-            options.batch_size,
-            feed_dict=feed_dict,
-            output_node_names=output_node_names,
-            initialisation_nodes=initialisation_nodes,
+        return (
+            tflite_reader.read_tflite(
+                fname,
+                options.batch_size,
+                feed_dict=feed_dict,
+                output_node_names=output_node_names,
+                initialisation_nodes=initialisation_nodes,
+            ),
+            NetworkType.TFLite,
+        )
+    elif fname.endswith(".tosa"):
+        if feed_dict is None:
+            feed_dict = {}
+        if output_node_names is None:
+            output_node_names = []
+        if initialisation_nodes is None:
+            initialisation_nodes = []
+
+        return (
+            tosa_reader.read_tosa(
+                fname,
+                options.batch_size,
+                feed_dict=feed_dict,
+                output_node_names=output_node_names,
+                initialisation_nodes=initialisation_nodes,
+            ),
+            NetworkType.TOSA,
         )
     else:
-        raise InputFileError(fname, "Unsupported file extension. Only .tflite files are supported")
+        raise InputFileError(fname, "Unsupported file extension. Only .tflite and .tosa files are supported")
