Ultra 60 nvram override ?

Sun workstations/servers and operating systems (SunOS, Solaris and OpenSolaris)
Forum rules
Any posts concerning pirated software or offering to buy/sell/trade commercial software are subject to removal.
yungjoon
Posts: 106
Joined: Thu Jun 03, 2004 7:53 am
Location: France

Ultra 60 nvram override ?

Unread postby yungjoon » Sun Nov 06, 2016 1:59 am

Hi,

The nvram died and I lost the hostid (0:0:0:0...). I removed the nvram chip to read informations written on it but when I tried to reseat it I broke some pins.
Now every time I try to change something (ex. setenv, mkpl,...) with openboot nothing seems to have been written after doing a reset (setting to defaults). I can't set an hostid using mkpl, the nvram seems to be in read only mode.

The problem is that before nvram death, I installed solaris 10 and now solaris refuse to boot (freeze before ufs loading). When I try to boot solaris DVD it freeze also before ufs loading.

I saw that nvram are very expensive, is there away to override nvram settings, even if it is temporary ?

Thanks !

User avatar
smj
Donor
Donor
Posts: 1654
Joined: Mon Nov 12, 2007 7:54 pm
Location: Berkeley, CA, USA, NA, Earth, Sol
Contact:

Re: Ultra 60 nvram override ?

Unread postby smj » Sun Nov 06, 2016 4:47 am

I'm not sure you can do anything like battery replacement with that NVRAM, depends on which pins have been damaged. You might have to find another unit; if the cost of a new one is too high, you could look for one with a dead battery that somebody chose to replace with a new unit, then do the battery modification.

There are several relevant threads here on Nekochan, but the reference page for Sun machines at squirrel.com is gone. Here are two other pages about the procedure:

https://gigawa.lt/gigawa.lt/Sun_NVRAM.html
http://www.tns-soft.com/nvram_redux.html
Then? :IRIS3130: ... Now? :O3x02L: :A3504L:- :A3502L: :1600SW:+MLA :Fuel: :Octane2: :Octane: :Indigo2IMP: :Indy: ... Other: DEC :BA213: :BA123: Sun, DG AViiON, NeXT :Cube:

User avatar
johnnym
Donor
Donor
Posts: 133
Joined: Sun Sep 04, 2016 9:53 pm

Re: Ultra 60 nvram override ?

Unread postby johnnym » Mon Nov 07, 2016 5:32 am

yungjoon wrote:Hi,
I saw that nvram are very expensive, is there away to override nvram settings, even if it is temporary ?

I'm unsure about the Ultra 60, but Enterprise 250s also start without NVRAM and use the NVRAM defaults then AFAIK. I don't know if the machines will boot into an OS without NVRAM though. I only needed to get into the OBP to reprogram the IDPROM contents. And removing and reinserting the NVRAM after each machine reached the OK prompt did the trick for me, but I assume this is not an option for you, as your NVRAM chip is missing some pins.

If you have a matching DIP socket (the ones with round female contacts) around, you could try to insert the NVRAM into the socket and solder the missing pins to the female contacts and then insert the whole thing into the NVRAM socket on the Ultra 60's system board and reprogram it (see the links from smj plus the archived version of the NVRAM FAQ for the needed commands). It should keep its content as long as you don't remove power from the system.
:Indy: :O2: :Octane: :Octane2: :O200: = :O200: - :O200: = :O200: (O200 cluster w/2 GIGAchannel cabinets)
[ ( hp ) ] 712/80 c3000 (dead) :hpserv: (J5600) c3700 c3750 c8000 rp2470 :rx2600: (rx2620) rx4640
| d | i | g | i | t | a | l | AXPpci33 AlphaStation 200 4/166 AlphaStation 255 300 Personal Workstation 500au AlphaServer DS20E
C O B A L T Qube 2 Qube 3 RaQ RaQ 2 RaQ 4r RaQ XTR

yungjoon
Posts: 106
Joined: Thu Jun 03, 2004 7:53 am
Location: France

Re: Ultra 60 nvram override ?

Unread postby yungjoon » Mon Nov 07, 2016 11:55 pm

Thanks for your replies, using matching dip socket would be a good solution. NVRAM are too expensive, more than half of a loaded Ultra 60 price !

User avatar
johnnym
Donor
Donor
Posts: 133
Joined: Sun Sep 04, 2016 9:53 pm

Re: Ultra 60 nvram override ?

Unread postby johnnym » Mon Nov 14, 2016 5:09 am

Just as a follow up as it fits into this topic I believe:

I have made some experience with expect in the past and assumed it should be possible to automate the reprogramming of the IDPROM of Sun machines. This way it would be possible to use a Sun machine with drained NVRAM battery without prior repair. You could do this directly after activating the machine.

I currently only have a SPARCstation 20 with OBP 2.x and drained NVRAM battery at hand but no UltraSPARC II based machine with OBP 3.x. So the code could need some changes for UltraSPARC II machines like your Ultra 60. This also won't work for machines with OBP 4.x, as those are missing the mkp command. But I believe you can still reprogram such a NVRAM chip in a "compatible" machine with OBP 3.x. The following works with my machine, please see the attached script and timing files which show the automatic reprogramming of the IDPROM and the adjacent diskless boot of OpenBSD 5.9 on the same machine, play with:

Code: Select all

$ scriptreplay -t auto-reprogram-idprom-and-os-boot.timing.txt auto-reprogram-idprom-and-os-boot.script.txt

Please don't mind the long delay between "Probing Memory Bank #7 Nothing there" and "Starting real time clock...". This seems to be perfectly normal when starting up with a drained NVRAM battery.

auto-reprogram-idprom-and-os-boot.script.txt
(20.74 KiB) Downloaded 14 times

auto-reprogram-idprom-and-os-boot.timing.txt
(201.07 KiB) Downloaded 13 times

And now the expect script and its configuration file (expected in same directory as the script). Execute like that (strings between "[]" are optional and remove ".txt" ending before use):

Code: Select all

$ ./reprogram-idprom.exp [/dev/ttyUSB2]

...the used serial port can be given as first argument (which overrides the value in the configuration file) or via the configuration file.

reprogram-idprom.exp.txt
(2.88 KiB) Downloaded 18 times

config.tcl.txt
(1.19 KiB) Downloaded 16 times

The script sends breaks until an ok prompt appears. Then it resets the NVRAM environment variables to the default values and prints the current settings. Before starting the reprogramming the current content of the IDPROM is printed, then the IDPROM is reprogrammed using the variable values given in the configuration file (the machine/system type and the last three bytes of the desired Ethernet MAC address) and the new content of the IDPROM is printed together with the banner message. Afterwards auto-boot is disabled and the machine is resetted (different to what was shown in the script replay above).

Some last words: I don't take responsibility for any destruction you create with this script :) . But from my experience I don't expect any big problems. I mean you have to do this manually anyhow before you can make real use of your machine again, if your NVRAM battery is drained.
:Indy: :O2: :Octane: :Octane2: :O200: = :O200: - :O200: = :O200: (O200 cluster w/2 GIGAchannel cabinets)
[ ( hp ) ] 712/80 c3000 (dead) :hpserv: (J5600) c3700 c3750 c8000 rp2470 :rx2600: (rx2620) rx4640
| d | i | g | i | t | a | l | AXPpci33 AlphaStation 200 4/166 AlphaStation 255 300 Personal Workstation 500au AlphaServer DS20E
C O B A L T Qube 2 Qube 3 RaQ RaQ 2 RaQ 4r RaQ XTR


Return to “Sun”

Who is online

Users browsing this forum: No registered users and 2 guests