Succeeded to build the ethos-n-stack driver. I succeeded to build it using this page:
The build generates some files, one of them is the driver .ko file (ethosn.ko). I should install this driver using the command "sudo insmod ethos.ko". But when I run this command, I got this error.
[ 1391.608322] Registering ethosn-core[ 1391.609973] Unable to handle kernel paging request at virtual address 0000000300000002[ 1391.610154] Mem abort info:[ 1391.610210] ESR = 0x96000004[ 1391.610375] EC = 0x25: DABT (current EL), IL = 32 bits[ 1391.610545] SET = 0, FnV = 0[ 1391.610604] EA = 0, S1PTW = 0[ 1391.610758] Data abort info:[ 1391.611014] ISV = 0, ISS = 0x00000004[ 1391.611077] CM = 0, WnR = 0[ 1391.611245] user pgtable: 4k pages, 48-bit VAs, pgdp=000000040d7ee000[ 1391.611424]  pgd=0000000000000000, p4d=0000000000000000[ 1391.611646] Internal error: Oops: 96000004 [#1] PREEMPT SMP[ 1391.611712] Modules linked in: ethosn(O+)[ 1391.612038] CPU: 1 PID: 590 Comm: insmod Tainted: G O 5.10.17 #1
Notice that I extract this error message using the command "dmesg | tail -n 20".
Would any one please explain what is the meaning of this error and how can I debug it?
I think there is a typo and your command should "insmod ethosn.ko"
Moustafa Nabil said:ethos.ko
If it still failing then please let me know the Linux kernel version and platform setup you're using to test the ethos-n kernel-module
Thank you for your reply.Actually this was a typo while writing the question. I am using the correct file name "ethosn.ko" When I run the command.After much debugging, I found the reason for the issue. I will post it as a reply to my original question.Thank you,
The Ethos-N driver stack is composed of multiple components, each with their own license. The components are: The Arm Ethos-N NPU driver, which is the collection of user-space libraries. The Arm NN backend, which interfaces the Ethos-N NPU driver to Arm NN.A driver can't load on this device. You are receiving this message because the Memory integrity setting in Windows Security is preventing a driver from loading on your device.