厄 不是. 我對你燒的東西沒有懷疑.
我要確認的是你抓下來的 " nvidia_kernel_display_driver_source.tbz2" 跟 “public_sources.tbz2” 確定沒抓錯嗎
厄 不是. 我對你燒的東西沒有懷疑.
我要確認的是你抓下來的 " nvidia_kernel_display_driver_source.tbz2" 跟 “public_sources.tbz2” 確定沒抓錯嗎
我确实没保存当时下载源码的链接,所以我将这个源码重新解压进行分析:
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS$ tar xjf public_sources.tbz2 -C tmp/
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS$ cd tmp/
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp$ ls
Linux_for_Tegra
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra$
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra$ ls
source
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra$ cd source/
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source$ ls
public
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source$ cd public/
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source/public$ ls
argus_cam_libavencoder_src.tbz2 gstegl_src.tbz2.sha1sum gst-nvv4l2camera_src.tbz2 libgstnvcustomhelper_src.tbz2.sha1sum nvgstapps_src.tbz2 nv_public_src_build_tos.sh openwfd_headers.tbz2
argus_cam_libavencoder_src.tbz2.sha1sum gstjpeg_src.tbz2 gst-nvv4l2camera_src.tbz2.sha1sum libgstnvdrmvideosink_src.tbz2 nvgstapps_src.tbz2.sha1sum nvsample_cudaprocess_src.tbz2 openwfd_headers.tbz2.sha1sum
atf_src.tbz2 gstjpeg_src.tbz2.sha1sum gst-nvvidconv_src.tbz2 libgstnvdrmvideosink_src.tbz2.sha1sum nvidia-jetson-optee-source.tbz2 nvsample_cudaprocess_src.tbz2.sha1sum openwfd_samples.tbz2
atf_src.tbz2.sha1sum gst-nvarguscamera_src.tbz2 gst-nvvidconv_src.tbz2.sha1sum libgstnvvideosinks_src.tbz2 nvidia-jetson-optee-source.tbz2.sha1sum nvsci_headers.tbz2 openwfd_samples.tbz2.sha1sum
dtc-1.4.5.tbz2 gst-nvarguscamera_src.tbz2.sha1sum gst-nvvideo4linux2_src.tbz2 libgstnvvideosinks_src.tbz2.sha1sum nvidia_kernel_display_driver_source.tbz2 nvsci_headers.tbz2.sha1sum public_sources_sha.txt
dtc-1.4.5.tbz2.sha1sum gst-nvcompositor_src.tbz2 gst-nvvideo4linux2_src.tbz2.sha1sum libnl-3.5.0.tbz2 nvidia_kernel_display_driver_source.tbz2.sha1sum nvsci_samples_src.tbz2 spe-freertos-bsp.tbz2
FreeRTOSV8.1.2_src.tbz2 gst-nvcompositor_src.tbz2.sha1sum kernel_src.tbz2 libnl-3.5.0.tbz2.sha1sum nvidia-xconfig_src.tbz2 nvsci_samples_src.tbz2.sha1sum spe-freertos-bsp.tbz2.sha1sum
FreeRTOSV8.1.2_src.tbz2.sha1sum gst-nvtee_src.tbz2 kernel_src.tbz2.sha1sum libv4l2_nvargus_src.tbz2 nvidia-xconfig_src.tbz2.sha1sum opencv_gst_samples_src.tbz2 v4l2_libs_src.tbz2
gstegl_src.tbz2 gst-nvtee_src.tbz2.sha1sum libgstnvcustomhelper_src.tbz2 libv4l2_nvargus_src.tbz2.sha1sum nv_public_src_build.sh opencv_gst_samples_src.tbz2.sha1sum v4l2_libs_src.tbz2.sha1sum
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source/public$ tar xjf kernel_src.tbz2
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source/public$ cd kernel/
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source/public/kernel$ ls
kernel-5.10 nvethernetrm nvgpu nvidia
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source/public/kernel$ cd kernel-5.10/
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source/public/kernel/kernel-5.10$ grep -E '^VERSION|^PATCHLEVEL|^SUBLEVEL|^EXTRAVERSION' Makefile
VERSION = 5
PATCHLEVEL = 10
SUBLEVEL = 216
EXTRAVERSION =
可以看到解压缩之后,kernel解压缩出来了kernel-5.10目录,并且搜索版本号也确认是5.10;
nvidia_kernel_display_driver_source.tbz2也是被public_sources.tbz2解压出来的,所以应该是没有错;
nvidia_kernel_display_driver_source.tbz2的包只有2M,您可以单独发我JetPack5.1.5使用的源码,然后我重新编译试试
我解压缩出来的disaplay炮md5值如下,您也可以核对看看:
yan@yan-Legion-Y9000P-IRX9:~/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/tmp/Linux_for_Tegra/source/public$ md5sum ./nvidia_kernel_display_driver_source.tbz2
49b81c37d7af99cd275fe78b395cf6e4 ./nvidia_kernel_display_driver_source.tbz2
Hi,
剛才我這邊很快的測試了一下.
直接把nvdisplay丟進Jetson之後直接跑make modules -j4 就能直接build出檔案
甚至不需要複製kernel_out上來.
請問上面哪個post是你在機器上編譯碰到的問題?
这是放到Orin NX上编译的报错,我将kernel_out拷贝上去的原因是,在编译的时候,会依赖/usr/lib/modules/5.10.216-tegra/build,而我查看设备上的build软连接,是连接到编译的kernel_out目录的,所以我就把kernel_out拷贝上去编译
我先確認一下
如果你什麼都不改, 使用原本Jetpack 燒錄進去的狀況是能正常編譯的嗎
Hi,WayneWWW:
我作了两个编译测试:
1.关闭mptcp的正常设备中编译display驱动,编译成功(这是以前使用nvidia默认的文件系统的)
2.在打开了mptcp配置的设备上编译display驱动,失败,原因是/usr/lib/modules/5.10.216-tegra/build的软连接是在我编译的kernel_out上,这个不在单板上,也是我上次拷贝kernel_out的原因
total 2048-ubuntu:/home/nvidia/nvdisplay# ls /usr/lib/modules/5.10.216-tegra/ -l
lrwxrwxrwx 1 root root 113 Jan 15 01:52 build -> /home/yan/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/source/public/kernel_out
drwxr-xr-x 3 root root 4096 Nov 6 14:05 extra
drwxr-xr-x 9 root root 4096 Jan 22 11:27 kernel
-rw-r--r-- 1 root root 523791 Jan 22 11:27 modules.alias
-rw-r--r-- 1 root root 515303 Jan 22 11:27 modules.alias.bin
-rw-r--r-- 1 root root 28027 Jan 22 11:27 modules.builtin
-rw-r--r-- 1 root root 50963 Jan 22 11:27 modules.builtin.alias.bin
-rw-r--r-- 1 root root 30638 Jan 22 11:27 modules.builtin.bin
-rw-r--r-- 1 root root 156921 Jan 22 11:27 modules.builtin.modinfo
-rw-r--r-- 1 root root 89192 Jan 22 11:27 modules.dep
-rw-r--r-- 1 root root 140207 Jan 22 11:27 modules.dep.bin
-rw-r--r-- 1 root root 187 Jan 22 11:27 modules.devname
-rw-r--r-- 1 root root 46244 Jan 22 11:27 modules.order
-rw-r--r-- 1 root root 802 Jan 22 11:27 modules.softdep
-rw-r--r-- 1 root root 209552 Jan 22 11:27 modules.symbols
-rw-r--r-- 1 root root 260299 Jan 22 11:27 modules.symbols.bin
lrwxrwxrwx 1 root root 121 Jan 22 11:27 source -> /home/yan/nvidia/nvidia_sdk/JetPack_5.1.5_Linux_JETSON_ORIN_NANO_TARGETS/Linux_for_Tegra/source/public/kernel/kernel-5.10
我查看编译成功的build软连接指向的路径,重新修正了软连接到/usr/src/linux-headers-5.10.216-tegra-ubuntu20.04_aarch64/kernel-5.10:
nvidia@tegra-ubuntu:~$ ls /usr/lib/modules/5.10.216-tegra/build -l
lrwxrwxrwx 1 root root 69 Jan 22 2026 /usr/lib/modules/5.10.216-tegra/build -> /usr/src/linux-headers-5.10.216-tegra-ubuntu20.04_aarch64/kernel-5.10
再次编译nvidia.ko后成功,这应该是我制作文件系统时导致build的软连接路径发生变化导致的问题,编译成功后,编译出3个库:
nvidia@tegra-ubuntu:~/nvdisplay/kernel-open$ find -name "*.ko"
./nvidia.ko
./nvidia-modeset.ko
./nvidia-drm.ko
我将这三个库拷贝到/usr/lib/modules/5.10.216-tegra/extra/opensrc-disp目录下重启设备,重新上电后还是出现了符号不匹配的打印:
[ 13.119292] nvidia: disagrees about version of symbol fget
[ 13.119296] nvidia: Unknown symbol fget (err -22)
[ 13.119336] nvidia: disagrees about version of symbol fd_install
[ 13.119337] nvidia: Unknown symbol fd_install (err -22)
[ 13.119432] nvidia: disagrees about version of symbol wake_up_process
[ 13.119433] nvidia: Unknown symbol wake_up_process (err -22)
[ 13.119508] nvidia: disagrees about version of symbol iterate_fd
[ 13.119509] nvidia: Unknown symbol iterate_fd (err -22)
[ 13.119580] nvidia: disagrees about version of symbol __close_fd
[ 13.119581] nvidia: Unknown symbol __close_fd (err -22)
[ 13.119791] nvidia: disagrees about version of symbol nvhost_syncpt_unit_interface_get_aperture
[ 13.119793] nvidia: Unknown symbol nvhost_syncpt_unit_interface_get_aperture (err -22)
[ 13.182053] spi-tegra114 3230000.spi: Adding to iommu group 2
[ 13.203712] fusb301 1-0025: failed to read device id, err : 0xffffff87
[ 13.216983] fusb301 1-0025: fusb301 not support
[ 13.225327] fusb301: probe of 1-0025 failed with error -22
[ 13.234181] cpu-throttle-alert cooling device registered.
[ 13.240893] irq: IRQ316: trimming hierarchy from :interrupt-controller@f400000-1
[ 13.250361] r8168 0008:01:00.0: Adding to iommu group 10
[ 13.251679] pps pps2: new PPS source pps_gpio.-1
[ 13.255639] tegra-hda 3510000.hda: Adding to iommu group 54
[ 13.266753] r8168 Gigabit Ethernet driver 8.053.00-NAPI loaded
[ 13.266901] pps pps2: Registered IRQ 316 as PPS source
[ 13.276296] r8168 0008:01:00.0: enabling device (0000 -> 0003)
[ 13.283748] gpu-throttle-alert cooling device registered.
[ 13.298061] tegra-asoc: sound: Adding to iommu group 55
[ 13.311475] usb_ch9344 1-2.1:1.0: ttyCH9344USB from 0 - 3: ch9344 device attached.
[ 13.319473] cv0-throttle-alert cooling device registered.
[ 13.334607] usbcore: registered new interface driver usb_ch9344
[ 13.339847] r8168: This product is covered by one or more of the following patents: US6,570,884, US6,115,776, and US6,327,625.
[ 13.346409] ch9344: USB serial driver for ch9344/ch348.
[ 13.358534] cv1-throttle-alert cooling device registered.
[ 13.359595] r8168 Copyright (C) 2024 Realtek NIC software team <nicfae@realtek.com>
[ 13.359595] This program comes with ABSOLUTELY NO WARRANTY; for details, please see <http://www.gnu.org/licenses/>.
[ 13.359595] This is free software, and you are welcome to redistribute it under certain conditions; see <http://www.gnu.org/licenses/>.
[ 13.360960] cv2-throttle-alert cooling device registered.
[ 13.361962] soc0-throttle-alert cooling device registered.
[ 13.362361] soc1-throttle-alert cooling device registered.
[ 13.362669] soc2-throttle-alert cooling device registered.
[ 13.365088] hot-surface-alert cooling device registered.
[ 13.385258] ch9344: V2.3 On 2025.07
[ 13.462391] input: NVIDIA Jetson Orin NX HDA HDMI/DP,pcm=3 as /devices/platform/3510000.hda/sound/card0/input1
[ 13.476095] input: NVIDIA Jetson Orin NX HDA HDMI/DP,pcm=7 as /devices/platform/3510000.hda/sound/card0/input2
[ 13.504907] input: NVIDIA Jetson Orin NX HDA HDMI/DP,pcm=8 as /devices/platform/3510000.hda/sound/card0/input3
[ 13.512623] cryptd: max_cpu_qlen set to 1000
[ 13.516647] input: NVIDIA Jetson Orin NX HDA HDMI/DP,pcm=9 as /devices/platform/3510000.hda/sound/card0/input4
[ 13.631302] nvgpu: 17000000.ga10b nvgpu_nvhost_syncpt_init:135 [INFO] syncpt_unit_base 60000000 syncpt_unit_size 4000000 size 10000
[ 13.631302]
[ 14.806649] using random self ethernet address
[ 14.814173] using random host ethernet address
[ 14.986124] using random self ethernet address
[ 14.990739] using random host ethernet address
[ 17.113818] CPU4: shutdown
[ 17.218388] CPU5: shutdown
[ 17.274016] CPU6: shutdown
[ 17.314629] IRQ 119: no longer affine to CPU7
[ 17.319657] CPU7: shutdown
[ 18.503721] nvidia: disagrees about version of symbol nvhost_get_default_device
[ 18.511274] nvidia: Unknown symbol nvhost_get_default_device (err -22)
[ 18.518042] nvidia: disagrees about version of symbol fget
[ 18.523694] nvidia: Unknown symbol fget (err -22)
[ 18.528580] nvidia: disagrees about version of symbol fd_install
[ 18.534758] nvidia: Unknown symbol fd_install (err -22)
[ 18.540261] nvidia: disagrees about version of symbol wake_up_process
[ 18.546899] nvidia: Unknown symbol wake_up_process (err -22)
[ 18.552837] nvidia: disagrees about version of symbol iterate_fd
[ 18.561943] nvidia: Unknown symbol iterate_fd (err -22)
[ 18.570221] nvidia: disagrees about version of symbol __close_fd
[ 18.576916] nvidia: Unknown symbol __close_fd (err -22)
[ 18.582582] nvidia: disagrees about version of symbol nvhost_syncpt_unit_interface_get_aperture
[ 18.591549] nvidia: Unknown symbol nvhost_syncpt_unit_interface_get_aperture (err -22)
[ 18.705534] nvidia: disagrees about version of symbol nvhost_get_default_device
[ 18.713149] nvidia: Unknown symbol nvhost_get_default_device (err -22)
[ 18.719909] nvidia: disagrees about version of symbol fget
[ 18.725549] nvidia: Unknown symbol fget (err -22)
[ 18.730443] nvidia: disagrees about version of symbol fd_install
[ 18.736621] nvidia: Unknown symbol fd_install (err -22)
[ 18.742150] nvidia: disagrees about version of symbol wake_up_process
[ 18.748774] nvidia: Unknown symbol wake_up_process (err -22)
[ 18.754710] nvidia: disagrees about version of symbol iterate_fd
[ 18.760895] nvidia: Unknown symbol iterate_fd (err -22)
[ 18.766378] nvidia: disagrees about version of symbol __close_fd
[ 18.772553] nvidia: Unknown symbol __close_fd (err -22)
[ 18.778230] nvidia: disagrees about version of symbol nvhost_syncpt_unit_interface_get_aperture
[ 18.787183] nvidia: Unknown symbol nvhost_syncpt_unit_interface_get_aperture (err -22)
我查看编译后的nvidia.ko:
filename: /usr/lib/modules/5.10.216-tegra/extra/opensrc-disp/./nvidia.ko
firmware: nvidia/35.5.0/gsp.bin
import_ns: DMA_BUF
alias: char-major-195-*
version: 35.5.0
supported: external
license: Dual MIT/GPL
srcversion: 8BBA78784B9642CDBD0225C
alias: pci:v000010DEd*sv*sd*bc06sc80i00*
alias: pci:v000010DEd*sv*sd*bc03sc02i00*
alias: pci:v000010DEd*sv*sd*bc03sc00i00*
alias: of:N*T*Cnvidia,tegra234-displayC*
alias: of:N*T*Cnvidia,tegra234-display
depends:
name: nvidia
vermagic: 5.10.216-tegra SMP preempt mod_unload modversions aarch64
parm: NVreg_ResmanDebugLevel:int
parm: NVreg_RmLogonRC:int
parm: NVreg_ModifyDeviceFiles:int
parm: NVreg_DeviceFileUID:int
parm: NVreg_DeviceFileGID:int
parm: NVreg_DeviceFileMode:int
parm: NVreg_InitializeSystemMemoryAllocations:int
parm: NVreg_UsePageAttributeTable:int
parm: NVreg_EnablePCIeGen3:int
parm: NVreg_EnableMSI:int
parm: NVreg_TCEBypassMode:int
parm: NVreg_EnableStreamMemOPs:int
parm: NVreg_RestrictProfilingToAdminUsers:int
parm: NVreg_PreserveVideoMemoryAllocations:int
parm: NVreg_EnableS0ixPowerManagement:int
parm: NVreg_S0ixPowerManagementVideoMemoryThreshold:int
parm: NVreg_DynamicPowerManagement:int
parm: NVreg_DynamicPowerManagementVideoMemoryThreshold:int
parm: NVreg_EnableGpuFirmware:int
parm: NVreg_EnableGpuFirmwareLogs:int
parm: NVreg_OpenRmEnableUnsupportedGpus:int
parm: NVreg_EnableUserNUMAManagement:int
parm: NVreg_MemoryPoolSize:int
parm: NVreg_KMallocHeapMaxSize:int
parm: NVreg_VMallocHeapMaxSize:int
parm: NVreg_IgnoreMMIOCheck:int
parm: NVreg_NvLinkDisable:int
parm: NVreg_EnablePCIERelaxedOrderingMode:int
parm: NVreg_RegisterPCIDriver:int
parm: NVreg_EnableDbgBreakpoint:int
parm: NVreg_RegistryDwords:charp
parm: NVreg_RegistryDwordsPerDevice:charp
parm: NVreg_RmMsg:charp
parm: NVreg_GpuBlacklist:charp
parm: NVreg_TemporaryFilePath:charp
parm: NVreg_ExcludedGpus:charp
parm: NVreg_DmaRemapPeerMmio:int
parm: rm_firmware_active:charp
nvidia.ko也没有相关依赖,所以这应该和我是不是要重新编译nvidia.ko没关系,您是否试过打开mptcp后编译烧写并运行呢?
或者有nvidia.ko在我的ubuntu编译环境中能成功交叉编译的方法,我也可以使用ubuntu的交叉编译环境编译后,测试是否能正常使用。
Hi,WayneWWW:
我查询到设置mptcp可能会导致linux kernel crc发生重算,这会导致crc发生变化,所以不是在我的打开mptcp的kernel下重编译的所有kernel都会有符号匹配的问题,请帮忙确认这一情况是否属实,如果确实打开mtcp触发了kernel crc重置,那所有的ko都需要重新编译。