Control the PROM monitor programmatically with fw-control

johnnym

Member
Aug 7, 2022
39
31
18
Hi there, so I finally created an account also on SGUG, mainly to reach all possibly interested people. I know at least one person here, that is waiting for the following since a while now. Sorry, it took me some time to find the mood. Back to the actual topic...

Some of you might still remember my expect script to reprogram the IDPROM of a Sun SPARCstation 10 and 20 or a SPARCclassic, originally posted on Nekochan years ago. Although this was originally created for just this one purpose, it opened up the possibility to programmatically access the firmware of Sun machines, i.e. the OBP. Over the years since then, I extended this feat to machines from Cobalt Networks and - most important for here - Silicon Graphics. I lost interest in this and also my vintage machines for some years now, but finally found the mood to bring this a little forward and make it available publicly.

I call this fw-control for firmware control and at the moment there exists no deep systematic in it but it rather is a collection of expect scripts that provide the respective functionality. There are expect scripts to directly use from the commandline and functionality encapsulated in libraries for use in expect scripts. Functionality is not complete, I rather implemented what I needed or thought of being useful.

You can find it on GitHub:


...and it requires a connection to the serial console of the respective machine.

If you don't know what this allows for, here are a few examples specific to machines from Silicon Graphics:

* Reconfigure Ethernet MAC address and time and date on an Indy with depleted NVRAM/TODclock battery before starting any OS
* Set date and time on an O2 with depleted NVRAM/TODclock battery before starting any OS
* Switch between boot from disk, disc or network boot programmatically
* Switch from serial console to glass console programmatically
* Gather hardware information for taking inventory
* ...

I also recently used it - with some changes - to reprogram the IDPROMs of a Sun Enterprise 3500 and a Enterprise 4500 on the fly, which means, if you don't care about running POST on every cold boot, you can do without replacing NVRAMs or NVRAM batteries on these machines. Which in my case, saves me a lot of time and batteries.
 

Elf

Storybook / Retired, ex-staff
Feb 4, 2019
792
252
63
Mountain West (US)
Welcome! I feel like I remember your avatar from Nekochan!

Also, nice work, I could see use for this in some of the automated network installation systems :)
 
Last edited:

johnnym

Member
Aug 7, 2022
39
31
18
Welcome! I feel like I remember your avatar from Nekochan!
Thank you, and indeed, I was one of the late guests to Nekochan. Still sometimes bemoaning that I never saved any of my threads there offline. Looks like I just took everything at Nekochan for too granted. :cry:

Also, nice work, I could see use for this in some of the automated network installation systems :)
Yeah, that is another application. I am even more interested in the super level: Fully Automagic Infrastructure - though the shorthand for this is already taken :(. Together with in-control this allows to control machines for their full life-cycle, from power up to OS operation and back to power down. Though for per-host operation I need to first implement per-host config files for fw-control.

I maybe should do some ASCII videos to show the whole potential.
 
  • Like
Reactions: Elf

Elf

Storybook / Retired, ex-staff
Feb 4, 2019
792
252
63
Mountain West (US)

johnnym

Member
Aug 7, 2022
39
31
18
  • Like
Reactions: Elf

About us

  • Silicon Graphics User Group (SGUG) is a community for users, developers, and admirers of Silicon Graphics (SGI) products. We aim to be a friendly hobbyist community for discussing all aspects of SGIs, including use, software development, the IRIX Operating System, and troubleshooting, as well as facilitating hardware exchange.

User Menu