jetsonhacks / buildjetsontx2kernel Goto Github PK
View Code? Open in Web Editor NEWBuild the NVIDIA Jetson TX2 Kernel on the device itself
License: MIT License
Build the NVIDIA Jetson TX2 Kernel on the device itself
License: MIT License
Hello,
Does these scripts update device tree files? how can I add a device to the device tree of jetson?
Thanks,
I use the latest Jetpack4.5, but it seems that the latest version only supports jetpack4.3. Can I release the latest version of support? Or what should I do if I want to modify the kernel or device tree?
Thanks!
Hi Sir,
If we want to include iwlwifi driver, and build install this module,
how to do that?
Hi, jetsonhacks!
I find that the makeKernel.sh would not make dtbs.
If we want to compile device tree and update it,
would adding "make dtbs" in the makeKernel.sh and "sudo cp /arch/arm64/boot/dts/xxxxx.dtb /boot/" in copyKernel.sh files work this out?
Advice on version mismatch does not match actual version numbers.
In the files:
getKernelSources.sh
getKernelSourcesNoGUI.sh
For example
$ git checkout v1.0-L4T28.1
Detail example below:
This repository branch is for installing the kernel sources for L4T 28.2
You are attempting to use these kernel sources on a L4T 28.1 system.
The kernel sources do not match their L4T release!
Please git checkout the appropriate kernel sources for your release
You can list the tagged versions.
$ git tag -l
And then checkout the latest version:
For example
$ git checkout v1.0-L4T28.1
nvidia@tegra-ubuntu:~/buildJetsonTX2Kernel/buildJetsonTX2Kernel$ git tag -l
vL4T27.1
vL4T28.1
vL4T28.2
vL4T28.2r2
vL4T28.2r3
We wanna use xsens imu on xavier, but it cannot be recognized.
I am trying to build the kernel to activate CP210x USB converter drivers, and have already installed a custom kernel build for Leopard Images IMX274 cameras. After building the kernel with these scripts, the Cameras no longer work. I am new to kernel building, so I don't really understand what is going wrong, that's why I really like your scripts, here. I have attached the instructions that came with the cameras. Is there a way to bring in the settings that I currently have set when building the kernel, or is there something else that I can do to make this work?
I managed to build the TX2 kernel onto SSD but I'm unable to get any WIFI network detection:
$ iwconfig
lo no wireless extensions.
dummy0 no wireless extensions.
tunl0 no wireless extensions.
eth0 no wireless extensions.
$ sudo ifconfig wlan0 up
[sudo] password for nvidia:
wlan0: ERROR while getting interface flags: No such device
$ sudo ifconfig wlan0 scan
command failed: No such device (-19)
Any suggestions on how to get this working?
Hello!
I found this error when compiling make:
drivers/net/wireless/bcmdhd_pcie/dhd_linux.c:8512:40: note: each undeclared identifier is reported only once for each function it appears in
scripts/Makefile.build:261: recipe for target 'drivers/net/wireless/bcmdhd_pcie/dhd_linux.o' failed
make[4]: *** [drivers/net/wireless/bcmdhd_pcie/dhd_linux.o] Error 1
scripts/Makefile.build:406: recipe for target 'drivers/net/wireless/bcmdhd_pcie' failed
make[3]: *** [drivers/net/wireless/bcmdhd_pcie] Error 2
scripts/Makefile.build:406: recipe for target 'drivers/net/wireless' failed
make[2]: *** [drivers/net/wireless] Error 2
scripts/Makefile.build:406: recipe for target 'drivers/net' failed
make[1]: *** [drivers/net] Error 2
Makefile:973: recipe for target 'drivers' failed
make: *** [drivers] Error 2
Make did not successfully build
Please fix issues and retry build
Thanks in advance!
How can i use this for building librealsense to be able to use a realsense D400 series camera on the jetson tx2?
The end of the instructions say to "copy the Image file over to the eMMC in the eMMC's /boot directory." How do you do that? Do you have to flash the TX2?
Is that needed when using the TX2 development kit?
thanks you!
4.9.140 kernel and modules onboard the Jetson TX2 (L4T 32.3.1, JetPack 4.3):
/usr/src/kernel/nvidia/drivers/net/ethernet/nvidia/pcie/tegra_vnet.c:975:11: error: ‘msg.msg_id’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
else if (msg.msg_id == CTRL_MSG_LINK_DOWN_ACK)
^
cc1: all warnings being treated as errors
scripts/Makefile.build:335: recipe for target 'drivers/net/ethernet/nvidia/pcie/tegra_vnet.o' failed
Is Jetpack 3.2 version also coming?
Readme says about getKernelSources.sh:
Downloads the kernel sources for L4T from the NVIDIA website, decompresses them and opens a graphical editor on the .config file.
But this doesn't happen for me (master, TX2, L4T 32.3.1). Is is expected behavior (then Readme should be fixed) or bug?
In scripts/getKernelSources.sh I see that it calls scripts/config but graphical tool doesn't appear.
hi, JetPack 4.4 is used on TX2. I hope TX2 to support SCTP. Then I have to build kernel for SCTP.
When I reboot , I got the errors flashing on the black screen. Now I stop here and can not enter the Ubuntu 18.04. Could anyone help with this??
What I did is as follows. Is it correct??
1\ downloads source code from website, public_sources.tzb2.
2\ unzip the source:
tar -xvf public_sources.tzb2 split the first directory
tar -xvf kernel_sources.tzb2
3\ copy the original .config to /usr/src/kernel/kernel-4.9/ and edit it ( set all parameters related to SCTP yes, there are three that are set)
4\ make and install
sudo make -j5 Image
sudo make modules
sudo make modules_install
5\ backup the /boot/Image to Image-original
copy the new Image to /boot
6\ reboot
When I plug the keyboard and mouse in USB port. The boot error is:
Current documentation describes 32.3.1 and 4.9.140. Is this a compatible version to edit kernel modules?
Thanks a lot for providing a simple way to flash the TX2. I followed your instructions according to this article, and now lspci
does not show any devices. I did not do anything to stray from the tutorial, aside from applying a patch. I tried reflashing using your method, without the patch, and it seems unable to recover the lspci
functionality. Any guidance is appreciated. Thanks!
I've generated my own kernel, enabling and compiling all the modules I need for my day-to-day operations. If I were to package the kernel (so setting up a board doesn't take that long), do you know which files should I put in?
I'm just asking since the root filesystem of the TX2 is kind of special 😄
I don't want to update my L4T, how can I download the kernel source for the version of L4T28.1??
1.Enable kernel support for mttcan(Other required modules are alreadysupported)
CONFIG_MTTCAN = m (Here mttcan is compiled as a module)
Hi JetsonHacks,
I am trying to get wifi working on the TX2i and I am struggling with it. Do you know if these scripts work in the TX2i?
Thanks
i ran your scripts and they took about 3GB of disk space.
That was all i need, now my jetson has no free disk space anymore.
Where did this space go? the folder where i executed it is very small. where are the 3GB?
Please help
Hello,
Is there any chance of releasing a version that works with the L4T 32.2.1 (Kernel 4.9.140)?
Thanks
Version: 9.0
DashedVersion: 9-0
1
starting sudo daemon
sudo /mnt/hgfs/jetpack//_installer/sudo_daemon -installer=3493 -d=/mnt/hgfs/jetpack//_installer/tmp
[sudo] password for nxt001:
install directory:l=/mnt/hgfs/jetpack/_installer/logs//cuda_host_9.0.log
why:open /mnt/hgfs/jetpack//_installer/tmp/jetpackfifo_req: no such file or directory
have another '/' in /jetpack//_installer/
cause : no such file or directory???
I get these errors:
In file included from drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c:37:0:
include/../../kernel/irq/internals.h: In function ‘irqd_set_move_pending’:
include/../../kernel/irq/internals.h:160:3: error: ‘struct irq_data’ has no member named ‘state_use_accessors’
d->state_use_accessors |= IRQD_SETAFFINITY_PENDING;
^
include/../../kernel/irq/internals.h: In function ‘irqd_clr_move_pending’:
include/../../kernel/irq/internals.h:165:3: error: ‘struct irq_data’ has no member named ‘state_use_accessors’
d->state_use_accessors &= ~IRQD_SETAFFINITY_PENDING;
^
include/../../kernel/irq/internals.h: In function ‘irqd_clear’:
include/../../kernel/irq/internals.h:170:3: error: ‘struct irq_data’ has no member named ‘state_use_accessors’
d->state_use_accessors &= ~mask;
^
include/../../kernel/irq/internals.h: In function ‘irqd_set’:
include/../../kernel/irq/internals.h:175:3: error: ‘struct irq_data’ has no member named ‘state_use_accessors’
d->state_use_accessors |= mask;
^
include/../../kernel/irq/internals.h: In function ‘irqd_has_set’:
include/../../kernel/irq/internals.h:180:10: error: ‘struct irq_data’ has no member named ‘state_use_accessors’
return d->state_use_accessors & mask;
^
drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c: In function ‘suspend_all_device_irqs’:
drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c:283:3: error: too few arguments to function ‘__disable_irq’
__disable_irq(desc);
^
In file included from drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c:37:0:
include/../../kernel/irq/internals.h:65:13: note: declared here
extern void __disable_irq(struct irq_desc *desc, unsigned int irq, bool susp);
^
drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c: In function ‘resume_all_device_irqs’:
drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c:311:3: error: too few arguments to function ‘__enable_irq’
__enable_irq(desc);
^
In file included from drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c:37:0:
include/../../kernel/irq/internals.h:66:13: note: declared here
extern void __enable_irq(struct irq_desc *desc, unsigned int irq, bool resume);
^
drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c: In function ‘denver_idle_write’:
drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.c:348:9: error: implicit declaration of function ‘tick_program_event’ [-Werror=implicit-function-declaration]
tick_program_event(sleep, true);
^
cc1: some warnings being treated as errors
scripts/Makefile.build:261: recipe for target 'drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.o' failed
make[3]: *** [drivers/../../t18x/drivers/cpuidle/cpuidle-tegra18x.o] Error 1
scripts/Makefile.build:406: recipe for target 'drivers/../../t18x/drivers/cpuidle' failed
make[2]: *** [drivers/../../t18x/drivers/cpuidle] Error 2
scripts/Makefile.build:406: recipe for target 'drivers/../../t18x/drivers' failed
make[1]: *** [drivers/../../t18x/drivers] Error 2
Makefile:958: recipe for target 'drivers' failed
make: *** [drivers] Error 2
After this. copyImage won't work. It says:
cp: cannot stat 'arch/arm64/boot/zImage': No such file or directory
cp: cannot stat 'arch/arm64/boot/Image': No such file or directory
Hello,
Great tutorial, but I think this could be missing a key item, make tegra18_defconfig before doing the menu config. While the built image works fine, adding this line will build all of the necessary drivers for things like the libargus SDK, CUDA, etc.
e.g.
`
sudo apt-install pkg-config qt5-default -y
cd /usr/src/kernel/kernel-4.4
make tegra18_defconfig
make xconfig
'
Hi,
I have patched the kernel source (jetpack 3.2) to include the Auvidea J20 module, selected and enabled it in xconfig.
But while compiling it looks for this files and cant find them:
+#include <media/v4l2-chip-ident.h>
+#include <media/camera_common.h>
+#include <media/soc_camera.h>
drivers/media/i2c/j20.c:32:35: fatal error: media/v4l2-chip-ident.h: No such file or directory
I can manually locate and copy the camera_common.h and soc_camera.h, but those again wants a lot of other header files that are suppose to be in media/
The v4l2-chip-ident.h is no where to be found, but i am sure i am doing something wrong, i should-en need to locate this files should i ?
I am compiling the kernel directly on the TX2 like this description:
https://github.com/jetsonhacks/buildJetsonTX2Kernel
I have also downloaded the kernel sources on my Ubuntu machine just in case there was some difference between building on the TX2 or a Ubuntu pc, but the v4l2-chip-ident.h is still no where to be found, going crazy here :)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.