Patch-ID# 106699-03 Keywords: 53c875 ncrs pci scsi symbios driver-x86 boot-x86 Synopsis: SunOS 5.6_x86: ncrs: Backport of Solaris 7 ncrs driver (driver patch) Date: Nov/05/98 Solaris Release: 2.6_x86 SunOS Release: 5.6_x86 Unbundled Product: Unbundled Release: Relevant Architectures: i386 BugId's fixed with this patch: 4167702 4173065 4178291 Changes incorporated in this version: 4173065 4178291 Patches accumulated and obsoleted by this patch: Patches which conflict with this patch: Patches required with this patch: Obsoleted by: Files included with this patch: ncrs_dpatch S26DCA1098 README.106699-03 NOTE: ncrs_dpatch (Driver patch image) S26DCA1098 (Boot diskette image) README.106699-03 (This file) Problem Description: 4178291 Patch 106699-02 does not recognize a Symbios 53c895 4173065 ncrs symhisl ids for 8xx and 896 adapters must be correctly partitioned. (from 106699-02) Patch rebuilt. (from 106699-01) 4167702: ncrs: Backport of Solaris 7 ncrs driver. INSTRUCTIONS ------------ Making a Solaris 2.6 Driver Patch Diskette From the ncrs_dpatch Image File and Making Solaris 2.6 Device Configuration Assistant 10/98 Boot Diskette >From the S26DCA1098 Image File. Note - You must use the dd command to copy the uncompressed images to diskettes. (You can find a DOS version of the dd command at ftp.uu.net:/vendor/sun/solaris/x86/dd.exe or by selecting the local link dd.exe.) 1. Insert a blank diskette into your machine's diskette drive. 2. If you are using DOS, type: dd filename A: If you are using the Solaris(TM) operating environment, type the following commands to see if Volume Management is running: volcheck ls -l /vol/dev/aliases/floppy0 * If you see a message similar to this: lrwxrwxrwx 1 root 34 Jan 21 17:28 /vol/dev/aliases/floppy0 -> /vol/dev/rdiskette0/unnamed_floppy type: dd if=filename of=/vol/dev/aliases/floppy0 bs=1440k eject floppy0 * If you see this message: /vol/dev/aliases/floppy0 not found type: dd if=filename of=/dev/rdiskette bs=1440k 3. Label diskette made from ncrs_dpatch file as Solaris 2.6 Driver Patch Diskette. 4. Label diskette made from S26DCA1098 file as Solaris 2.6 Device Configuration Assistant 10/98. INSTALLING THE PATCH You can use the the Solaris 2.6 Driver Patch diskette in one of two ways: * To use new drivers to install the Solaris operating environment on a machine * To add new drivers to an already installed and booted system Installing Solaris Using the Solaris 2.6 Driver Patch Diskette -------------------------------------------------------------- Here are the steps to use drivers on the Solaris 2.6 Driver Patch diskette to install Solaris 2.6 (Intel Platform Edition) on a machine. Use Solaris 2.6 Device Configuration Assistant 10/98 Diskette made from S26DCA1098 file as the boot diskette. 1. Insert Solaris 2.6 Device Configuration Assistant 10/98 Diskette into your machine's diskette drive. 2. Turn on your Machine. 3. When the Solaris Device Configuration Assistant screen is displayed, press F4_Driver Update. The message Enumerating buses ... is displayed. The Install Driver Update screen is then displayed. 4. Remove Solaris 2.6 Device Configuration Assistant 10/98 Diskette from the diskette drive and insert the first Solaris 2.6 Driver Patch diskette you want. 5. Press F2_Continue. The Select Solaris System Version screen is displayed. 6. Select Solaris OS 2.6 and press F2_Continue. The Loading Driver Update Software screen is displayed, along with a progress bar that shows the percentage of drivers that have been extracted from the diskette. Drivers are read into memory and survive long enough for the system to successfully boot to its installation program. When all the new drivers on the diskette have been processed, the Continue Driver Update Installation screen is displayed. 7. Remove the Solaris 2.6 Driver Patch diskette from the diskette drive and insert the next Solaris 2.6 Driver Patch diskette you want, if any. 8. Press F2_Continue. The Loading Driver Update Software screen is displayed, along with a progress bar that shows the percentage of drivers that have been extracted from the diskette. Drivers are read into memory and survive long enough for the system to successfully boot to its installation program. When all the new drivers on the diskette have been processed, the Continue Driver Update Installation screen is displayed. 9. Repeat Step 7 through Step 8 until all the Solaris 2.6 Driver Patch diskettes you want are installed. 10. When all the drivers are processed, remove the Solaris 2.6 Driver Patch diskette from the diskette drive and reinsert Solaris 2.6 Device Configuration Assistant 5/98 Diskette. IMPORTANT: Do not remove Solaris 2.6 Device Configuration Assistant 10/98 Diskette from the diskette drive until you see the following message displayed in a dialog box: If you want to bypass the device configuration and boot screens when the system reboots, eject the Device Configuration Assistant/Boot diskette now. 11. Press F2_Continue. The Solaris Device Configuration Assistant screen is displayed. 12. Press F2_Continue. The "Enumerating buses" message is displayed. The Scanning Devices screen is then displayed. System devices are scanned. When scanning is complete, the Identified Devices screen is displayed. 13. Press F2_Continue. The message "Loading driver com.bef ..." is displayed followed by messages about the drivers that are required to boot your system. After a few seconds, the Boot Solaris screen is displayed. 14. At the Boot Solaris screen, select the device controller attached to the device that contains your install medium. 15. Press F2_Continue. Drivers for the device controller you selected are displayed. Your system boots to run the install program. The install program starts and your machine begins booting the complete Solaris 2.6 operating environment. Then, after some time, the following messages are displayed: Installing unbundled device driver support Extracting driver list from tree.. distribution-diskette-name driver-name... Please insert the Driver Update diskette labeled distribution-diskette-name Press when ready. 16. Remove Solaris 2.6 Device Configuration Assistant 10/98 Diskette and reinsert the first Solaris 2.6 Driver Patch diskette you inserted earlier into the diskette drive. 17. Press Enter. Patches that contain the new drivers are installed from the diskette onto your machine. Messages about the patches being installed are displayed. o If drivers on other Solaris 2.6 Driver Patch diskettes are required for your machine, this prompt is displayed: Please insert the Driver Update diskette labeled distribution-diskette-name Press when ready. o Otherwise, this prompt is displayed: If you have additional Update diskettes to install (such as video), please insert diskette now. Additional Update diskettes to install? (y/n) [y] 18. If drivers on other Solaris 2.6 Driver Patch diskettes are required, remove the Driver Patch diskette from the diskette drive, insert the next Driver Patch diskette you are prompted to insert, press Enter, and repeat until all drivers you need are installed. 19. Press Enter. When installation is complete, the message "Installation complete" is displayed. 20. Remove the diskette from the diskette drive. 21. Reboot your machine. When the Solaris operating environment is finished booting and running, the new devices whose drivers you installed are available for use. Adding a Patch to an Existing Solaris System -------------------------------------------- Before adding new or updated drivers, the newly supported hardware devices should be installed and configured according to the instructions in the corresponding Device Reference Page, if any. See Device Reference Manual for Solaris 2.6 (Intel Platform Edition). When the Solaris 2.6 Intel Platform Edition software is already installed, the simplest way to add new or updated drivers is to install the Driver Patch diskettes as patches on your system. Follow these steps: 1. Become root. 2. Type the following command to see if the Volume Management software is running on the machine you are updating: ps -ef | grep vold For more information about managing diskettes and drives, see the System Administration Guide. 3. If Volume Management is running, temporarily stop it by typing the following command at the system prompt: # /etc/init.d/volmgt stop 4. Insert the Solaris 2.6 Driver Patch diskette into the diskette drive. 5. Mount the Solaris 2.6 Driver Patch diskette at the /mnt mount point: # mount -F pcfs /dev/diskette /mnt Note - You must mount the Solaris 2.6 Driver Patch diskette at this point in the file structure to update your system successfully. 6. Execute the install script on the diskette: # /mnt/DU/sol_26/i86pc/Tools/install.sh -i The install.sh script searches for all new or updated drivers on the diskette. When a new or updated driver is found, the following prompt is displayed: Unconditionally installing patches bootmod bootbin Install patch driver-name? [y] 7. If the driver is the one you want to install, at the prompt, type y for yes or press Enter. If the driver is not the one you want to install, type n for no. If you specify yes, the install.sh script installs the driver you indicated as well as bootmod and bootbin patches . 8. When you're done and the install.sh script exits, unmount the diskette: # umount /mnt 9. Remove the Solaris 2.6 Driver Patch diskette from the diskette drive. 10. Halt your machine. 11. Turn your machine off. 12. If you haven't already, add the new hardware. 13. Turn your machine on. 14. When the autoboot sequence prompt is displayed, quickly press Escape. The autoboot sequence is interrupted. The Solaris Device Configuration Assistant screen is displayed. 15. Press F2_Continue. The message "Enumerating buses ..." is displayed. The Scanning Devices screen is then displayed. System devices are scanned. When scanning is complete, the Identified Devices screen is displayed. 16. Press F2_Continue. The message "Loading driver com.bef ..." is displayed. The Boot Solaris screen is then displayed. 17. On the Boot Solaris screen, select the device controller attached to the device that contains your install medium, in this case the main system disk. The /etc/bootrc script is displayed. 18. At the prompt, type: b -r Your machine boots. You can now use your new hardware. SUPPORTED HARDWARE The ncrs driver contained in the patch 105220-03 supports following Host Bus Adapters based on SCSI processors: SYM53C810A (card SYM20810, card SYM20811) SYM53C815 (card SYM8150S, card DTC3130B) SYM53C825 SYM53C825A SYM53C860 (card SYM8600SP) SYM53C875 (card SYM8750SP) SYM53C875J (card SYM8751SP, card Diamond Fireport 40) SYM53C876 (card SYM22801, card SYM22802) SUM53C895 (card SYM8951U) NCR53C810 NCR53C810A NCR53C815 NCR53C820 NCR53C825 (card Acculogic PCIPort) NCR53C825A NCR53C860 NCR53C875 NCR53C875J NCR53C876 NCR53C895 KNOWN PROBLEMS AND LIMITATIONS 1. Because the NCR BIOS and the Solaris fdisk program may be incompatible, use the DOS version of FDISK (or equivalent utility) to create an entry in the FDISK partition table before installing the Solaris software. Create at least a 1-cylinder DOS partition starting at cylinder 0. If the DOS partition isn't created, the system won't reboot after Solaris installation. 2. An add-in card with the 53C815, 53C820, 53C825, or 53C825A controller can only be used in a bus-mastering PCI slot. On motherboards with only two PCI slots, both of the PCI slots are usually bus-master capable. On motherboards with three or more PCI slots, and on motherboards with several embedded PCI controllers, some of the PCI slots may not be bus-master capable. 3. Some PCI motherboards with the NCR SDMS BIOS and an embedded 53C810 or 53C810A controller do not work correctly with 53C82x add-in cards that also have an NCR SDMS BIOS. Upgrading the motherboard BIOS, the add-in card, or both may prevent these conflicts. 4. On some early PCI systems with the 53C810 chip on the motherboard, the interrupt pin on the chip is not connected. Such a system cannot be used with Solaris software. 5. Do not attempt to connect wide targets to the 53C810, 53C815, and 53C860 using a wide to narrow converter. These configurations are not supported. 6. If your adapter supports the Symbios Logic SCSI Configuration utility, which can be accessed by pressing Control-C, do not alter the value of the Host SCSI ID (an option under the Adapter Setup menu) to anything but 7. 7. If you experience problems with old target devices, add the following entry to the /kernel/drv/ncrs.conf file: targetN-scsi-options = 0x0; where N is the ID of the failing target. 8. Boot device ID has to be in range 0-6. 9. The ncrs driver does not support the Wide SCSI option. Some add-in 53C8xx cards include connectors for both narrow cables (8-bit SCSI A cables) and wide cables (16-bit SCSI P cables). You can connect devices to the SCSI Wide connectors using SCSI P cables, but the Solaris ncrs driver will not initiate or accept the Wide Data Transfer option. The attached devices will function in 8-bit narrow mode. CAVEAT A) If the temporary patch T105220-02 was installed on your system, it has to be backed out before you attempt the installation of this driver patch. To check if the temporary patch was installed on your system type: showrev -p | grep T105220-02 If the temporary patch was installed on your system you would see displayed message: Patch: T105220-02 Obsoletes: 105220-01 Requires: Incompatibles: Packages: SUNWos86r To backout the patch follow these steps: 1. Become the root 2. Type: patchrm T105220-02 3. After the message "Patch T105220-02 has been backed out" is displayed, you may proceed with the driver patch installation. B) If there are Wide SCSI targets attached to the Symbios adapter, but your boot device is not one of these targets, the Solaris driver will not successfully negotiate Wide SCSI data transfer and the devices will not operate correctly. Workaround: Set the adapter firmware to 8-bit/narrow mode using the Symbios BIOS Configuration Utility: 1. During booting, enter the Symbios Configuration Utility by typing Control-C when prompted. 2. From the Main Menu, select the adapter with wide targets attached. 3. From the Utilities Menu, choose Device Selection. Select the device and set the Width (bits) to 8. The Solaris driver will renegotiate to the highest shared data-transfer mode, resulting in no performance loss.