diff --git a/kernel/ethosu_version.h b/kernel/ethosu_version.h
new file mode 100644
index 0000000..c5c02ad
--- /dev/null
+++ b/kernel/ethosu_version.h
@@ -0,0 +1,60 @@
+/*
+ * Copyright 2023 Arm Limited and/or its affiliates
+ *
+ * This program is free software and is provided to you under the terms of the
+ * GNU General Public License version 2 as published by the Free Software
+ * Foundation, and any use by you of this program is subject to the terms
+ * of such GNU licence.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, you can access it online at
+ * http://www.gnu.org/licenses/gpl-2.0.html.
+ *
+ * SPDX-License-Identifier: GPL-2.0-only
+ */
+
+#ifndef ETHOSU_VERSION_H
+#define ETHOSU_VERSION_H
+
+/****************************************************************************
+ * Includes
+ ****************************************************************************/
+
+#include "ethosu_mailbox.h"
+
+#include <linux/types.h>
+#include <linux/completion.h>
+
+/****************************************************************************
+ * Types
+ ****************************************************************************/
+
+struct ethosu_core_msg_version_rsp;
+
+/**
+ * struct ethosu_version - Protocol version internal struct
+ */
+struct ethosu_version {
+	struct device             *dev;
+	struct completion         done;
+	struct ethosu_mailbox_msg msg;
+	int                       errno;
+};
+
+/****************************************************************************
+ * Functions
+ ****************************************************************************/
+
+void ethosu_version_rsp(struct ethosu_mailbox *mailbox,
+			int msg_id,
+			struct ethosu_core_msg_version_rsp *rsp);
+
+int ethosu_version_check_request(struct device *dev,
+				 struct ethosu_mailbox *mailbox);
+
+#endif /* ETHOSU_VERSION_H */
