1/5/95 Dear HyperSPARC Customer, Due to a bug in SunOS 4.1.4 (Solaris 1.1.2) the operating system is not directly bootable by hyperSPARC modules of speeds 55, 66 and 72 MHz. All hyperSPARCs of speeds 90Mhz and higher will run 4.1.4 without modification. This problem only pertains to those processors of speeds 72MHz and slower. If you attempt to boot the SunOS 4.1.4 CD on 72Mhz or slower hyperSPARC it will fail with the message "Level 15 Interrupt". There are a couple of work arounds to this particular problem. Problem Solutions SunOS 4.1.4 incorporates the available patches of 4.1.3_U1 and some bug fixes. If your are installing 4.1.4 there are a couple ways to accomplish this with hyperSPARC. First, you can use either a 90Mhz or faster hyperSPARC processor or any SuperSPARC to boot and install 4.1.4 on a system. Once installed you must make a modification to the kernel (/vmunix) to support the <90Mhz hyperSPARCs. This can either be done by hand with adb or with the shell script “414fix” found on the ROSS anonymous ftp site in the directory /pub/HyperSPARC-docs To modify it by hand invoke adb as root: # adb -w /vmunix ( adb has no prompt. Type in the next line) ross625_vac_init_asm+0x58?XXX ( adb should print the next line. If not, something is wrong!) _ross625_vac_init_asm+0x58: c0a00620 81c3e008 1000000 ( Type the following line) ross625_vac_init_asm+0x58?W 1000000 81c3e008 c0a00620 ( adb will print the following three lines) _ross625_vac_init_asm+0x58: 0xc0a00620 = 0x1000000 _ross625_vac_init_asm+0x5c: 0x81c3e008 = 0x81c3e008 _ross625_vac_init_asm+0x60: 0x1000000 = 0xc0a00620 (Exit adb by typing the next line) $q This same procedure should be repeated on the file /sys/sun4m/OBJ/module_ross625_asm.o . This will allow you to build future custom kernels and not have to do the above procedure on every vmunix. # adb -w /sys/sun4m/OBJ/module_ross625_asm.o . (same procedure as above for vmunix) . Once this is done the machine can be halted, powered off and the <90Mhz hyperSPARCs placed into the system and brought back up. If you do not have one of the above mentioned processors to put in the system to do the installation then the following steps can be followed to boot and install 4.1.4 with the 72Mhz or slower hyperSPARC processors: 1) Backup system and prepare for Solaris 1.1.2 install in the normal way. 2) Bring system to standard OBP command prompt. 3) OBP prompts with an "ok" prompt. Enter the following commands (not including the "ok"): ok setenv auto-boot? false ok reset ok ross625 ok ibuf-off ok boot cdrom Note: Earlier boot prom revisions may not support ibuf-off. To continue with this procedure, your system must be running at least the following ROSS boot prom revisions: SS10: 2.19.3 SS20: 2.19.3 S/600MP: 2.14.3 If you revisions lower than these please contact ROSS Technical Support at 1-800-ROSS-YES and arrangements will be made to ship you a more current version. 4) Proceed with normal cdrom sequence to install the miniroot disk image. When this is completed, select the install command option to halt the system. 5) At the OBP "ok" prompt, enter the following commands (again not including the "ok"): ok reset ok ross625 ok ibuf-off ok 1 switch-cpu ok ibuf-off ok 0 switch-cpu ok boot disk:b -sw NOTE: This last command assumes the miniroot image was installed in the standard swap device area. This is the default, but if a different option was selected, then boot the appropriate disk partition. 6) Proceed with the normal miniroot Solaris install routine. After the installation is complete, halt the system. 7) At the OBP "ok" prompt, enter the following: ok reset ok ross625 ok ibuf-off ok 1 switch-cpu ok ibuf-off ok 0 switch-cpu ok boot vmunix This will boot vmunix from the default disk partition. If a different install option was specified, boot the appropriate disk partition. 8) Once the /vmunix kernel has successfully booted, several kernel mod ules need to be patched. This must be done as super-user. Enter the following commands (not including the "#" prompt): # adb -w /vmunix ( adb has no prompt. Type in the next line) ross625_vac_init_asm+0x58?XXX ( adb should print the next line. If not, something is wrong!) _ross625_vac_init_asm+0x58: c0a00620 81c3e008 1000000 ( Type the following line) ross625_vac_init_asm+0x58?W 1000000 81c3e008 c0a00620 ( adb will print the following three lines) _ross625_vac_init_asm+0x58: 0xc0a00620 = 0x1000000 _ross625_vac_init_asm+0x5c: 0x81c3e008 = 0x81c3e008 _ross625_vac_init_asm+0x60: 0x1000000 = 0xc0a00620 (Exit adb by typing the next line) $q 9) Once everything appears to be working okay, reset the auto-boot? environment variable: ok setenv auto-boot? true For further information or assistance ROSS Technical Support can be contacted either by calling 1-800-ROSS-YES or by email at techsupport@ross.com.