cann't start up after reboot

the error log looks like this:
CFG80211-ERROR wl_cfg80211_disconnet:link down event is not received
cfg80211:world regulatory domain updated:
cfg80211:DFS Master region:unset

dhd_ndo_remove_ip:ndo ip addr remove failed, retcode = -23
dnd_inet6_work_handler:removing host ip for NDO failed -23
tegradc 15210000.nvdisplay:unblank

By the way, I didn’t remember I have changed the kernel

The log looks normal. Could you share the full log?

Actually, I don’t know how to get the log when I powered it on. The log roll so fast but I still notice that there are some lines are showed in red which means something wrong.

Finally, I reinstall the system to fix it out, but all data is gone.

You will want to use serial console (anyone working on an embedded product will simplify life if a serial console is available). I’m going to put more than you need here, but it may be of use to others in the future:

Serial console information can be seen here:

That’s all you need to know…read on if you want details.

You’ll need a serial USB UART cable…they’re about $15 to $20. You’ll want the ones labeled as “TTL” or “3.3V” logic level (both are 3.3V…some are 5V or 1.8V, but the Jetson uses 3.3V). These cables come in many different forms, some with a 6-pin connector (like what J17 uses on the development carrier board), others with individual pins (such that you can simply put the pin on the right pin of J21 or any standard 0.1" spacing header). The most basic cable has three wires, one being ground, and also a TX (transmit) and RX (receive) line. Some also add CTS (clear to send) and RTS (request to send) lines, and these can be left out if you don’t want to use them (they’re entirely optional…I prefer having the CTS/RTS so I have the option, but serial console does not need them…a 3-wire cable could simplify things for you).

All of these serial cables would probably work for you, although not all are in a form you’d find convenient:

Most any chipset works, I chose FTDI because all Linux hosts have drivers for this by default (you would know you don’t need to add any drivers, or that the driver is a standard package and simple to add). These are examples of loose wires for soldering or adding crimp connectors…you won’t want these since there are many available with the connectors for individual pins, but are an example:

I haven’t used this one before, but I believe it would be the least expensive while also providing the functionality you need:

That last serial UART states 3.3V, and it has RX and TX (the green and white wires…but you’d have to check specs to see which one is TX or RX). No CTS or RTS, but you wouldn’t need those. Black is ground, red is a +5V supply (you wouldn’t use that).

Although Adafruit calls some cables “FTDI” and not others, it is quite possible the chipset within that cable is actually FTDI. The ones they’ve marked FTDI are actually manufactured by FTDI. If there is a different chipset involved, then a different driver would be involved, but Adafruit claims Linux has the driver by default…which means it is probably FTDI.

The cable ground goes to any ground pin of J21. The cable TX goes to RX of the J21 UART, the cable RX goes to the J21 TX (the first URL on serial console shows this). Settings are speed 115200, 8 bits, no parity, 1 stop bit (and since you don’t use CTS/RTS you would simply not tell the software to use that flow control…default is to not use flow control anyway). I prefer gtkterm as my serial console program, but others work as well. The trick will be to monitor dmesg while you plug in the USB end to your host to see which device it assigns (e.g., it’ll be something like “/dev/ttyUSB0”).

Just a side note: Any Linux account in group “dialout” can directly use a serial device. Otherwise you have to be root and use “sudo”. If you get permission denied, try with sudo; you can then later add your regular user to group dialout. An example if the cable has the three wires connected:

sudo gtkterm -p /dev/ttyUSB0 -s 115200 -b 8 -t 1

(and gtkterm has a log function you can clear the screen before starting, turn on logging, and then boot to get log messages even before Linux itself ever starts…or you can start at any time)

When you get the cable you can always ask how to use them in detail.

Thank you so much!I’ll try later!