1diff --git a/libusb/os/linux_usbfs.c b/libusb/os/linux_usbfs.c
2index 285d9ca..0c3aa96 100644
3--- a/libusb/os/linux_usbfs.c
4+++ b/libusb/os/linux_usbfs.c
5@@ -313,7 +313,16 @@ static int get_kernel_version(struct libusb_context *ctx,
6 		usbi_err(ctx, "uname failed, errno=%d", errno);
7 		return -1;
8 	}
9+#ifdef __OHOS__
10+	if (strcmp(uts.sysname, "Linux") != 0) {
11+		ver->major = 5;
12+		ver->minor = 10;
13+		ver->sublevel = 0;
14 
15+		usbi_dbg(ctx, "reported kernel version as 5.10.0");
16+		return 0;
17+	}
18+#endif
19 	atoms = sscanf(uts.release, "%d.%d.%d", &ver->major, &ver->minor, &ver->sublevel);
20 	if (atoms < 2) {
21 		usbi_err(ctx, "failed to parse uname release '%s'", uts.release);
22