TX2i boot failure

I find bootconsole [uart8250] disabled failure, it get console_lock() faillure, so TX2i can’t boot kernel.
1_2020-05-25_13-48-59.log (47.1 KB)
file:tx2\kernel\kernel\kernel-4.9\kernel\printk\printk.c

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();

hello wm18822827507,

may I know which JetPack release you’re working with,
could you please confirm TX2i is able to boot successfully with l4t release image.
thanks

JetPack 4.2. custom carrier board.
console_lock() problem have fixed, here others problem, below is the error log, I2C bus export some error, .What does this mistake mean, please?
[ 2.398491] eventlib_kernel: keventlib is initialized, test id: 0

[    2.405808] SCSI subsystem initialized

[    2.410188] usbcore: registered new interface driver usbfs

[    2.415976] usbcore: registered new interface driver hub

[    2.421692] usbcore: registered new device driver usb

[    2.429561] tegra-i2c 3160000.i2c: no acknowledge from address 0x74

[    2.436171] pca953x 0-0074: failed reading register

[    2.441367] pca953x: probe of 0-0074 failed with error -121

[    2.447586] tegra-i2c 3160000.i2c: no acknowledge from address 0x77

[    2.454172] pca953x 0-0077: failed reading register

[    2.459350] pca953x: probe of 0-0077 failed with error -121

[    2.476985] max77620 4-003c: PMIC Version OTP:0x4D and ES:0x1

hello wm18822827507,

did you design your own customize board?
please check documentation for Platform Adaptation and Bring-Up.
thanks

What device does I2C address 0X74 0X77 represent?

The GPIO expander of tca9539.

thank you very much. I will feed back this information to the hardware

if function " static int max77620_probe" run failure of “/home/opt/software/tx2/kernel/kernel/kernel-4.9/drivers/mfd/max77620.c”, will the TX2I module stop loading the kernel?

Hi,

You could add some log in pmic driver and see if stops somewhere.
If you compare the log on devkit, you shall see there would have below log. But it never shows up on your side, please check.

[ 0.597933] max77620 4-003c: max77620 probe successful

after executing “regmap_update_bits”, the system crashed, now i’ve commented out code, tx2i start kernel success. Will my changes cause problems? where can i get MAX20024 datasheet?

path: kernel/kernel-4.9/drivers/mfd/max77620.c line:406

static int max77620_initialise_fps(struct max77620_chip *chip)

{
   ...

skip_fps:
   ...
    /* For MAX20024, SLPEN will be POR reset if CLRSE is b11 */

    if ((chip->chip_id == MAX20024) && chip->sleep_enable) {

        config = MAX77620_ONOFFCNFG1_SLPEN | MAX20024_ONOFFCNFG1_CLRSE;
        ret = regmap_update_bits(chip->rmap, MAX77620_REG_ONOFFCNFG1,

                     config, config);
        if (ret < 0) {

            dev_err(dev, "Failed to update SLPEN: %d\n", ret);

            return ret;

        }

    }

    return 0;

}

Sorry, please contact the vendor for the datasheet. We don’t provide it on forum.

Also, how about you figure out where it gets hang first…? I don’t think programming PMIC driver is what you should do now…

I know I can’t change pmic, this can lead to problems. Maybe I found the wrong place, now I only use pr_notice and stack_dump, can you provide some debugging interfaces? .

Hi,

How about just adding print and see where gets hang? This should not be fatal and can be done quickly

I already said that, when run path: kernel/kernel-4.9/drivers/mfd/max77620.c line:406(function:regmap_update_bits), TX2i gets hang.

Ok I see. Sorry that I thought it was added by you.

thanks for your reply, I have to finish a product in 40 days, I have to fix a bug in the system and finish the application, my hdmi doesn’t work right now, but that’s okay, I don’t use it yet, my boss probably won’t fire me. I hope you can help me when I need to fix hdmi. thank you very much.

This looks more like a custom hardware design issue which we never met before, please compare your design to reference board schematic carefully to eliminate the difference, especially on power and strapping part, also there is a check list in OEM DG which should be followed well.

PATCH1 file:tx2\kernel\kernel\kernel-4.9\kernel\printk\printk.c 2834 ;
/* We need to iterate through all boot consoles, to make

         * sure we print everything out, before we unregister them.

         */

        for_each_console(bcon)

            if (bcon->flags & CON_BOOT) {

                if(0==strcmp("uart",bcon->name) && (8250 == bcon->index)) {

                    continue; // fix by wm wfh tx2i for load kernel failure

                }else

                    unregister_console(bcon);

            }

PATHC 2 path: kernel/kernel-4.9/drivers/mfd/max77620.c line:406;

// fix by wm wfh tx2i for load kernel failure

    /* For MAX20024, SLPEN will be POR reset if CLRSE is b11 */

    // if ((chip->chip_id == MAX20024) && chip->sleep_enable) {

    //  config = MAX77620_ONOFFCNFG1_SLPEN | MAX20024_ONOFFCNFG1_CLRSE;

    //  ret = regmap_update_bits(chip->rmap, MAX77620_REG_ONOFFCNFG1,

    //               config, config);

    //  if (ret < 0) {

    //      dev_err(dev, "Failed to update SLPEN: %d\n", ret);

    //      return ret;

    //  }

    // }
1 Like