下載下傳 :
http://filedownloads.qlogic.com
fc-fcoe driver for rhel 5.6/5.7 (x86/x64) v-8.03.07.09.5.6-k
安裝 :
4.1 building the driver for rhel 5.x linux
1. in the directory that contains the source driver file,
qla2xxx-src-x.xx.xx.xx.xx.xx-k.gz, issue the following commands:
# tar -xzvf qla2xxx-src-x.xx.xx.xx.xx.xx-k.tar.gz
# cd qla2xxx-src-x.xx.xx.xx.xx.xx-k
2. build and install the driver modules from the source code by
executing the build.sh script as follows:
# ./extras/build.sh install
the build.sh script does the following:
* builds the driver .ko files.
* copies the .ko files to the appropriate
/lib/modules/2.6.../extra/qlgc-qla2xxx directory.
* adds the appropriate directive in the modprobe.conf (if
applicable).
3. manually load the driver for linux by issuing the following
command:
# modprobe -v qla2xxx
to unload the driver, issue the following command:
# modprobe -r qla2xxx
4. automatically load the driver by rebuilding the ram disk to
include the driver as follows:
a. edit the /etc/modprobe.conf file and add the following entry
(if they are not present):
alias scsi_hostadapterx qla2xxx
where, x is based on the order of the scsi modules being
loaded.
b. create a backup copy of the ramdisk image by issuing the
following commands:
# cd /boot
# cp initrd-[kernel version].img initrd-[kernel
version].img.bak
# mkinitrd -f initrd-[kernel version].img `uname -r`
note: depending on the server hardware, the ramdisk file name
may be different.
c. to load the driver, reboot the host.
可選參數 :
5. driver system parameters
the driver gets its parameters when specified with the insmod command.
for example:
# insmod qla2xxx.ko ql2xextended_error_logging=1
if using the modprobe command, you must specify the parameters in the
/etc/modprobe.conf file for rhel and /etc/modprobe.conf.local for
sles. for example:
options qla2xxx ql2xextended_error_logging=1
parameters for the linux driver include the following:
* ql2xlogintimeout - defines the login timeout value in seconds
during the initial login. default: 20 seconds
* qlport_down_retry - defines how long to wait for a port that
returns a port-down status before returning i/o back to the os.
default: 30 seconds
* ql2xplogiabsentdevice - enables plogi to devices that are not
present after a fabric scan. this is needed for several broken
switches. default is 0 - no plogi. 1 - perform plogi.
* ql2xloginretrycount - specifies an alternate value for the nvram
login retry count. default is 8.
* ql2xallocfwdump - enables allocation of memory for a firmware dump
during initialization. memory allocation requirements vary
by type. default is 1 - allocate memory.
* ql2xextended_error_logging - defines whether the driver prints
verbose logging information. default is 0 - disable. 1 - enable.
* ql2xfdmienable - enables fdmi registrations
default is 0 - no fdmi. 1 - perform fdmi.
* ql2xmaxqdepth - defines the maximum queue depth reported to scsi
mid-level per device. the queue depth specifies the number of
outstanding requests per lun. default is 32.
* ql2xqfullrampup - number of seconds to wait to begin to ramp-up
of the queue depth for a device after a queue-full condition has
been detected. default is 120 seconds.
* ql2xqfulltracking - controls whether the driver tracks queue full
status returns and dynamically adjusts a scsi device's queue
depth. default is 1 to perform tracking. set to 0 to disable
tracking and adjustment of queue.
* ql2xfwloadbin - specifies location from which to load isp firmware.
2 - load firmware via the request_firmware() interface.
1 - load firmware from flash.
0 - use default semantics.
to view a comprehensive list of parameters, enter the following
command:
# /sbin/modinfo qla2xxx
輸出如下 :
[root@db-192-168-173-226 ~]# /sbin/modinfo qla2xxx
filename: /lib/modules/2.6.18-238.el5/extra/qlgc-qla2xxx/qla2xxx.ko
version: 8.03.07.09.5.6-k
license: gpl
description: qlogic fibre channel hba driver
author: qlogic corporation
srcversion: 35b312f34f607638cf849a0
alias: pci:v00001077d00008021sv*sd*bc*sc*i*
alias: pci:v00001077d00008001sv*sd*bc*sc*i*
alias: pci:v00001077d00002532sv*sd*bc*sc*i*
alias: pci:v00001077d00005432sv*sd*bc*sc*i*
alias: pci:v00001077d00005422sv*sd*bc*sc*i*
alias: pci:v00001077d00008432sv*sd*bc*sc*i*
alias: pci:v00001077d00002432sv*sd*bc*sc*i*
alias: pci:v00001077d00002422sv*sd*bc*sc*i*
alias: pci:v00001077d00006322sv*sd*bc*sc*i*
alias: pci:v00001077d00006312sv*sd*bc*sc*i*
alias: pci:v00001077d00002322sv*sd*bc*sc*i*
alias: pci:v00001077d00002312sv*sd*bc*sc*i*
alias: pci:v00001077d00002300sv*sd*bc*sc*i*
alias: pci:v00001077d00002200sv*sd*bc*sc*i*
alias: pci:v00001077d00002100sv*sd*bc*sc*i*
depends: scsi_mod,scsi_transport_fc
vermagic: 2.6.18-238.el5 smp mod_unload gcc-4.1
parm: ql2xlogintimeout:login timeout value in seconds. (int)
parm: qlport_down_retry:maximum number of command retries to a port that returns a port-down status. (int)
parm: ql2xplogiabsentdevice:option to enable plogi to devices that are not present after a fabric scan. this is needed for several broken switches. default is 0 - no plogi. 1 - perfom plogi. (int)
parm: ql2xloginretrycount:specify an alternate value for the nvram login retry count. (int)
parm: ql2xallocfwdump:option to enable allocation of memory for a firmware dump during hba initialization. memory allocation requirements vary by isp type. default is 1 - allocate memory. (int)
parm: ql2xextended_error_logging:option to enable extended error logging, default is 0 - no logging. 1 - log errors. (int)
parm: ql2xdevdiscgoldfw:option to enable device discovery with golden firmware applicable to isp81xx based cna only. default is 0 - no discovery. 1 - discover device. (int)
parm: ql2xfdmienable:enables fdmi registratons default is 0 - no fdmi. 1 - perfom fdmi. (int)
parm: ql2xmaxqdepth:maximum queue depth to report for target devices. (int)
parm: ql2xqfulltracking:controls whether the driver tracks queue full status returns and dynamically adjusts a scsi device's queue depth. default is 1, perform tracking. set to 0 to disable dynamic tracking and adjustment of queue depth. (int)
parm: ql2xqfullrampup:number of seconds to wait to begin to ramp-up the queue depth for a device after a queue-full condition has been detected. default is 120 seconds. (int)
parm: ql2xenablemsix:set to enable msi or msi-x interrupt mechanism. default is 1, enable msi-x interrupt mechanism. 0 = enable traditional pin-based mechanism. 1 = enable msi-x interrupt mechanism. 2 = enable msi interrupt mechanism. (int)
parm: ql2xshiftctondsd:set to control shifting of command type processing based on total number of dsd. (int)
parm: ql2xfwloadbin:option to specify location from which to load isp firmware: 2 -- load firmware via the request_firmware() (hotplug) interface, isp82xx and above. 1 -- load firmware from flash. 0 -- use default semantics. (int)
parm: ql2xdbwr:option to specify scheme for request queue posting 0 -- regular doorbell. 1 -- (default) camram doorbell (faster). (int)
parm: ql2xdontresethba:1: do not reset on failure, 0(default): reset on failure. (debug) (int)
parm: ql2xsetdevstate:1: reset device state to cold. (debug) (int)
parm: ql2xetsenable:enables firmware ets burst.default is 0 - skip ets enablement. (int)
parm: ql2xtargetreset:enable target reset.default is 1 - use hw defaults. (int)
parm: ql2xmaxlun:defines the maximum lu number to register with the scsi midlayer. default is 65535. (uint)
parm: ql2xmdcapmask:set the minidump driver capture mask level. default is 0x1f - can be set to 0x3, 0x7, 0xf, 0x1f, 0x7f. (int)
parm: ql2xmdenable:enable/disable minidump. 0 (default) - minidump disabled. 1 - minidump enabled. (int)