FC HBA Driver for Linux Kernel 2.6.x Release Notes - QLogic
FC HBA Driver for Linux Kernel 2.6.x Release Notes - QLogic
FC HBA Driver for Linux Kernel 2.6.x Release Notes - QLogic
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong><br />
This software license applies only to <strong>QLogic</strong> customers.<br />
<strong>QLogic</strong> Corporation.<br />
All rights reserved.<br />
Table of Contents<br />
1. Version<br />
2. Changes<br />
3. Bug Fixes<br />
4. Known Issues<br />
5. History<br />
6. Additional In<strong>for</strong>mation<br />
7. Firmware (Embedded in <strong>Driver</strong>)<br />
7.1 2Gb Fibre Channel Adapters<br />
7.2 4Gb/8Gb Fibre Channel Adapters and Converged Network Adapters<br />
8. Trademarks<br />
9. Notices<br />
10. Contacting Support<br />
1. Version<br />
These release notes describe the changes, fixes, known issues, and release details that apply to <strong>FC</strong> <strong>HBA</strong><br />
<strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong>, version 8.02.23.<br />
This driver contains firmware version 3.03.27 <strong>for</strong> 2Gb <strong>FC</strong> <strong>HBA</strong>s and firmware version 4.04.05 <strong>for</strong> 4Gb/8Gb<br />
<strong>FC</strong> <strong>HBA</strong>s and <strong>FC</strong>oE CNAs.<br />
2. Changes<br />
The following changes have been made to the <strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> between versions<br />
8.02.14.01 and 8.02.23.<br />
Hardware Support<br />
● Added support <strong>for</strong> QLE8042 <strong>FC</strong>oE CNA.<br />
OS Support<br />
N/A<br />
Software/<strong>Driver</strong><br />
● MSI/MSI-X support.<br />
● Resynchronized the driver with the latest released 2Gb firmware: 3.03.27.<br />
● Resynchronized the driver with the latest released 4Gb/8Gb firmware: 4.04.05.<br />
● Fibre Channel Event tracing support.<br />
● Flash Descriptor Table layout support.<br />
Industry Standards Compliance<br />
N/A<br />
3. Bug Fixes<br />
The following fixes have been made to the <strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> between versions<br />
8.02.14.01 and 8.02.23.<br />
<strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> <strong>Release</strong> <strong>Notes</strong>
● Fixed build script issue with SLES 10 and RHEL 5.<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Fixed SRB reference counting issues.<br />
Fixed compilation issues with recent kernels.<br />
Fixed management-server login-state synchronization issue.<br />
Corrected OVERRUN handling on recent <strong>FC</strong> Controller ASICs.<br />
Corrected Atmel flash-part handling.<br />
4. Known Issues<br />
●<br />
When running on RHEL5 with the ql2xextended_error_logging module parameter enabled, the<br />
system might display soft lock detected messages ("soft lockup on CPU#0!") in the system log<br />
files. This is a side effect of debug messages printed. <strong>QLogic</strong> is not aware of any operational failures<br />
as a result of these messages.<br />
5. History<br />
For history of changes to the <strong>QLogic</strong> driver, refer to the revision.notes file in qla2xxx-src-.tar.gz.<br />
6. Additional In<strong>for</strong>mation<br />
You must use this driver with API library v4.00-build25. To maintain consistency with our upstream<br />
offering, the extended_error_logging module parameter has been renamed to<br />
ql2xextended_error_logging.<br />
Update any scripts and/or configuration files to reflect this change.<br />
The driver no longer builds separate 'firmware-loader' modules <strong>for</strong> each <strong>FC</strong> <strong>HBA</strong> type (such as qla2300.<br />
ko or qla2400.ko). Instead, it builds a single module, qla2xxx.ko, which contains support <strong>for</strong> all <strong>HBA</strong><br />
types.<br />
7. Firmware (Embedded in <strong>Driver</strong>)<br />
This section provides release details <strong>for</strong> the firmware embedded in the driver. This includes:<br />
●<br />
●<br />
7.1 2Gb Fibre Channel Adapters<br />
7.2 4Gb/8Gb Fibre Channel Adapters and Converged Network Adapters<br />
7.1 2Gb Fibre Channel Adapters<br />
The following table shows the changes and bug fixes made to the 2Gb Risc firmware between versions<br />
3.03.18 and 3.03.27.<br />
Changes<br />
Change<br />
Description<br />
From 3.03.26 to 3.03.27<br />
[ER58344]<br />
[ER58759]<br />
SB2 only. The firmware generates an Asynchronous Event 8012h if it receives an OLS <strong>for</strong> greater than 200ms without sending a<br />
NOS.<br />
SB2 only. Changed Request Non-participating Mode Mailbox Command (43h) to complete even if exchanges are still active.<br />
From 3.03.25 to 3.03.26<br />
None<br />
From 3.03.24 to 3.03.25<br />
[ER54558]<br />
Modified firmware to clearly indicate recoverable Fibre Channel Controller hardware errors. A system error (8002h)<br />
asynchronous event with Mailbox 0 register having a value of 8002h and Mailbox 1 register having a value of 0001h indicates a<br />
recoverable hardware error. The Fibre Channel Controller must be reset to restart operation.<br />
From 3.03.23 to 3.03.24<br />
[ER51527]<br />
The firmware now allows more than 16 concurrent task management requests to be active (per target).<br />
From 3.03.22 to 3.03.23<br />
None<br />
<strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> <strong>Release</strong> <strong>Notes</strong>
Changes (continued)<br />
Change<br />
Description<br />
From 3.03.21 to 3.03.22<br />
[ER47281] The system now clears the SCSI Status field in Status IOCB when reporting a transport error (03h).<br />
[ER47427]<br />
[ER47736]<br />
[ER47597]<br />
[ER50687]<br />
Class 2 builds only. Send PRJT instead of ACK <strong>for</strong> received Class 2 PLOGI with a D_ID error.<br />
MID only. Added support <strong>for</strong> <strong>FC</strong>P-2.<br />
The Fibre Channel Controller firmware operating in target mode can now transition to READY state without waiting <strong>for</strong><br />
authentication (ADISC/PDISC) from the initiators. This change allows certain switches to complete discovery of the Fibre<br />
Channel Controller.<br />
Firmware no longer reports a fatal firmware error (8002h) if it encounters soft memory errors within the 2Gb chips.<br />
From 3.03.20 to 3.03.21<br />
[ER45171] Added SCSI Initiator Mode Support indication to the Login Fabric Port (6fh) and Login Loop Port (74h) Mailbox Command. Upon<br />
successful completion of these commands, Outgoing Mailbox Register 1 bit 2 will be set if the remote port does not support<br />
Initiator mode operation. If the bit is clear, then the remote port does support Initiator mode operation.<br />
[ER46830]<br />
MID only. The Fibre Channel Controller Target Mode firmware now allows an implicit logout of an initiator port.<br />
[ER45076] The Login Loop Port Mailbox IOCB command now returns the Node Name at offset 30h-37h and the Port Name at offset 38h-<br />
3fh of the completion IOCB.<br />
[ER46638]<br />
Added support <strong>for</strong> Get Link Status Mailbox IOCB.<br />
From 3.03.19 to 3.03.20<br />
None<br />
From 3.03.18 to 3.03.19<br />
[ER43794] Firmware initiated login to Fabric Name Server is now retried if there is a timeout.<br />
[ER44240]<br />
2Gb Fibre Channel Controller (2322) only. Modify auto speed negotiation to inter-operate with certain switches.<br />
Bug Fixes<br />
Error Report<br />
Description<br />
From 3.03.26 to 3.03.27<br />
[ER57255] Corrected a problem that could cause a Task Management Function IOCB to an <strong>FC</strong>P-2 device not being returned to the system<br />
driver upon timeout. This could occur if the <strong>FC</strong>P_CMD was dropped repeatedly by the target device or as a result of a bad link.<br />
[ER57638]<br />
[ER57316]<br />
[ER57597]<br />
[ER57315]<br />
[ER57321]<br />
[ER57190]<br />
[ER57209]<br />
[ER57194]<br />
[ER57432]<br />
[ER57439]<br />
[ER57838]<br />
[ER58270]<br />
[ER57924]<br />
[ER57923]<br />
[ER56188]<br />
Corrected a condition that prevented the SCR ELS from being sent when no resources are available.<br />
Corrected a condition that caused the firmware state to not become ready if the current topology is Fabric Point-Point. This<br />
occurred when the previous topology was FL and firmware is waiting <strong>for</strong> a FAN ELS.<br />
Correctly set exchange re-use timer after REC RJT ELS is received.<br />
Corrected Fatal Firmware Error (8002h) or transmit hang condition when a pending REC ELS is aborted due to completion of<br />
the associated exchange.<br />
Corrected Fatal Firmware Error (8002h) caused during processing of MSIOCB request.<br />
2322 only. Corrected transmit issues related to Command Type 6 IOCB requests. These would appear as the command not<br />
being transmitted or a write command being transmitted twice.<br />
Extended memory builds only. Corrected a problem where the ATIO Type 3 IOCB would contain invalid <strong>FC</strong>P_CMD data.<br />
2322 only. Corrected a condition where an IOCB could be returned to the system driver twice during fault injection.<br />
MID only. Corrected a condition where the firmware would not become ready when connected to a Cisco switch.<br />
Extended Memory builds only. Corrected a condition where IOCBs were incorrectly returned with ABORT status after a LUN<br />
Reset was issued and be<strong>for</strong>e the Marker IOCB was issued.<br />
IP builds only. Corrected an issue with I/O Timeouts.<br />
Corrected timeout handling <strong>for</strong> IOCBs issued via Execute IOCB Mailbox Command (54h).<br />
Return Mailbox IOCB <strong>for</strong> SNS login to system driver if command timeout is encountered.<br />
Corrected a condition where transmit operations could hang during fault injection.<br />
SB2 only. Corrected a condition where a TIN IU would be sent to the system driver <strong>for</strong> a port that is not logged in after receiving<br />
a RNID ELS from the same port.<br />
<strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> <strong>Release</strong> <strong>Notes</strong>
Bug Fixes (continued)<br />
Change<br />
Description<br />
From 3.03.25 to 3.03.26<br />
[ER56141] 2Gb Fibre Channel Controller (2322) only. Merged ER48365 to 2Gb Fibre Channel Controller (2322) (See V3.03.24).<br />
[ER56142]<br />
2Gb Fibre Channel Controller (2322) only. Corrected firmware reported fatal error after system driver aborted a transmit IO.<br />
[ER56144]<br />
Removed incorrect validation of bits 15:14 of the LUN field.<br />
From 3.03.24 to 3.03.25<br />
[ER53888] Customer-specific changes.<br />
[ER52860]<br />
[ER53393]<br />
[ER54320]<br />
[ER53677]<br />
[ER51920]<br />
[ER53357]<br />
[ER54833]<br />
[ER51856]<br />
[ER54845]<br />
[ER54843]<br />
[ER54847]<br />
[ER54836]<br />
2Gb Fibre Channel Controller (2322) only. Corrected race condition if the firmware received an <strong>FC</strong>P_RSP frame while it was still<br />
transmitting data to the target.<br />
Fixed a condition to correctly handle IOCB timeout calculation during repeated <strong>FC</strong>P-2 error recovery attempts.<br />
MID only. Corrected an issue where a frame was sent with the incorrect S_ID.<br />
Improved resource exhaustion handling when a large number of targets are present with heavy IO load.<br />
Corrected false errors reported during loopback testing.<br />
Fixed firmware to correctly handle received RSCNs that have no Port IDs listed in the payload.<br />
Corrected firmware errors (8002h) reported when receiving multiple concurrent IP exchanges per port.<br />
MID only. Correctly set S_ID field when sending SCSI task management commands.<br />
MID only. Corrected firmware hang condition after numerous link fault injections.<br />
MID only. Corrected the retry sending FLOGI to fabric when timeout occurs; it now correctly reports topology in<strong>for</strong>mation.<br />
Corrected an undesired frame sent with payload of zero during Link Init.<br />
From 3.03.23 to 3.03.24<br />
[ER50426] Customer-specific change.<br />
[ER51522]<br />
[ER51053]<br />
[ER48365]<br />
[ER51550]<br />
[ER52080]<br />
[ER52177]<br />
[ER51374]<br />
[ER51571]<br />
[ER50982]<br />
SB2 only. Corrected a fatal firmware error (8002h) reported when the target system was reset.<br />
Corrected a condition where I/O's are not returned to the driver on time that could result when executionthrottle is met and the<br />
target is slow or does not respond.<br />
Resume LED handling after system driver relinquishes control and firmware is in Ready state.<br />
Corrected reporting of Change Notification (8015h) Asynchronous Events when MSI is enabled.<br />
2Gb Fibre Channel Controller (2322) only. Corrected a condition where the link may not be restored after leaving the cable<br />
unplugged <strong>for</strong> a long period of time.<br />
Corrected a fatal firmware error (8002h) that could be reported during fault injection.<br />
Corrected a condition where a SCSI command timeout could occur if the Fibre ChannelP_RSP frame was received immediately<br />
after a MS IOCB response frame.<br />
From 3.03.22 to 3.03.23<br />
[ER51127] Customer-specific change.<br />
From 3.03.21 to 3.03.22<br />
[ER48770] SB2 only. R_RDY credits were not saved from the received PLOGI when the Fibre Channel Controller is directly connected to<br />
another N Port (class 2 or 3).<br />
[ER50309]<br />
[ER50431]<br />
[ER48900]<br />
[ER49629]<br />
[ER47998]<br />
[ER50237]<br />
[ER49380]<br />
[ER47596]<br />
SB2 only. Verify that ELS Frames P_RJT, F_RJT, P_BSY and F_BSY are valid Class 2 exchanges be<strong>for</strong>e processing.<br />
Corrected an issue where MSI interrupts would not be reported.<br />
Extended Memory Builds only. Corrected reporting of sense data that is greater than 32 bytes.<br />
2322 only. Additional Auto Negotiation changes related to [ER44240].<br />
Corrected a condition where the firmware would incorrectly detect that it is connected to an N-Port instead of an F-Port. This<br />
would prevent the firmware from reaching Ready state.<br />
MID only. Corrected a firmware error (8002h) during processing of an MSIOCB PLOGI request.<br />
2322 only. Corrected firmware error (8002h) reported when aborting an exchange concurrently with receiving <strong>FC</strong>P_RSP or<br />
<strong>FC</strong>P_XFRRDY <strong>for</strong> the exchange.<br />
MIDX build only. Corrected a condition where Port Logout Mailbox Command (56h) would not send the LOGO ELS.<br />
<strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> <strong>Release</strong> <strong>Notes</strong>
Bug Fixes (continued)<br />
Change<br />
Description<br />
From 3.03.20 to 3.03.21<br />
[ER44276] SB2 only. Corrected firmware error (8002h) that could result if an ABTS is received while waiting <strong>for</strong> an ACK <strong>for</strong> a Class 2 frame.<br />
[ER45423]<br />
[ER45667]<br />
[ER45809]<br />
[ER46040]<br />
[ER46039]<br />
[ER45609]<br />
[ER46473]<br />
[ER46855]<br />
[ER45666]<br />
[ER45923]<br />
[ER45647]<br />
[ER46669]<br />
[ER47133]<br />
[ER47134]<br />
Corrected a condition where the firmware could incorrectly return an IO with a completion status of timeout.<br />
2322 only. Fixed various Fibre Channel tape error recovery issues.<br />
2322 only. Corrected a condition that could cause an IO hang after servicing an Abort Task Mailbox Command (68h).<br />
MIDX builds only. Corrected various issues affecting MIDX builds.<br />
2322 only. Corrected firmware error (8002h) reported by firmware during fault injection.<br />
SB2 only. Corrected errors found during Terminated Exchange Recovery.<br />
SB2 only. Corrected a stall condition after receiving a Class 2 SB2 IU.<br />
Corrected an issue where a fatal firmware error (8002h) would be reported in Target Mode if the cable was moved from one<br />
switch port to another. This would only occur if No Implicit Logout on Link Failure (bit 15) was selected in Additional firmware<br />
Options.<br />
2Gb Fibre Channel Controller (2312) only. Corrected a firmware induced PCIX Master Abort error that could occur when<br />
aborting transmit operations.<br />
2Gb Fibre Channel Controller (2322) only. Corrected a condition where the firmware would stop responding during failover/<br />
failback operations.<br />
SB2 only. Corrected various SB2 transmit timeout and transmit error handling conditions. Return timeout status in completion<br />
IOCB on SB2 Sequence Timeout.<br />
Class 2 only. Corrected a condition where the Fibre Channel Controller would delay sending an R_RDY in an N_Port – N_Port<br />
configuration when the Fibre Channel Controller is the responder of a PLOGI.<br />
From 3.03.19 to 3.03.20<br />
[ER44676] SB2 only. Corrected frame routing <strong>for</strong> Diagnostic Echo Test (0044h) and Diagnostic Loopback (0045h) mailbox commands.<br />
[ER44670]<br />
[ER44698]<br />
[ER44781]<br />
[ER44801]<br />
[ER44802]<br />
[ER44880]<br />
[ER44989]<br />
2Gb Fibre Channel Controller (2322) only. Corrected firmware error (8002h) that could happen if a LIP occurred right after an<br />
immediate CLS was received in response to an OPN.<br />
Corrected firmware error (8002h) that could happen during processing of Execute Command IOCB (0012h) or Execute IOCB<br />
A64 (0054h) mailbox commands.<br />
Corrected spurious parity error reported after fault injection.<br />
Corrected an issue that could cause the Fibre Channel Controller to stop responding to OPN after a LIP.<br />
2Gb Fibre Channel Controller (2322), CRC Mode. and Target Mode only. Corrected a condition that could cause the 2Gb Fibre<br />
Channel Controller (2322) to stop transmitting data.<br />
2Gb Fibre Channel Controller (2322) only. Corrected firmware error (8002h) and firmware hang that could happen during fault<br />
injection.<br />
From 3.03.18 to 3.03.19<br />
[ER43740] Correctly set the Hard ID Valid bit in the Port Database structure.<br />
[ER44251]<br />
[ER43950]<br />
[ER44307]<br />
[ER43736]<br />
[ER43721]<br />
[ER43703]<br />
2Gb Fibre Channel Controller (2322) only. Corrected a condition that could result in IOCB’s not being returned in a private loop<br />
topology. This could happen if the target port repeatedly sends immediate CLS in response to OPN, and the firmware retry limit<br />
is reached.<br />
Corrected potential hang condition during Unload IP (0079h) mailbox command.<br />
Corrected a condition that could cause a CTIO to be incorrectly returned with Port Unavailable (28h) status.<br />
2Gb Fibre Channel Controller (2322) only. Corrected a condition that could unnecessary LIPs to be initiated by the Fibre<br />
Channel Controller.<br />
Corrected a condition that could prevent the firmware from going to READY state after a configuration change.<br />
2Gb Fibre Channel Controller (2322) only. Corrected false underrun status reported <strong>for</strong> some IOCB’s after timeout of another<br />
unrelated IOCB.<br />
<strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> <strong>Release</strong> <strong>Notes</strong>
7.2 4Gb/8Gb Fibre Channel Adapters and Converged Network Adapters<br />
The following tables show the changes and bug fixes to the firmware that is embedded in the drivers <strong>for</strong><br />
the 4Gb Fibre Channel adapters, 8Gb Fibre Channel adapters, and Converged Network Adapters from<br />
versions 4.04.01 to 4.04.05.<br />
Changes<br />
Change<br />
4.04.04 to 4.04.05<br />
[ER61837] Customer-specific change.<br />
Description<br />
4.04.03 to 4.04.04<br />
[ER61654] Customer-specific change.<br />
[ER61694]<br />
4.04.02 to 4.04.03<br />
None<br />
4.04.01 to 4.04.02<br />
[ER61208] MID only. Return Command Parameter Error (4006h) if the number of requested VP’s exceeds the limit when issuing Initialize<br />
Firmware – Multiple-ID’s Mailbox Command (048h).<br />
[ER61325]<br />
Customer-specific change.<br />
4.04.00 to 4.04.01<br />
[ER60313] Customer-specific change.<br />
Bug Fixes<br />
Error Report<br />
Description<br />
4.04.04 to 4.04.05<br />
[ER61883] ISP2532 only. Do not monitor SFP+ RX_LOS signal in Mezzanine environment.<br />
4.04.03 to 4.04.04<br />
None<br />
4.04.02 to 4.04.03<br />
[ER61007] Improved handling of receiving an ABTS <strong>for</strong> a CT Pass-Through exchange.<br />
4.04.01 to 4.04.02<br />
None<br />
4.04.00 to 4.04.01<br />
[ER58617] 2432 only. Corrected a condition where Mailbox Commands issued to Function 1 would not complete after issuing Stop<br />
Firmware Mailbox Command (14h) to Function 0.<br />
8. Trademarks<br />
<strong>QLogic</strong>, the <strong>QLogic</strong> logo, QLA, SANbox, and SANsurfer are registered trademarks of <strong>QLogic</strong> Corporation.<br />
SANtrack and SAN Express are trademarks of <strong>QLogic</strong> Corporation.<br />
All other brand and product names are trademarks or registered trademarks of their respective owners.<br />
9. Notices<br />
In<strong>for</strong>mation furnished in this document is believed to be accurate and reliable. However, <strong>QLogic</strong><br />
Corporation assumes no responsibility <strong>for</strong> its use, nor <strong>for</strong> any infringements of patents or other rights of<br />
third parties which may result from its use. <strong>QLogic</strong> Corporation reserves the right to change product<br />
specifications at any time without notice. Applications described in this document <strong>for</strong> any of these products<br />
are only <strong>for</strong> illustrative purposes. <strong>QLogic</strong> Corporation makes no representation nor warranty that such<br />
applications are suitable <strong>for</strong> the specified use without further testing or modification. <strong>QLogic</strong> Corporation<br />
assumes no responsibility <strong>for</strong> any errors that may appear in this document.<br />
<strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> <strong>Release</strong> <strong>Notes</strong>
10. Contacting Support<br />
Please feel free to contact your <strong>QLogic</strong> approved reseller or <strong>QLogic</strong> Technical Support at any phase of<br />
integration <strong>for</strong> assistance. <strong>QLogic</strong> Technical Support can be reached by the following methods:<br />
Web: http://support.qlogic.com<br />
Email: support@qlogic.com<br />
Go to Top<br />
© Copyright 2009. All rights reserved worldwide. <strong>QLogic</strong>, the <strong>QLogic</strong> logo, and the Powered by <strong>QLogic</strong> logo are<br />
registered trademarks of <strong>QLogic</strong> Corporation. All other brand and product names are trademarks or registered<br />
trademarks of their respective owners.<br />
<strong>FC</strong> <strong>HBA</strong> <strong>Driver</strong> <strong>for</strong> <strong>Linux</strong> <strong>Kernel</strong> <strong>2.6.x</strong> <strong>Release</strong> <strong>Notes</strong>