Can't flash or boot Orin NX if SPE firmware is bad

If I flash firmware that has an infite loop (a bug), then the jetson won’t boot/cannot be flashed

Why is this the case?

What role does the SPE have in the boot process?

I know the UART is muxed through the TCU so I expect to lose the console uart if the SPE freezes, but why does the booting/flashing freeze/time out

Hello, akhil.veeraghanta:
You are right. When SPE hangs, most probably, the device hangs too.
TCU involves several components, like BPMP, CCPLEX, SCE, etc. Malfunction of TCU will result in unexpected behavior.
That’s similar for booting/flashing.

br
ChenJian

Is this fixable?

We can’t have a bricked SPE firmware update take down our entire fleet

I am wondering, by what method was this corrupted? I’m just thinking that the method of corruption might also be a clue as to putting non-corrupt SPE firmware in, e.g., was there a flash command, or an update? If so, what was the specific command or update?

It was a flash through a script, we use initrd flashing because we are using orins.

If we flash fw that disables TCU, i only expected the console to go away, not the entire SOM to stop booting

Hello, akhil.veeraghanta:
It’s hard to avoid ‘a bricked SPE firmware update take down our entire fleet’, since it involves too many components.
To some extent, you can imagine if printf crashes, it’s far away from just losing the logs.

Here’s my suggestion.
Please keep the original SPE firmware logic, and do not run any private code, unless you are sure the private code is good enough.
You can trigger the private code by commands from CCPLEX, through IVC (data_channel).
For example, if you want to bring-up GPIO in SPE firmware, just wait a command from CCPLEX, and then initialize GPIO, toggle GPIO, etc., in SPE firmware.
Even if the SPE firmware crashes, a simple reboot can recover.

br
ChenJian

How do you know it failed to boot? Is it due to lack of a GUI? Or is networking available, and that fails too? Without TCU I wonder if there is still part of the system booting. If ssh works, then you can still work with it.

Is it possible to use the same flash process to put the old firmware back, at least long enough to debug?

Yeah I can’t ssh, get no DHCP, no output nothing. Yeah the recovery mode process still works so I can always recover it

Thats fair, good to know

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.