aboutsummaryrefslogtreecommitdiff
path: root/kernel/ethosu_device.c
diff options
context:
space:
mode:
authorMikael Olsson <mikael.olsson@arm.com>2023-06-12 15:00:41 +0200
committerMikael Olsson <mikael.olsson@arm.com>2023-08-09 15:11:10 +0200
commitf1cfe19a5fd6ccc07e6e86cbe5ab863f4b372418 (patch)
treec1528ff663b9a4f3ccd16ed7aa17a021e67ca173 /kernel/ethosu_device.c
parent7c843dc763a175269e810510af57b658ae81c529 (diff)
downloadethos-u-linux-driver-stack-f1cfe19a5fd6ccc07e6e86cbe5ab863f4b372418.tar.gz
Add kernel driver version to UAPI
The kernel driver's version is now exposed in the UAPI so the UAPI user can validate that they are compatible with the kernel driver in use. Change-Id: I52d096dfaedb8c3c1889d27a907626be96779ee7 Signed-off-by: Mikael Olsson <mikael.olsson@arm.com>
Diffstat (limited to 'kernel/ethosu_device.c')
-rw-r--r--kernel/ethosu_device.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/kernel/ethosu_device.c b/kernel/ethosu_device.c
index 0df6c07..7ad2a28 100644
--- a/kernel/ethosu_device.c
+++ b/kernel/ethosu_device.c
@@ -252,6 +252,17 @@ static long ethosu_ioctl(struct file *file,
file, cmd, arg);
switch (cmd) {
+ case ETHOSU_IOCTL_DRIVER_VERSION_GET: {
+ const struct ethosu_uapi_kernel_driver_version version = {
+ .major = ETHOSU_KERNEL_DRIVER_VERSION_MAJOR,
+ .minor = ETHOSU_KERNEL_DRIVER_VERSION_MINOR,
+ .patch = ETHOSU_KERNEL_DRIVER_VERSION_PATCH,
+ };
+
+ ret = copy_to_user(udata, &version,
+ sizeof(version)) ? -EFAULT : 0;
+ break;
+ }
case ETHOSU_IOCTL_CAPABILITIES_REQ: {
dev_info(dev, "Device ioctl: Capabilities request");