ORIN NX 无法加载.ko文件

您好,我使用ORIN NX 16G,36.3系统,按照说明我进行了树外模块的编译,并生成了max9286.ko文件,步骤如下
1、导入交叉编译环境

export CROSS_COMPILE=/home/donnie/36.3/aarch64--glibc--stable-2022.08-1/bin/aarch64-buildroot-linux-gnu-

2、导入目录

export KERNEL_HEADERS=$PWD/kernel/kernel-jammy-src

3、关闭构建实时内核

export IGNORE_PREEMPT_RT_PRESENCE=0

然后进行make modules,然后成功在nvidia-oot/drivers/media/i2c/目录下生成的max9286.ko,然后将文件复制到开发板上,使用insmod max9286.ko,提示insmod: ERROR: could not insert module max9286.ko: Invalid module format,我使用file max9286.ko查看文件,显示 max9286.ko: ELF 64-bit LSB relocatable, ARM aarch64, version 1 (SYSV), BuildID[sha1]=645f2b52a6b6367ef3eb3a25ebdb5063f26f56ec, with debug_info, not stripped
请问是哪里出了问题呢

貼一下uname -rsudo depmod -a之後modinfo max9286的結果

orca@orca:~$ uname -r
5.15.136-tegra
orca@orca:~$ sudo depmod  -a
[sudo] password for orca: 
orca@orca:~$ sudo depmod  -a
orca@orca:~$ modinfo  max9286.ko
filename:       /home/orca/max9286.ko
license:        GPL v2
author:         ORCA Tech Corporation
description:    Media Controller Driver for ORCA MAXIM DeSer
alias:          of:N*T*Cnvidia,max9286C*
alias:          of:N*T*Cnvidia,max9286
alias:          i2c:max9286
depends:        
name:           max9286
vermagic:       5.15.136-rt-tegra SMP preempt_rt mod_unload modversions aarch64
orca@orca:~$ sudo insmod max9286.ko
insmod: ERROR: could not insert module max9286.ko: Invalid module format

你為什麼會在build module的那一包kernel source上開RT patch
版本號不一樣當然load不起來…

那是将实时内核关闭,再编译一遍是么export IGNORE_PREEMPT_RT_PRESENCE=0

不是 是你要把整個patch關掉 不是只有忽略
我在問你為什麼一開始要開RT patch…

我并没有主动去开RT patch,我只是在官方下载了镜像,然后按照说明去编译,然后就是这样的结果,那如何去关掉这个patch呢

你把整包source code刪掉再重build一次

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.