Upgrading NL4R L1 via flashsc
#1
Upgrading NL4R L1 via flashsc
Does anyone have any info on how a NL4R (yes 4) is meant to be reflashed/upgraded?  Is the only way really across a Numalink connection, from a compute brick (via flashsc using the local system controller, targeting a particular brick)?  I have a NL4R with an ancient L1. It might even be a pre-release L1 (I have image versions 1.49.0cce66 and 1.490cce67!). I'm trying to get the latest 1.62.1 (latest internal diags, for Altix; for MIPS latest is 1.48.1 still) on there.

Is it possible to do a L1 flash _through_ or _from_ an L2, in other configs? Or is a L2 only useful for broadcasting commands / setting serial numbers / etc? Because right now I think my only option is to figure out how to get the right image that I can manually write using mtd_debug on the device itself. Thankfully there are two image slots, so I should have a safe way to test anything out, but I can't figure out how to match the image format that is in the sysco l1.bin with what's actually written to the block device.

Along the way I've learned a few things:

1. flashsc / l1cmd will ignore most of the --dev, --serial, etc. arguments if they're run on a host that has a hardware SC (i.e. any IP35 mips box where /hw/module/*/L1/controller exists). It will always talk to that SC. This might be intentional, or it might be a bug; however, it can be patched by just changing one instruction to a nop in flashsc (latest MIPS flashsc @ VMA 0x10027644). With that, flashsc will properly attempt to communicate using a serial port with --dev /dev/ttydN, or via serial network console via --serial host:port.

The connection setup seems to consist of sending a ^X and expecting a ^X in return. I haven't tried via flashsc, but sending my O350's L1 a ^X caused it to jump into a different mode. Note that this means that we may be able to flash ip35 machines without booting them into IRIX (L1, not PROM that I can see anyway). I'll verify that at some point.

However, the L1 on my NR4L throws an exception when it gets a ^X.

2. You can extract a single image from a flashsc multi-image (e.g. when flashsc -vv shows more than one) just by copying out the data from the offset that -vv shows to the next offset (or end). Doing so and running flashsc -vv on the result shows that it sees it as a "version 3" image, instead of a "version 4" multi-image. (The single-target L2 images are all version 3.)

3. A NL4R has a serial port and a USB port. It's running a very stripped down Linux. The serial port gets you access to a root prompt; the USB port only seems to support two circa-2005 USB-Ethernet dongles: a Pegasus/Pegasus2 or Realtek rtl5180 (likely 0/1/2; _not_ 3) chipset ones. Nothing else seems to work, not even USB-Serial; all drivers were stripped out of the kernel.

4. The image does have pppd. It's possible to set up pppd on the console port and connect it to the rest of the world that way; you need to first "sysctl -w kernel.printk='0 4 1 0'" to stop random kernel messages from showing up on the console, then create a script with "while true ; do /usr/sbin/pppd /dev/console 38400 192.168.200.10:192.168.200.20 crtscts ; done" and exec it. Then configure a pppd in "quiet" mode (in/out) on the other end with those IPs.
vvuk
O2

Trade Count: (0)
Posts: 43
Threads: 4
Joined: Aug 2021
Location: California
Find Reply
11-24-2021, 05:34 AM


Messages In This Thread
Upgrading NL4R L1 via flashsc - by vvuk - 11-24-2021, 05:34 AM
RE: Upgrading NL4R L1 via flashsc - by Raion - 11-24-2021, 05:53 AM
RE: Upgrading NL4R L1 via flashsc - by vvuk - 11-24-2021, 07:15 AM
RE: Upgrading NL4R L1 via flashsc - by weblacky - 11-24-2021, 07:33 AM
RE: Upgrading NL4R L1 via flashsc - by Raion - 11-24-2021, 07:38 AM
RE: Upgrading NL4R L1 via flashsc - by Raion - 11-24-2021, 07:41 AM
RE: Upgrading NL4R L1 via flashsc - by fleedwood - 11-24-2021, 12:47 PM
RE: Upgrading NL4R L1 via flashsc - by vvuk - 11-24-2021, 08:38 AM
RE: Upgrading NL4R L1 via flashsc - by Raion - 11-24-2021, 05:31 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)