VPI: ii libnvvpi1 1.1.12 arm64 NVIDIA Vision Programming Interface library
Vulkan: 1.2.70
I dont need any sound functionalities, how can I disable/remove sound in kernel? I tried to remove some sound configuration in kernel config, but it caused build failure.
is there any safe way to disable/remove sound in kernel?
I couldnβt answer most of that, Iβve never disabled audio in kernel. Mostly Iβd just remove the user space packages (e.g., pulse audio). If you do want to remove something in the kernel, then you always start by building a kernel configured to be an exact match to the existing kernel. Normally I would also say set the same βCONFIG_LOCALVERSIONβ (the default is β-tegraβ), but when removing an integrated feature of the kernel youβd want to also build and install all kernel modules, and this means youβd want a different βCONFIG_LOCALVERSIONβ to avoid searching for modules in the old location.
A contrived example is that if you build a kernel which is version 4.10.140, and you set the default βCONFIG_LOCALVERSIONβ is β-tegraβ, then that kernel will search for modules at β/lib/modules/4.10.140-tegra/kernelβ. If you instead change this to β-testβ, then the modules would have to be rebuilt and added at β/lib/modules/4.10.140-test/kernelβ.
For any removal of a kernel feature, after the kernel is configured to match the current system (e.g., βmake tegra_defconfigβ will set the default config a Jetson ships with), then youβd use an application such as βmake menuconfigβ or βmake nconfigβ to disable that feature (you would not want to do this with a text editor since a text editor does not understand other dependencies which might change).
Yes. I did want to rebuild kernel to remove audio from kernel. I disabled some sound configs in tegra_defconfig, but got build failure because others depend on them. Maybe the menu UI configuration (make menuconfig) can help.
Did you edit tegra_defconfig directly? That is not recommended due to those dependencies. Normally one would βmake tegra_defconfigβ, and then use something like menuconfig (I use βnconfigβ since it is almost the same as menuconfig, but has a symbol search function I like) since it understands those dependencies. You could look at what menuconfig wants to do and then manually edit the file, but it is possible a dependency of the dependency has a chain of other dependencies.
When you save after using either βmake tegra_defconfigβ or βmake menuconfigβ it creates a file β.configβ in the output location for the build. You could copy this somewhere else before you remove audio in order to see what the basic configuration is. Then use menuconfig to remove audio, and compare the two β.configβ files (one you copied elsewhere, and after save of menuconfig you get a second one less the audio). This would tell you what is different between the two.
Do be sure to change CONFIG_LOCALVERSION when you install this new kernel, and install all modules to its new module directory. If youβve modified (especially removed) integrated features in the kernel it is likely that it becomes a βbad ideaβ to reuse the old modules (they might be fine, but it isnβt worth future surprises).