***************************************************************************** Solaris.txt ***************************************************************************** Installation Guide for the Symbios SDMS Solaris Driver, Version 4.02.00 This file describes the features and use of the Symbios SDMS Device Driver for the Solaris Operating system 2.6. It is divided into the following sections: Introduction Features How to Install Your SDMS Solaris Driver Installing the Driver During Solaris Installation Updating Solaris with the driver Troubleshooting ******************************* Introduction ******************************** The Solaris 2.6 x86 is an operating system designed to run on single or multiple processors. It provides a command line interface environment and a graphical environment that incorporates many high level features. Refer to the Web site, www.sun.com/solaris/revguide for 2.6 X86 documentation for further details. The Symbios driver, SYMHISL, allows the Solaris operation to interface with SCSI devices connected to a Symbios SYM53C896 controller. The following sections describe the procedures to install the driver during a new installation of Solaris, and to update the driver with an existing installation of Solaris. * * * * * * * * * * * * * Features * * * * * * * * * * * o Provides synchronous negotiation (including Fast SCSI/Ultra SCSI/Ultra2 SCSI) o Supports multiple host adapters o Supports disconnect/reselect o Allows multiple and non-contiguous LUN support o Supports scatter/gather o Supports wide devices o Supports tagged command queuing o Supports multiprocessors * * * * * * * * * * * * * Description * * * * * * * * * * The Symbios SYMHISL driver is designed to Sun Microsystems SCSA specifications' for device drivers. This driver allows connection of SCSI devices including disk drives, CD-ROMS, and tape drives for PCI-based machines. To support a new SCSI device, the Solaris 2.6 x86 architecture requires that the device complies to the SCSI standard. SYMHISL is a Solaris 2.6 32-bit version driver for the Symbios SYM53C896 controller. **************************Installing the SDMS Solaris Driver********************* * * * * * * * * * * New System Installation * * * * * * * * * * These instructions provide details to create a Symbios SYMHISL Driver Update diskette to be used during installation of the operating system when using the SYM53C896 controller. 1. Uncompress and un-tar the install.tar.z file before installing Solaris by typing these commands: #mv install.tar.z install.tar.Z #uncompress install.tar #tar - xvf install.tar #cd install 2. For Solaris 2.6, copy the bootconf.exe file to the Solaris Driver Configuration Assistant diskette that is used to boot the machine during installation. This replaces the existing bootconf.exe file on that diskette. Ensure that volume management is running and the diskette is in drive A: and type these commands: #volcheck -v #cp bootconf.exe /floppy/floppy0/solaris/bootconf.exe #eject floppy 3. Create the SYMHISL Driver Update diskette using the diskette image provided in the install package. Insert a new, blank floppy and use the following commands. #volcheck -v #dd if=symitu.dd of=/vol/dev/rdiskette0/unamed_floppy #eject floppy. Label this diskette SYMHISL Driver Update. 4. Boot the system to use the Driver Configuration Assistant diskette provided by Sun Microsystems. When the first screen appears, choose the Driver Update option. 5. The system prompts to insert the diskette labeled SYMHISL Driver Update that you created in step 3. Choose the Continue option. 6. Continue to follow the operating system prompts to proceed with the installation. 7. Then choose the Begin Installation option. The system prompts with the options "Auto Reboot" or "Manual Reboot." For Solaris 2.6, you "must" choose the Manual Reboot option. 9. When the next screen appears, remove the floppy diskette from the disk drive. Click on the OK button. The "Solaris Install Console" window appears upon completion of the installation. The system prompts you to insert the Driver Update Diskette labelled SYMHISL. 10.Insert the SYMHISL Driver Update diskette, and press Enter. Follow the instructions to patch the operating system bootconf.exe file. This patch must be done for the operating system to boot, otherwise the operating system will have to be reinstalled. Make sure the SYMHISL Driver Update diskette is in the floppy drive. Type these commands: #mount -F pcfs /dev/diskette0 /mnt #cp /mnt/bootconf.exe /a/platform/i86pc/boot/solaris/bootconf.exe #umount /mnt #reboot 11.Installation for the Solaris operating system and SYMHISL driver has completed. * * * * * * * * * * Existing System Installation * * * * * * * * These instructions provide details to install the Symbios SYMHISL driver to an existing Solaris operating system installation. 1. Uncompress and un-tar the install.tar.z file by typing these commands in order to create a directory named install. Type these commands: #mv install.tar.z install.tar.Z #uncompress install.tar #tar -xvf install.tar 2. Change to the install directory and become the super user. To do this, type these commands: #cd install #su Password: (enter password) 3. You must patch one of the boot files of the operating system, otherwise the system will fail to boot. To patch the boot file, make a backup of the existing bootconf.exe file. Then, copy the bootconf.exe from the install directory to replace the older file. Type these commands to perform the designated tasks: #cp /platform/i86pc/boot/solaris/bootconf.exe \ /platform/i86pc/boot/solaris/bootconf.backup #cp ./bootconf.exe /platform/i86pc/boot/solaris/bootconf.exe For Solaris 2.7, go to step 5 directly. 4. Execute the install.sh shell script to add the SYMHISL driver to the operating system. The shell script will copy the SYMHISL and SYMHISL.CNF files to the /kernel/drv directory as SYMHISL and SYMHISL.CONF respectively. To execute this script, type the following command: #./install.sh 5. The SYMHISL device driver is now installed. Now you may safely add the SYM53C896 controller. Then, reboot the machine to reconfigure the system and to recognize the new devices. ***********************************Troubleshooting***************************** The following are some potential error messages that may be preceded by a warning message displayed by the operating system. In the message descriptions below; the SYMHISL signifies that can be replaced by some number assigned to it by the operating system. That value helps to identify the SCSI bus that is reporting the error. SYMHISL: This hardware not supported by this driver SYMHISL has been told to control a 53C896 hardware which is made by a manufacturer other than Symbios, Inc. This adapter requires a special driver provided by that manufacturer. Please contact the manufacturer for assistance. SYMHISL: Failed to map device registers SYMHISL was unable to access the hardware registers necessary for operation. The operating system did not properly configure the PCI device. SYMHISL: NVS error, failed to restore value of 'reg' property SYMHISL was able to access the resources needed to determine NVS configuration but was not able to return the system to its prior state. Further configuration errors may occur. SYMHISL: NVS error, failed to map system memory. NVS data can't be used. SYMHISL: NVS error, failed to update 'reg' property. NVS data can't be used. SYMHISL: NVS error, failed to allocate memory. NVS data can't be used. SYMHISL: NVS error, unable to find 'reg' property NVS data can't be used. For each of the above errors, SYMHISL was not able to access NVS configuration data to see if it exists. On some systems, this will not be a problem. On other systems however, NVS data contains the configuration information for this adapter and SYMHISL is not able to use that configuration. This may cause the user to manually configure the driver using the symhisl.conf configuration file. Please refer to the man page driver.conf(4), which is the standard reference on how to edit the symhisl.conf file. The instructions for editing symhisl.conf can also be found in the path /kernel/drv/symhisl.conf. SYMHISL: Hardware not properly enabled by system, cmd=xxxxh The system has not properly enabled the configuration resources that SYMHISL needs in order to use this hardware. The cmd=xxxxh value needs to be reported to technical support. SYMHISL: Unsupported 64-bit register address. Please load 64-bit version of kernel and driver This version of the SYMHISL driver does not support physical addresses using 64-bit values. Contact Symbios Technical Support at 533-7230 if to determine if a new driver is availabe to support 64-bit version. SYMHISL: The host adapter id in the .conf file is being ignored because the SCSI BIOS Configuration Utility will override it. The symhisl.conf file has a line (scsi-initiator-id=x) which is used to change the host adapter SCSI ID. That line is being ignored because the SCSI BIOS Configuration Utility has set the SCSI ID. Please use the SCSI BIOS Configuration Utility to change the SCSI ID. SYMHISL: Ignored invalid scsi-initiator-id value = x The symhisl.conf file has an invalid scsi-initiator-id value as displayed in the error message. The allowable values are in the range 0..15. SYMHISL: Could not allocate memory to read configuration data. The driver was unable to allocate memory required to process the configuration data. This means that the configuration was not properly determined. To fix this you may need to manually configure the driver using the symhisl.conf file. SYMHISL: Failure reading NVM configuration data The driver was unable to read the configuration data supplied by the SCSI BIOS Configuration Utility. This means that the configuration was not properly determined. To fix this you may need to manually configure the driver using the symhisl.conf file. SYMHISL: Failure reading NVM manufacturing data The driver was unable to read the configuration data supplied by the manufacturer. This means that the adapter configuration may be incorrect and unknown errors may occur. Please contact your manufacturer for a replacement adapter. SYMHISL: The SCSI BIOS Configuration Utility has SCAM enabled but this driver is not capable of SCAM. Please disable SCAM in the boot ROM. The SDMS boot ROM is capable of using the SCAM protocol to assign SCSI IDs. The SYMHISL driver is not capable of using SCAM. In order to properly configure your system, please disable SCAM using the SCSI BIOS Configuration Utility. SYMHISL: Configuration data is corrupt and will be ignored The configuration data provided by the SDMS SCSI BIOS Configuration Utility has been determined to be corrupted. Please run the SCSI BIOS Configuration Utility to correct this error. SYMHISL: Manufacturing data is corrupt and will be ignored The manufacturer configuration data has been found to be corrupt. Please contact your manufacturer for a new adapter. SYMHISL: Unknown synchronous value in NVM data = x The SYMHISL driver needs to be updated to understand this new synchronous configuration data value. Until the driver is updated, synchronous mode will be disabled. SYMHISL: Unknown width value in NVM data = x The SYMHISL driver needs to be updated to understand this new wide configuration data value. Until the driver is updated, wide mode will be disabled. SYMHISL: Unable to make reset notification callbacks The SYMHISL was unable to notify the target device driver of a SCSI bus reset. The target driver may start to malfunction because of this. SYMHISL: Disabling queue tags for target ID x The SYMHISL driver has determined that the specified target is no longer responding to queue tagged I/O in a proper manner and has disabled queue tags for that device. This usually means that the specified device does not support queue tags. To disable this message, disable queue tags for the given device using the SCSI BIOS Configuration Utility. SYMHISL: Device (ID=x, LUN=x) not supported The SYMHISL driver was told to ignore the specified device by the SCSI BIOS Configuration Utility. The operating system has requested to use that device so this message was displayed to warn the user of the conflict. SYMHISL: ddi_dma_numwin() failed SYMHISL: ddi_dma_getwin() failed SYMHISL: ddi_dma_alloc_handle: xxh unknown/impossible SYMHISL: ddi_dma_buf_bind_handle: DDI_DMA_INUSE impossible SYMHISL: ddi_dma_buf_bind_handle: xxh unknown/impossible SYMHISL: ddi_dma_unbind_handle: failed The operating system failed to respond to the named routine in a known manner. This is a fatal error that is not recoverable. Please report this error to technical support. SYMHISL: Device in a slave-only slot and is unusable SYMHISL: Hi-level interrupts not supported The adapter is in a slot that can not be used with this driver. Please try moving the adapter to a different PCI slot. SYMHISL: Failed to attach. This adapter will not be installed. Because of the previous error, this adapter could not be "attached" to the I/O subsystem and will not be accessable. See the previous error message and solve that problem. SYMHISL: Unable to obtain soft state structure The driver was unable to initialize a required data structure and therefore did not load. Please call technical support. SYMHISL: Failed to attach interrupt handler The driver was unable to initialize the interrupt handler as required. Please call technical support. SYMHISL: The adapter is malfunctioning SYMHISL: The adapter is malfunctioning or is of an unknown type The driver is not able to communicate with the hardware. You may need to update your driver or your hardware. SYMHISL: Failed to create minor node required for DMI interface The driver was unable to create an entry point for the DMI device driver. If you are not using the DMI device driver then you may safely ignore this message. SYMHISL: Could not attach to the SCSI subsystem The driver was unable to communicate with the SCSI device driver that is part of the operating system. You may need to update your driver. SYMHISL: Failed to allocate memory The driver was unable to allocate the memory needed during initialization. You may have run out of available memory. SYMHISL: Unbind failed! The driver had a problem when attempting to unload itself. This is a fatal error.