REGISTRY.TXT Driver File Contents (win03x64_drv_celerity_218.exe)

                Celerity FC Windows Registry Settings
                -------- -- ------- -------- --------

CAUTION - Modifying your registry incorrectly may result in making your
machine unbootable.  Please use care in editing the registry.  This should
only be performed by users experienced with the registry editor.

NOTE - Some of the following requires knowledge of hexadecimal arithmetic and
a sense for basic SCSI command processing.  For most users, the defaults
set by the adapter driver installation .INF file will suffice.  "If it ain't
broke, don't fix it!"

A registry entry can be used to control various parameters and settings used
to control the initialization and operation of the Celerity FC adapter.
All of the parameters are DWORD values and are under the registry key
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ClrtyFC\Parameters\Device.
The following are the registry values.

        /************************************************************/
        /*                                                          */
        /*                      ** NOTE **                          */
        /*                                                          */
        /* All the registry entries apply to all installed adapters */
        /*                                                          */
        /************************************************************/

        MaxLogins:

            This variable defines the maximum number of ports that can
            be logged in.  Each logged in port requires 756 bytes of system
            Cached memory if Target Mode is enabled, or 504 bytes if not.
            Minimum 8, maximum 2048, default 256.

        NumSest:

            Number of entries in the SCSI Exchange State Table (SEST).  One
            of these structures is used per active Exchange, either Initiator
            or Target Mode.  Each SEST entry can accommodate an I/O request
            of from 8 to 12 k, depending on buffer alignment.  For I/O
            requests over this limit, see SglPageSize and NumSgLists.
            The default value for this is 256.  Minimum value is 8, maximum
            is 2048.  Keep in mind that each entry occupies 64 bytes of
            memory in the Uncached memory pool, which is a limited operating
            system resource.

            If the driver runs out of these structures, nothing bad happens;
            commands sent to the driver are simply placed on a backup list
            until structures are available. If you are trying to get the
            highest level of performance, and your application(s) have a
            large number of transfers outstanding at any given time,
            you may want to try to increase this allocation to see if it has
            any effect.  Using the default value, the driver can handle 256
            simultaneous SCSI commands without placing any commands on the
            backup list.

        NumImq:

            Incoming Message Queue (IMQ) entries.  Each entry requires 32
            bytes in the system Uncached memory pool.  Minimum 4, maximum
            4096, default 256.  These are used to report completion of I/O
            requests and to notify the host driver of certain other kinds
            of events detected by the hardware.  If all of these become
            used up, nothing bad happens; the hardware simply waits for
            the host driver to acknowledge entries before reporting more
            events.

        NumErq:

            Exchange Request Queue (ERQ) entries.  Each entry requires 32
            bytes in the system Uncached memory pool.  Minimum 4, maximum
            4096, default 256.  In general, one ERQ entry is required for
            each SEST entry.  See comments for NumSest.

        SglPageSize:

            Scatter/Gather List (SGL) Page Size in number of S/G entries.
            Each entry requires 8 bytes in the system Uncached memory pool.
            Minimum 8, maximum 256, default 128.  One entry is needed to
            map each 4k of data transfer.  SGL pages are only used when
            the I/O request exceeds the 8-12k that can be handled directly
            by the SEST entries.  The last entry of each SGL page is
            reserved for a link to the next page for a given data transfer.
            So, for example, the default 32 entry page size means that each
            page can map up to 31 x 4 = 124k bytes.  If your application is
            doing a lot of very large transfers, you may want to increase the
            SGL page size and possibly reduce the number of SG Lists
            (see NumSgLists).

        NumSgLists:

            Number of SGL pages.  Each list contains SglPageSize x 4 bytes
            in the system Uncached memory pool and 16 bytes in the Cached
            memory pool.  Minimum 4, maximum 2048, default 256.  As usual,
            if there are insufficient SGL pages, nothing bad happens unless
            a single I/O request requires more than the available pool.  As
            long as no single I/O request requires more than the available
            pool, see the comments for NumSest.

        DisableBusChangeNotification:

            A nonzero value causes the driver not to issue Bus Change
            notifications to the OS.  This applies to Windows 2000 and XP
            only at the present time.  We have found that some versions of
            Windows 2000 do not handle these notifications well, and there
            may be some other circumstances where the user may not want the
            notifications.  The default value is 0 (Bus Change notification
            enabled).

        ForceOrderedQueue:

            A nonzero value in this registry value forces all Simple Queue
            Tag requests to use Ordered Queue Tag requests.  There are some
            disk drives that don't respond well to a lot of Simple Queue Tag
            requests.  The only case we have seen where this was needed was
            with certain disk drives with more than 16 initiators accessing
            the drives simultaneously.  The default value for this value
            is 0.

        EventLogMask:

            For debugging purposes, it is possible to log events
            in the WIndows Event Log.  Events are classified by various
            types.  The value in this parameter determines what events
            are logged.  It is the sum of the desired Event Types to log.
            The default value of this variable is 1, logging only
            all fatal initialization errors.  See the file events.txt for
            a description of the EventLogMask bits and the events reported.

        TargetMode:

            Enables Target Mode support if the value is nonzero.  The default
            for this value is 0, disabling Target Mode support.  Reinstalling
            the driver DOES NOT reset this value.

            Support for Target Mode requires specialized upper-level system
            drivers that are application-specific.

        NumXcb:

            Number of simultaneous Exchanges that can be handled
            in Target Mode.  Each received SCSI command utilizes
            one XCB.  Each XCB requires 76 bytes of memory.  The
            default value is 512; minimum 64, maximum 2048.
            Incoming commands above the set limit are dropped.
            This value is disregarded if TargetMode is set to 0.

        NumScb:

            Number of simultaneous Sequences that can be handled
            in Target Mode.  When responding to a SCSI command,
            the upper level driver will initiate one or more
            Sequences (data transfer and/or completion status)
            to process the command.  Each SCB requires 168 bytes
            of memory.  The minimum is the setting for NumXcb;
            maximum 2048.  The default value is 1024.  This
            value is disregarded if TargetMode is set to 0.

        MaxMemRead:

            This variable defines the largest byte count used for a PCI
            master Read command according to the following table.

                0 =  512    2 = 2048
                1 = 1024    3 = 4096

        MaxWriteBurst:

            This variable defines the maximum PCI burst used during PCI
            Memory Write or Memory Write & Invalidate commands.  The following
            table describes the values encoded into this variable; the
            default value is 7, corresponding to a maximum burst size of
            4096 bytes.  There are some video capture cards that may
            depend on being able to gain access to the PCI bus on shorter
            notice, so if you have performance problems with these cards,
            you may consider playing with this value.

                0 =  128    4 = 2048
                1 =  246    5 = 4096
                2 =  512    6 = 4096
                3 = 1024    7 = 4096

        MaxReadBurst:

            This variable defines the maximum PCI burst used during PCI
            Memory Reads or Memory Read Line commands.  The following
            table describes the values encoded into this variable; the
            default value is 7, corresponding to a maximum burst size of
            4096 bytes.  There are some video capture cards that may
            depend on being able to gain access to the PCI bus on shorter
            notice, so if you have performance problems with these cards,
            you may consider playing with this value.

                0 =  128    4 = 2048
                1 =  246    5 = 4096
                2 =  512    6 = 4096
                3 = 1024    7 = 4096

        RetryCount:

            Number of times to retry a request for a port that disappeared.

        CacheLineZero:

            A nonzero value causes the driver to set the PCI Cache Line Size
            register to 0.  We have seen cases where certain PCI-to-PCI
            bridges cause poor performance under some circumstances.  Setting
            the PCI Cache Line Size register to 0 causes the chip to use
            the PCI Read Multiple command instead of the Read Line command.
            The default value is 0 (Cache Line Size remains set to its
            system-initialized value).

        MaximumSgList

            This value, if present, specifies the maximum number of scatter/
            gather list entries in any request.  If the value is not present,
            a value of 17 will be used.  Each scatter/gather entry maps to
            at least a 4k byte page.  The default value of 17 can allow an
            I/O request covering 65537 to 69632 bytes depending on buffer
            alignment requirements.  Two special values, 254 and 255 (hex FE
            and FF) have special meanings.  A value of 254 allows a transfer
            size of 1 meg and a value of 255 allows transfer sizes limited
            only by the NumSgLists and SglPageSize entries above.  For
            convenience, we have provided the exp-64k.reg, exp-256k.reg,
            exp-1m.reg and exp-unl.reg registry files to allow the user to
            set this value to allow 64k, 256k, 1 meg and "unlimited" transfer
            sizes respectively.

            If the entry is not present, a value of 17 will be used by the
            operating system.

            If there is a MaxXferSize entry (see below) and the calculated
            value is greater than MaxXferSize, then the MaxXferSize value
            will be used.

            If there is no MaxXferSize entry and the calculated value is
            greater than 8 megs, then the maximum transfer length will be
            limited to 8 megs.

        EnableFdmi

            A nonzero value enables registration of the HBA and Port
            Attributes with the Fabric Management Server if a connection
            with a fabric switch is established.  If this value is zero or
            not present, Management Server registration is disabled.

        MaximumNumberOfTargets

            From a historical perspective, a SCSI bus can address only 8
            devices on a narrow (8 bit) SCSI bus or 16 on a wide (16 bit)
            SCSI bus.  (There was a concept of a 32 bit SCSI bus that
            nobody ever implemented where 32 devices could be addressed.)
            Windows uses the SCSI model to accommodate Fibre Channel.  Fibre
            Channel can address virtually millions of devices in a Fabric
            topology.  To allow addressing of more devices than covered by
            the standard SCSI model, special accommodations must be made.

            By default Celerity will tell Windows that it can handle 32
            targets on each SCSI bus.  Combined with the default
            NumberOfBusses of 8 described below, this allows Windows to
            discover up to 255 targets per adapter.

            The Celerity driver utilizes a Port Database to keep track of
            logged in ports.  As each device is logged in during device
            discovery procedures, the Port Database is scanned for that
            port's World Wide Port Name (WWPN.  Once an entry is established
            for a given WWPN, the port's address and other information is
            always placed in that slot.  When new ports are logged in that
            have not been seen before, their information is simply placed in
            the next unused database entry.  When an I/O request is received
            from the OS, the bus (PathId) and Target ID are combined to
            index into the Port Database.  Assuming that the addressed port
            is logged in, the command is sent to the appropriate Fibre
            Channel address.

            The MaximumNumberOfTargets and NumberOfBusses registry entries
            can be used to modify the mapping from SCSI address to Fibre
            Channel address.  The MaximumNumberOfTargets value can be set
            as high as 128 or as low as 8.  It should be noted that some
            application programs that assume they are talking to a SCSI
            adapter may have trouble with a value as high as 128 (or even
            above 8), and also that some older versions of Windows may have
            problems addressing past 32.

        NumberOfBusses

            See the description for MaximumNumberOfTargets above.  Most
            SCSI adapters address only one SCSI bus.  However, to allow
            for expanded Fibre Channel device addressability, by default
            Celerity tells the OS that there are actually 8 busses connected
            to the adapter.  As stated above, this allows Celerity to
            address as many as 255 devices using the default value for
            MaximumNumberOfTargets.

            NumberOfBusses can be set to any value from 1 through 8.  The
            mapping from SCSI address takes the bus number, multiplies by
            MaximumNumberOfTargets, then adds the Target ID to get the index
            into the Port Database, uniquely addressing a given device.  By
            setting NumberOfBusses to 8 and MaximumNumberOfTargets to 128,
            up to 1023 devices can be addressed.  Note, however, to address
            this many devices, the MaxLogins value described above must be
            increased to that value.  (If the adapter has been set to
            Discover By Node Name, and every device can have two ports
            logged in, then MaxLogins should be twice NumberOfBusses times
            MaximumNumberOfTargets.)

        DisableInitiatorMode

            A nonzero value in this entry disables Initiator mode.  All
            adapters will fail all SCSI initiator mode commands with a
            Selection Timeout error.

        MaxXferSize

            Maximum data transfer size.  The value, to be valid, must be
            at least 69,632 (4096 * 17).  If this value is not present or
            not valid, it is assumed to be 8 megs.  If the calculated
            maximum transfer size based on MaximumSgList, SglPageSize and
            NumSgLists is greater than this value, then the maximum transfer
            size is limited to this value.
Download Driver Pack

How To Update Drivers Manually

After your driver has been downloaded, follow these simple steps to install it.

  • Expand the archive file (if the download file is in zip or rar format).

  • If the expanded file has an .exe extension, double click it and follow the installation instructions.

  • Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.

  • Find the device and model you want to update in the device list.

  • Double-click on it to open the Properties dialog box.

  • From the Properties dialog box, select the Driver tab.

  • Click the Update Driver button, then follow the instructions.

Very important: You must reboot your system to ensure that any driver updates have taken effect.

For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.

server: web4, load: 1.82