TX2i can not boot on custom carrier board, but TX2 is ok. What's the difference between them?

yes, This is the same TX2i module

Hello , is anone here?

Excuse me, are you on holiday?

FYI, the driver package is not the module, so the earlier question refers to the flash software version. When flashing with JetPack/SDK Manager the GUI is just a front end to the “driver package”. Rephrased, a given driver package version is synonymous with the L4T version, and it is the driver package which does the work during a flash.

The list of L4T releases is here (you will need to go there, log in, and then click the link again):
https://developer.nvidia.com/embedded/linux-tegra-archive
…that left column of L4T is the same as the release version, and on an installed system you should see this from “head -n 1 /etc/nv_tegra_release”.

The URL which is the corollary to this and ties the JetPack/SDKM version to the L4T driver package version:
https://developer.nvidia.com/embedded/jetpack-archive

Do you see the same release from “head -n 1 /etc/nv_tegra_release” on both the TX2 and TX2i? This would also be reflected in the output from this on the host PC which performed the flash:

cd /where/ever/it/is/Linux_for_Tegra/rootfs/etc/
head -n 1 ./nv_tegra_release

Actually we still think it is a hardware design issue but no idea of the solution at this moment. Your TX2i is able to boot up when using same BSP on devkit, right?

yes,it’s work on devkit

Below is the log of release version, they is the same. I want to custom kernel to debug this problem.
I download kernel source from “L4T 32.1”, and build it to follow the instructions of “custom kernel”. finally i copy image to /boot/ of tx2i, which can’t turn on. Is there anything I should pay attention to?

dev
    tx2i
    # R32 (release), REVISION: 1.0, GCID: 14531094, BOARD: t186ref, EABI: aarch64, DATE: Wed Mar 13 07:41:08 UTC 2019

    tx2
    # R32 (release), REVISION: 1.0, GCID: 14531094, BOARD: t186ref, EABI: aarch64, DATE: Wed Mar 13 07:41:08 UTC 2019
host
    tx2i
    opt@opt-JIAYUES525:~/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3489/Linux_for_Tegra/rootfs/etc$ head -n 1 ./nv_tegra_release
    # R32 (release), REVISION: 1.0, GCID: 14531094, BOARD: t186ref, EABI: aarch64, DATE: Wed Mar 13 07:41:08 UTC 2019

    tx2
    opt@opt-JIAYUES525:~/nvidia/nvidia_sdk/JetPack_4.2_Linux_P3310/Linux_for_Tegra/rootfs/etc$ head -n 1 ./nv_tegra_release
    # R32 (release), REVISION: 1.0, GCID: 14531094, BOARD: t186ref, EABI: aarch64, DATE: Wed Mar 13 07:41:08 UTC 2019

What do you see from uname -r? Do you see modules in subdirectories of this on both the TX2 and TX2i?
/lib/modules/$(uname -r)/kernel/

If not, then it is probably just a case of the kernel not being able to find modules.

hello, linuxdev. I’ve been dealing with other issues lately. I successfully compiled and ran the kernel on tx2i.
I find some errors occur in console init() of “asmlinkage __visible void __init start_kernel(void)”, so i commented “console init()”, now my tx2i cannot boot the kernel correctly. I can’t modify the kernel Image.
if i must flash tx2i ?
There is something like “TFTP 0x31000000 uImage ;Bootm 0x31000000” command to replace the kernel?
if i cross compile kernel ,how do i install modules for tx2i?

hello , can you give me some help? i need kernel develop env.

my tx2i can’t load boot!!!,here the boot log. This error occurred once after flash failure.

[0000.288] !!! Exception !!! [lr:0x40021ccc, dfar:0x5fc1000, dfsr:0x1808]
[0000.294] MB1-BIT() boot status dump :
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
[0000.323] Last seen error : 0x00000000

FYI, this is just an alternate way to load a kernel in a diskless environment over the network (loading a kernel from the network versus from eMMC should still result in the same kernel, not a kernel replacement). You do not want to do this. It is unlikely you should be replacing any kernel anyways, and the issues probably need to have the PINMUX spreadsheet and device tree double checked. Some issues from earlier logs tended to mention failures to find or access devices, e.g., i2c, and this in turn tends to be a mismatch between a device tree and the carrier board. Replacing entire kernels is unlikely the issue, whereas finding the right environment set up for the kernel to work with is high on the list of where to begin.

I find bootconsole [uart8250] disabled failure, it get console_lock() faillure, so TX2i can’t boot kernel.
but i’m too slow to fix the kernel now, i can’t select kernel during boot, if my modification is wrong, kernel will boot failure, I need to reflash my tx2i. I need a right environment to develop kernel, I want to be able to change the kernel when something goes wrong with my kernel without having to flash it,if i config /boot/extlinux/extlinux.conf, can dual kernel selection be supported during boot?

int unregister_console(struct console *console)

{

        struct console *a, *b;

    int res;

    pr_info("%sconsole [%s%d] disabled\n",

        (console->flags & CON_BOOT) ? "boot" : "" ,

        console->name, console->index);

    res = _braille_unregister_console(console);

    if (res)

        return res;

    res = 1;

    console_lock();

select kernel success. I’ll creat new topic to solved lock problem.

Sorry to be late reply. To be honest, this is more like a hardware issue.

You already bypass the console_lock when I asked you to add “console=none keep_bootcon” in kernel cmdline but it got stuck. If same software driver is able to work on devkit, then you should review the hardware design.

yes, i know hardware design have some problem, but they need software to tell them where the problem is.

Hi,

Let’s use your new topic to track this issue. Though actually your status is same as #19.

1 Like