Ok, recipe for Altix 350 PROM update (as I did it):
You need:
- PROM image to be flashed (shub1snprom.bin for newer vesions x.xx-snprom.bin for older)
- HDD with FAT filesystem on it (I used a partitioned ZIP100 for this)
- most likely a well sorted box of SCSI adapters and cables
Copy the PROM image to the FAT file system on the disk. I tried CD-Rs with a FAT fs on it, but to no success (I must admit
that I don't put too much effort in this because the method with the ZIP seemed to be easier). Be sure that the file is correctly
written to the disc.
btw: Its always a good idea to check if the SCSI path is working flawlessly, especially when a lot of fancy cables and/or adapters
are used. I bricked a CD-burner once this way...
Attach the disk to the Altix and let it boot to the EFI menu. Select the "EFI shell" menu item.
If everything is well your FAT filesystem should be accessible as fs
n
:/
For me it is fs4:/
Then you should be able to:
Code:
Select all
EFI Shell version 1.02 [12.38]
ValidMBR: LastBlock 196575 < MIN_MBR_DEVICE_SIZE 524288
Device mapping table
fs0 : Pci(1|1)/Scsi(Pun0,Lun1)/HD(Part1,Sigg1)
fs1 : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part1,Sigg2)
fs2 : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part2,Sigg3)
fs3 : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part3,Sigg4)
fs4 : Pci(1|2)/Scsi(Pun0,Lun5)/HD(Part1,Sig00000000)
blk0 : Pci(1|1)/Scsi(Pun0,Lun1)
blk1 : Pci(1|1)/Scsi(Pun0,Lun1)/HD(Part1,Sigg1)
blk2 : Pci(1|1)/Scsi(Pun0,Lun1)/HD(Part2,Sigg5)
blk3 : Pci(1|1)/Scsi(Pun0,Lun1)/HD(Part3,Sigg6)
blk4 : Pci(1|1)/Scsi(Pun0,Lun2)
blk5 : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part1,Sigg2)
blk6 : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part2,Sigg3)
blk7 : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part3,Sigg4)
blk8 : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part4,Sigg7)
blk9 : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part5,Sigg8)
blkA : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part6,Sigg9)
blkB : Pci(1|1)/Scsi(Pun0,Lun2)/HD(Part7,Sigg10)
blkC : Pci(1|2)/Scsi(Pun0,Lun5)
blkD : Pci(1|2)/Scsi(Pun0,Lun5)/HD(Part1,Sig00000000)
Shell> fs4:
fs4:\> ls
Directory of fs4:\
08/20/08 01:37a 6,291,456 shub1snprom.bin
08/20/08 01:32a 6,291,456 4.07-snprom.bin
2 Files 12,582,912 bytes
0 Dir 0 bytes
fs4:\> flash -a shub1snprom.bin
SGI PROM Flashing Utility
Flashing all nodes
Start flashing? Press 'y' to begin, any other key to abort: Flashing node 0
...erasing sectors
................................................................................................Done.
...copying prom
source address : 0x000000b079b7d008
destination address: 0x8000000fffa00000
size (bytes) : 0x0000000000600000
...programming
................................................................................................Flash of node 0 complete.
Waiting for all flash operations to complete...DONE.
Flashing node 2
...erasing sectors
................................................................................................Done.
...copying prom
source address : 0x000000b079b7d008
destination address: 0x8000008fffa00000
size (bytes) : 0x0000000000600000
...programming
................................................................................................Flash of node 2 complete.
Waiting for all flash operations to complete...DONE.
Done flashing.
Ok, flash was successfull. The next step is important: Go to POD mode and clear all logs...
Beware: All PROM variables and EFI settings are lost after this...
Code:
Select all
fs4:\> pod
POD entered via EFI command, using Cac mode
0 000: POD SysCt (RT) Cac> initalllogs
*** This must be run only after NUMAlink discovery is complete.
*** This will clear all previous log variables such as:
*** moduleids, nodeids, etc. for all nodes.
Clear all logs environment variables, and aliases ? [n] y
Clearing nasid 0...
Clearing nasid 2...
Clearing nasid 0 EFI variables...Clearing nasid 2 EFI variables................................
Clearing nasid 0 error log........
Clearing nasid 2 error log.............
....
All PROM logs cleared!
0 000: POD SysCt (RT) Cac>
Now you can
and the system should come up fine with the new PROM.
Before the flash I had
Code:
Select all
001c01#0c: SGI SAL Version 4.04 reorg041203 IP41 built 03:13:26 PM Dec 3, 2004
now I am at
Code:
Select all
001c01#0c: SGI SAL Version 4.87 rel070913 IP41 built 06:02:37 AM Sep 13, 2007
This version boots all newer kernels without problems (up to 2.6.30, for what I've tested).
It should be mentioned that it therefore cannot boot that older kernels anymore (e.g. the one which is shipped with the original SLES9 release)
So you have to choose what you want...
But it should be possible to downgrade if one wishes to run SLES9 once again (I've 4.07-snprom.bin for this.)