IBM1S506 Beta Driver Documentation ---------------------------------- Enclosed is the IBM1S506.ADD. It contains a number of changes from the previous driver. This note is intended to help explain those changes. Summary of Changes ------------------ Multiple Controller support - 2 independent controllers can be supported per instance of this driver. - Multiple instances of the driver may be loaded Improved Geometry Support and >1024 Cyl support - The driver will attempt to determine drive geometry by the following methods: -- Via command line switches -- Via an IDENTIFY command issued to the drive -- Via the Fixed Drive Tables This driver will support disks >1024 cylinders if indicated by one of the above geometry sources. - The driver can display the BIOS (Int 13), IDENTIFY, Command Line geometries and the geometry selected by the driver. Error Handling/Recovery - The driver no longer issues "Power Management" commands. Regardless of what CAM states there appears to be no industry wide consensus on what these commands should be. In addition sufficient attention has not been paid to compatibility issues with older MFM/RLL and IDE controllers. - Error recovery is driven by elapsed time Error recovery in this driver has been restructured. When an error occurs, retries will be done periodically over a set time interval. This should allow drives which have "spun-down" to recover. - Soft-Reset used to help clear error conditions The driver will issue a soft reset via 3F6 to recover from timeouts and from persistent error conditions. - Compatibility of external IDE adapters with PS/2 chip sets PS/2 chip sets provide an integrated IDE port. This driver will detect of an external IDE adapter is present prior to enabling the internal PS/2 IDE ports. Command Line Switches --------------------- Sample Command Lines: BASEDEV=IBM1S506.ADD /V /A:0 /U:0 /T:10 /GEO:(1314,7,26,-1) /A:1 /I BASEDEV=IBM1S506.ADD /V /A:1 /P:120 /IRQ:11 /U:0 /T:10 BASEDEV=IBM1S506.ADD /V /A:1 /U:0 /GEO:20 BASEDEV=IBM1S506.ADD /V /A:0 /U:0 /SMS BASEDEV=IBM1S506.ADD /V /A:0 /!R Switch definitions: /V = Verbose Mode Displays controller status and drive geometry information during OS/2 initialization. /A:0 = Adapter number Adapter 0 has default parameters for a primary adapter. Adapter 1 has default parameters for a secondary adapter. /U:0 = Unit Id Unit 0 indicates parameters apply to the master unit. Unit 1 indicates parameters apply to the slave unit. /T:10 = Error retry time in seconds. (dec) Indicates the total allowable error recover time for a request. Error recovery times < 5 seconds will be ignored. This parameter defaults to 30 seconds. A shorter interval may be desirable for fault tolerant applications. /GEO:(1314,7,26,-1) or /GEO:20 = Drive geometry override (dec) Indicates the Cylinder/Head/Sector geometry for the drive. The fourth parameter is the Write Precompensation Cylinder which may be omitted for drives which do not require precompensation. As an alternate format standard BIOS drive types may be used. Types (0-47) are supported. User defined types 48, 49 should be entered directly by in the previous format. When specified, this parameter overrides other geometry sources. If this parameter is absent, other geometry sources discussed above will be used. /I = Ignore adapter The driver automatically attempts to locate and initialize both the primary and secondary adapters. In some cases other DASD controllers may appear between the primary and secondary IDE controllers. In these cases the system should be configured as follows: BASEDEV=IBM1S506.ADD /V /A:1 /I BASEDEV=MOREDASD.ADD BASEDEV=IBM1S506.ADD /V /A:0 /I /!R = Disable adapter resets Disables adapter resets. In most cases resets are beneficial to assist in recovering from transient hardware problems such as lost interrupts, timeouts, or commands a particular adapter may not support. However, for some ESDI adapters, options set by vendor unique commands such as 'Sector Sparing' may be lost after after a reset. Setting this switch is recommended for ESDI adapters with disks formatted using 'Sector Sparing'. /P:120 or /PORT:120 = Base Port address (hex) Overrides the default Base Port address for this adapter. Ports are still assigned in this case would be (120-127) and (326). The default port addresses for Adapter 0 is (1F0) and for Adapter 1 is (170). /IRQ:11 = IRQ Number (dec) Overrides the default IRQ Number for this adapter. The default IRQ address for Adapter 0 is (14) and for Adapter 1 is (15). /SMS = Enable Set Multiple Mode support This switch enables Set Multiple Support which the improves performance of some IDE drives. If the drive does not have this feature, this switch will be ignored. The /V - (Verbose) option will indicate whether this feature has been enabled on a particular drive.