Cavium Driver Release Notes CAVIUM INC. All rights reserved. Table of Contents 1. Change History 2. Known Issues 3. Notices 4. Contacting Support 1. Changes History * 8.08.00.08.xx.y-k13 * qla2xxx: v2: Fix partial flash write of MBI * qla2xxx: Further limit FLASH region write access from SYSFS. * qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines. * 8.08.00.08.xx.y-k11 * qla2xxx: fix uninit ha pointer * 8.08.00.08.xx.y-k9 * qla2xxx: fix cable swap handling. * qla2xxx: Use GPNID instead of GIDPN for RSCN handling * qla2xxx: relogin is triggering too fast. * qla2xxx: fix session deletion hang (8.x) * qla2xxx: Fix issue for sp->free call * 8.08.00.08.xx.y-k7 * qla2xxx: fix BUS Reset * qla2xxx: Fix race between switch cmd completion * scsi: qla2xxx: Fix double free bug after firmware timeout * scsi: qla2xxx: Defer processing of GS IOCB calls * qla2xxx: extend abort timeout value * qla2xxx: fix srb's ref_count get race condition * qla2xxx: Fix memory leak for allocating abort IOCB. v2 * 8.08.00.08.xx.y-k5 * qla2xxx: Add code for Late workqueue crash * qla2xxx: Clear FCoE Presence before stopping firmware. * qla2xxx: Shutdown Chip on unload. * qla2xxx: back port fw_started flag from upstream * qla2xxx: wait for session deletion done for npiv * qla2xxx: no isp recovery on unload * qla2xxx: fix uninit list head (sp->elem) * qla2xxx: Export symbol qlt_abort_cmd to fix depmod warnings. * qla2xxx: Add stub to silence compiler warning * 8.08.00.08.xx.y-k3 * qla2xxx: Fix crash due to spinlock deadlock * qla2xxx: Fix hung task call trace during load and unload of driver * 8.08.00.08.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Makefile updated for retpoline. * 8.08.00.07.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Add fix to free dma memory. * qla2xxx: Mask off Scope bits in retry delay. * 8.08.00.06.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Remove module parameter ql2xqos_priority_test. * qla2xxx: Add ability to process multiple CT-PT SGE's. * 8.08.00.05.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Simplification of register address used in qla_tmpl.c. * qla2xxx: Correction and improvement to fwdt processing. * qla2xxx: Add correction to RDP FW support logic. * qla2xxx: serialize sess free * qla2xxx: serialize session deletion * qla2xxx: prevent re_login trigger from sending too many commands * qla2xxx: prevent multiple active discovery commands per session * qla2xxx: Add log message for bbcr. * qla2xxx: Remove alias names for QoS module parameters. * 8.08.00.04.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Correction to non-existant fabric name. * qla2xxx: Handle cases for limiting RDP response payload length. * qla2xxx: Add qos fcport test mode. * qla2xxx: Optimized logs for searching qos fcport table. * qla2xxx: Correction to tests for iocb fabric and fcport qos. * qla2xxx: Correction to function qla26xx_read_qos_fcport_table(). * qla2xxx: Correction to MB in-direction selection in qla2x00_echo_test(). * qla2xxx: Correction to selection of loopback/echo test. * qla2xxx: Allow 27xx and 28xx to do bidirectional commands. * qla2xxx: Add RDP/ABTS deferred processing for vp's. * qla2xxx: Add deferred queue for processing ABTS and RDP. * qla2xxx: Cleanup ELS/PUREX iocb fields. * qla2xxx: Rename QoS table row type and cleanup log prints. * qla2xxx: Optimize reading of QoS fcport table. * qla2xxx: Fixup/cleanup of QoS table index code. * qla2xxx: Minor cleanup of flash calls reoganization. * qla2xxx: Optimize flash register routines. * qla2xxx: Fixup flash register routines. * qla2xxx: Add debug prints to write flash routine. * qla2xxx: Simplify flash slow write log messages. * qla2xxx: Simplify NPIV create log messages. * qla2xxx: Simplify D-Port Diagnostics log messages. * qla2xxx: Cleanup log message for fwdt allocate. * qla2xxx: Add non-verbose SFP detail print. * qla2xxx: Quieten FEC=enabled message. * qla2xxx: Use interrupt pin number for port number. * 8.08.00.03.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Correction to EFT selection. * qla2xxx: Correction to flash write routine. * qla2xxx: Add correction to FW image selection. * 8.08.00.02.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Convert FLT flash reads to register method. * qla2xxx: Undo the replacements to ->optrom_read() calls. * qla2xxx: Flash reading routines cleanups. * qla2xxx: Make flash write avoid register banging. * 8.08.00.01.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Use registers for reading unaligned flash offset. * qla2xxx: Fix PCI header and data struct addresses. * qla2xxx: Fix and cleanup ROM code version string reading. * qla2xxx: Corrections to flt->region addresses. * qla2xxx: Add debug buffer dump for INITFW MBC. * qla2xxx: Add debug logs for QoS sorting/searching. * qla2xxx: Use ->isp_ops->read_optrom() in qla26xx_read_qos_fcport_table(). * qla2xxx: QoS fcport table index initialization improvement. * qla2xxx: Add QoS fcport table index to speed up search. * qla2xxx: Reduce stack on qos fcport priority routines. * qla2xxx: Add conditionals to avoid fcport QoS when it is not enabled. * qla2xxx: Fix mis-pointing buffer in qla24xx_load_risc_flash(). * qla2xxx: Provide Makefile CPP define for MoB testing. * qla2xxx: Fixup flash region code struct. * qla2xxx: Fixup msix/msi vector selection. * 8.08.00.00.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Add dump buffer print when nvram checksum fails. * qla2xxx: Refactor character signature compares into memcmp's. * qla2xxx: Replace 0x%x with %#x in all format strings. * qla2xxx: Normalize all flash reads to always use the dump ram mbc. * qla2xxx: Flash image validation cleanups. * qla2xxx: Add error test after dma_map_single. * qla2xxx: Add support for ISP28XX. * qla2xxx: Add devid's and conditionals for 28xx. * qla2xxx: Minor cleanup regarding device type. * qla2xxx: Improve, correct, simplify fwdt endianess handling. * qla2xxx: Use endian macros to assign dynamic fields in fwdump buffer. * qla2xxx: Use endian macros to assign static fields in fwdump header. * qla2xxx: Add endianizers to 27xx firmware image validator. * qla2xxx: Add new fwdt entry types. * qla2xxx: Leave fwdt endianess alone. * qla2xxx: Isolate test for valid firmware image. * qla2xxx: Add support for multiple fwdump templates/segments. * qla2xxx: Fix routine qla27xx_dump_mpi_ram(). * qla2xxx: Fix routine qla27xx_dump_ram(). * qla2xxx: Remove fwdt default template. * 8.07.00.60.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Sort qos_fcport_table->table for quicker searching. * qla2xxx: QoS fcport rename table->entry. * Revert "qla2xxx: Simplify fabric discovery part 2" * 8.07.00.59.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Read E2E QoS fcport priority bitmasks from flash. * qla2xxx: Add correction to E2E QoS bsg interface. * qla2xxx: Simplify PPC architecture detection. * 8.07.00.58.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Add debug logs to bsg qos interface. * qla2xxx: Add pointer to reference bsg request. * qla2xxx: Modify bsg get_qos_enabled to be per hba port. * qla2xxx: Add bsg interface for qos lun level bitmask. * qla2xxx: Abstract qos lun level mask for iocb cs_ctl field. * qla2xxx: Add fabric priority qos lun iocb mechanism. * qla2xxx: Implement CT command GFO (Get Fabric Object). * qla2xxx: Add correction ql2xfabric_priority parameter description. * qla2xxx: Add extra debug print to bsg interface entry. * qla2xxx: Fix incorrect assignment instances of bsg_job->reply_len. * qla2xxx: Remove RDP response size cropping for logged out port. * qla2xxx: Fix supported speed ranges in FDMI/RDP. * qla2xxx: Simplify/cleanup max supported speed usage. * qla2xxx: Use gcc define to detect PPC architecture. * qla2xxx: Fix stale memory access for IRQ name * qla2xxx: Login state machine stuck at GPDB. * qla2xxx: Fix null pointer access on iocb timeout * qla2xxx: Fix gpnid crash. * qla2xxx: Serialize gpnid. * qla2xxx: Retry switch command on timed out. * qla2xxx: Simplify fabric discovery part 2 * qla2xxx: Fix relogin for Nport Handle in use. * qla2xxx: Relogin is being triggered too fast. * 8.07.00.57.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71, XS72: * qla2xxx: Cleanup sparse warnings. * qla2xxx: Cleanup dpc handler routine. * qla2xxx: Minor cleanups regarding SFP validation. * qla2xxx: Replace all instances of snprintf() with scnprintf(). * qla2xxx: Clean up usage of list_for_each_entry_safe(). * qla2xxx: Use typeof() as 2nd argument to container_of(). * qla2xxx: Simplify assignment of req_q_out index/pointer. * qla2xxx: Cleanup/simplify/uniformitize GS routines. * qla2xxx: Export ha->port_no to sysfs. * qla2xxx: Fix continuation indents in fwdt. * qla2xxx: Cleanup __iomem attribute in fwdt. * qla2xxx: Minor improvements and corrections to fwdt code. * qla2xxx: Flash sanity test cleanups and corrections. * qla2xxx: Simplify read/write flash dword routines. * qla2xxx: Simplify ql_dump_buffer() interface usage. * extras: Simplify log.sh * qla2xxx: Add short name for SFP range autodetect. * qla2xxx: Fix integer overflow in bsg code. * qla2xxx: Fix an integer overflow in sysfs code * qla2xxx: Export firmware attributes word to sysfs. * qla2xxx: Make bsg request crash-proof. * qla2xxx: Normalize duplicate timeout field contexts. * qla2xxx: Fix duplicate timeout fields used in wrong contexts. * qla2xxx: Fix vha/ha contexts accidentally swapped. * qla2xxx: Simplify execution of fabric commands. * 8.07.00.56.xx.y-k RHEL7, RHEL6, SLES12, SLES11: * qla2xxx: Increment version to sync drivers. XS65, XS70, XS71: * qla2xxx: Sync up RDP response handling. * extras: Correction to build_rpm.sh. * 8.07.00.55.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70, XS71: * qla2xxx: Correct description of module parameter based on usage. * qla2xxx: Add sysfs node for D-Port Diagnostics AEN data. * qla2xxx: Add D-Port Diagnostic reason explanation logs. * 8.07.00.54.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70: * extras: Add script to modify logging value * qla2xxx: move session delete to driver work queue * qla2xxx: recheck session state after rscn * qla2xxx: Add workqueue to delete fcport from bsg sp->free(). * qla2xxx: Skip allocating fcport if ct allocation fails. * qla2xxx: Fix reported supported link speeds. * qla2xxx: Add context to FEC state logs. * 8.07.00.53.xx.y-k RHEL7, RHEL6, SLES12, SLES11, XS65, XS70: * extras: Fix build.sh remove of driver/module. * qla2xxx: Add ability to autodetect SFP type. * qla2xxx: Simplify qla2x00_get_host_fabric_name(). * qla2xxx: Replace calls to __constant endian macros. * qla2xxx: Fix indentation whitespacing. * qla2xxx: Remove space at end of debug print. * qla2xxx: Correction to spelling of "identifier". * qla2xxx: Refactor ct req/rsp struct to mirror FC-GS specification. * qla2xxx: Implicitly inline struct ct_sns_gid_pt_data. * qla2xxx: Minor simplify/cleanup of configure fabric/loop routines. * qla2xxx: Simplify min_link_speed and max_speed_sup sysfs interfaces. * qla2xxx: Remove potential macro parameter side-effect in ql_dump_regs(). * qla2xxx: Add log message to indicate FEC state. * qla2xxx: Make fwdt function call array static. * qla2xxx: fwdt skip entry for zero queue count for t263/t274. * qla2xxx: Reduce debug logs on 27xx fwdump. * qla2xxx: Print fwdump flags at end of fwdump. * qla2xxx: Convert fwdump length difference to size_t. * qla2xxx: Add endianizer macro calls to fc host stats. * qla2xxx: Add correction to fc host stats. * 8.07.00.52.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Add support for Quail firmware. * 8.07.00.51.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Add LR distance support from nvram bit. * qla2xxx: Add support for fabric priority per target. * qla2xxx: Add timeout ability to wait_for_sess_deletion(). * qla2xxx: Fix ql_dump_buffer (avoid emitting on multiple lines). * qla2xxx: Move logging default mask to execute once only. * qla2xxx: Print correct mailbox registers in failed summary. * qla2xxx: Allow SNS fabric login to be retried. * qla2xxx: Correction to vha->vref_count timeout. * qla2xxx: Process AEN 0x8200 for CNA cards only. * qla2xxx: Test elreq.options for CNA only. * qla2xxx: Use sp->free instead of hard coded call. * qla2xxx: Prevent sp->free null pointer dereference. * qla2xxx: Free sp after marking not busy. * qla2xxx: Increase the login retry count to 30. * qla2xxx: Properly calculate fwdump buffer size. * 8.07.00.50.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: fix path recovery. * 8.07.00.49.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Prevent null pointer dereference of ctx. * qla2xxx: Allow fwdump template T262 to specify same start/end. * qla2xxx: Reduce excessive debug print during 27xx fwdump. * qla2xxx: Add test to avoid processing non-RDP ELS requests. * qla2xxx: Avoid crashing on null cred pointer in exit_creds(). * extras: Consolidate help text into here-is redirection. * extras: Fix build.sh (cleanup and optimize). * qla2xxx: Avoid repeated fwdumps on AEN8017. * qla2xxx: Fix name server relogin. * qla2xxx: Use wait queue for vha->vref_count timeout. * qla2xxx: Fix mbx pointer error in classic fwdump. * qla2xxx: Replace instances of sp->fcport->vha with sp->vha. * 8.07.00.48.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Add support for minimum link speed. * 8.07.00.47.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Simplify sp->done() and sp->free() interfaces. * qla2xxx: Replace sp->fcport->vha context with simpler sp->vha. * qla2xxx: Use sp->vha context in function qla2x00_rel_sp(). * qla2xxx: Use sp->vha context in calls to sp->free(). * qla2xxx: Use sp->vha context in calls to sp->done(). * qla2xxx: Add vha field of appropriate type to struct srb. * 8.07.00.46.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Simplify printk format for portid's. * qla2xxx: Minor corrections to indent/whitespace. * qla2xxx: Minor corrections and missing additions. * qla2xxx: Allow port resync after isp reset. * 8.07.00.45.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Add check for different type of RSCN. * qla2xxx: Remove temporary fix PRE_UNLOADING bit. * qla2xxx: Schedule board_disable only once. * qla2xxx: Fix improper fcport_count accounting. * qla2xxx: Fix slow mem alloc behind lock. * qla2xxx: Fix deadlock. * qla2xxx: Tweak loop up. * qla2xxx: Relogin retweak. * qla2xxx: Fix sess deletion deadlock. * qla2xxx: Add wait for session remove on unload. * qla2xxx: Move login/logout decision making out of Full Fabric Scan. * qla2xxx: Add discovery event handling. * qla2xxx: Add async session creation. * qla2xxx: Add async sess update. * qla2xxx: Add async Get Port Database MB. * qla2xxx: Add async Get Name List MB. * qla2xxx: Add async GPNID. * qla2xxx: Add async GPSC. * qla2xxx: Add async GID_PN. * qla2xxx: Add support routines to search for fcport. * qla2xxx: Consolidate argument list for CTPassthru. * qla2xxx: Commonize alloc & free of fcport struct. * qla2xxx: Fix pass wrong argument in sp done. * 8.07.00.43.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Provide separate RDP enable (ql2xrdpenable). * extras: Fix hash-bang (#!) line to specify /bin/bash in build.sh. * 8.07.00.42.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Remove all DIX-0 references. * 8.07.00.41.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Disable setting module parameter ql2xenabledif. * qla2xxx: Correct supported FC speed for sysfs. * qla2xxx: Correct supported FC speed for FDMI/RDP. * 8.07.00.40.xx.y-k RHEL7, RHEL6, SLES12, SLES12.2, SLES11.3, XS65, XS70: * qla2xxx: Correct RDP Optical Product Descriptor Revision field. * qla2xxx: Remove macro parameter side effect in host_to_fcp_swap(). * 8.07.00.39.xx.y-k RHEL7, RHEL6, SLES12, SLES11.3, XS65, XS70: * qla2xxx: Fix duplicate message id. * qla2xxx: Disable adapter and skip error recovery when register disconnect. * qla2xxx: Separate ISP type bits out from device type. * qla2xxx: Correction to function qla26xx_dport_diagnostics(). * 8.07.00.38.xx.y-k RHEL7, RHEL6, SLES12, SLES11.3, XS65, XS70: * qla2xxx: Add support to handle Loop Init error Asynchronus event. * extras: add option to log.sh to show available debug/log categories. * qla2xxx: Let DPORT be enabled purely by nvram. * qla2xxx: Add bsg interface to support statistics counter reset. * qla2xxx: Add bsg interface to support D_Port Diagnostics. * 8.07.00.37.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * qla2xxx: Check for device state before unloading the driver. * qla2xxx: Bump vendor fdmi version. * qla2xxx: Properly reset firmware statistics. * qla2xxx: Properly initialize IO statistics. * qla2xxx: Reduce RDP payload size if requesting port not logged in. * qla2xxx: Reject RDP request if requesting port is not logged in. * qla2xxx: Unswap high/low RDP optical descriptor alarms/warnings. * qla2xxx: Add method for obtaining RDP buffer credit descriptor. * qla2xxx: Make corrections/cleanups/improvements to RDP routine. * qla2xxx: Include ISP27xx in RDP/purex driver intercept. * qla2xxx: Make debug buffer log easier to view. * qla2xxx: Add module parameter alternate/short names. * 8.07.00.36.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * qla2xxx: Set FLOGI retry in additional firmware options for P2P (N2N) mode. * 8.07.00.35.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * qla2xxx: Shutdown board on thermal shutdown aen. * qla2xxx: Correct RDP optical element array index. * qla2xxx: Log only failure case message for abort command. * qla2xxx: Add ram area DDR for fwdump template entry T262. * qla2xxx: Correction to RDP extensions transgression flags. * qla2xxx: Remove sysfs node fw_dump_template. * qla2xxx: Argument to le32_to_cpus() should be a pointer. * qla2xxx: Fix mbx_reg pointer iterator in 25xx fwdump routine. * extras: Inline log.sed into log.sh * 8.07.00.34.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * qla2xxx: Add support to disable laser for ISP27XX. * qla2xxx: Add RDP extensions. * qla2xxx: Set relogin flag when we fail to queue login requests. * qla2xxx: Fix default value descriptions for module parameters. * qla2xxx: Enable T10-DIF for ISP27XX. * qla2xxx: Use valid BBCR offset and datatype. * Revert "qla2xxx: Set echo test mailbox command option bit15 correctly." * 8.07.00.33.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * extras: Improve qlssen.sh usage. * qla2xxx: Provide mbx info in BBCR data after mbx failure * qla2xxx: Set echo test mailbox command option bit15 correctly. * qla2xxx: Correct FDMI vendor port state value. * 8.07.00.32.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * Revert "qla2xxx: Set priority for mailbox commands." * Revert "qla2xxx: Flush mailbox commands after timeout." * 8.07.00.31.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * qla2xxx: Avoid side effects when using endianizer macros. * qla2xxx: Fix warnings reported by static checker. * qla2xxx: Fix printks in ql_log message. * qla2xxx: Fix printk in qla25xx_setup_mode. * qla2xxx: Fix busy wait regression. * qla2xxx: Fix race in handling rport deletion during recovery causes panic. * qla2xxx: Set priority for mailbox commands. * qla2xxx: Flush mailbox commands after timeout. * extras: Add script to enable/disable vendor fdmi (and rebuild initrd image). * 8.07.00.30.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * qla2xxx: Add support for Private link statistics counters. * qla2xxx: Add support for buffer to buffer credit value for ISP27XX. * qla2xxx: Add support for online flash update for ISP27XX. * 8.07.00.29.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * extras: Script for extracting all logs/debugs from driver source * qla2xxx: Defer marking device lost when receiving an RSCN. * qla2xxx: Convert stray printk's in qla_nx.c to ql_log's. * qla2xxx: Allow fw to hold status before sending ABTS response. * qla2xxx: Seed init-cb login timeout from nvram exclusively. * qla2xxx: Remove unneeded link offline message. * qla2xxx: Fix couple of small typos in qla2xxx module code. * qla2xxx: Qualify ELS RDP mapping for ISP25xx and ISP26xx only. * qla2xxx: Restructure RDP routine to handle failure cases. * qla2xxx: Reduce multiple FDMI routines into a single routine. * qla2xxx: Simplify debug prints of wwnn, wwpn, and port id. RHEL7, SLES12: * qla2xxx: Avoid asynchronous abort requests. * 8.07.00.28.xx.y-k RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS65, XS6: * qla2xxx: Fix endianess of fdmi smartsan security support field. RHEL7: * qla2xxx: Reduce target mode performance hit in ISR. * 8.07.00.27.xx.y-k RHEL7: * qla2xxx: Avoid crossing initiator/target modes during AEN handling. * 8.07.00.26.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * qla2xxx: Set smartsan security support to 1. * qla2xxx: Add support for ISP2271. * qla2xxx: Fix missing device login retries. * qla2xxx: do not clear slot in outstanding cmd array. * 8.07.00.25.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * qla2xxx: Remove decrement of sp reference count in abort handler. RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * extras: Fix whitespace in .sh files. * 8.07.00.24.xx.y-k0 RHEL5 * Update 24xx/25xx firmware to version 8.01.00. * 8.07.00.24.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * qla2xxx: Do not crash system for sp ref count zero. * qla2xxx: Do not reset adapter if SRB handle is in range. * qla2xxx: Don't reset ISP when error entry with out of range handle. * qla2xxx: Add support for MPI and PEP FW version for ISP 27xx. * 8.07.00.23.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * qla2xxx: Fix RPD response missing fabric name RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * qla2xxx: fix porting changes for SmartSAN RHEL5: * qla2xxx: Fix Link Service Request payload word 0. * qla2xxx: Cleanup and Silence unnecessary PUREX/RDP printouts. * 8.07.00.22.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * qla2xxx: Allow RPRT to work with all switches (mgmt srvr loopid). * qla2xxx: Use physical port for sending RPRT command. * qla2xxx: Use correct macro for SFP flags. * qla2xxx: Add adapter checks for FAWWN functionality. * qla2xxx: Update default Hostname. RHEL5: * qla2xxx: Corrections to FDMI registering routines. * qla2xxx: Corrections to FDMI processing routines. * qla2xxx: Corrections ro PUREX/RDP proessing. * 8.07.00.21.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * qla2xxx: additional fdmi_register() attempt. * qla2xxx: Fix missing SFP flags from RDP Payload. * qla2xxx: driver fails to detect 4G adapters. * qla2xxx: Pause risc before manipulating risc semaphore. * qla2xxx: Use ssdid to gate semaphore manipulation. * qla2xxx: Handle AEN8014 incoming port logout. * qla2xxx: Add serdes register read/write sysfs support for ISP25xx. * 8.07.00.20.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS6.5, XS6.x: * qla2xxx: Trigger FDMI registration for RPRT. * qla2xxx: Remove SmartSAN attributes from the RDP payload. * qla2xxx: Allow FDMI Hostname registration during boot. * qla2xxx: Updated Active FC4 port type. * 8.07.00.19.xx.y-k RHEL7.x, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS 6.5, XS 6.x: * qla2xxx: FDMI RDP command support. * qla2xxx: Support for FDMI Smart SAN Mamangement commands UEK2: * qla2xxx: Fix wrongly report "PCI EEH busy" when get_thermal_temp. * 8.07.00.18.xx.y-k RHEL7.x, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS 6.5, XS 6.x: * qla2xxx: Fix virtual port configuration, when switch port is disabled/enabled. * qla2xxx: Prevent multiple firmware dump collection for ISP27XX. * qla2xxx: Add serdes read/write support for ISP27XX * qla2xxx: Don't reset ISP when we receive an error entry with an out of range handle. * qla2xxx: Do not crash system for sp ref count zero RHEL7.x, RHEL6, SLES11, SLES12, UEK, UEK2, XS 6.5, XS 6.x: * qla2xxx: Restore physical port WWPN only, when port down detected for FA-WWPN port. * qla2xxx: Disable Interrupt handshake for ISP27XX. * qla2xxx: Add debugging info for MBX timeout. * qla2xxx: Do not reset adapter if SRB handle is in range. RHEL7.x, SLES12, XS 6.5: * qla2xxx: Add support for Legacy and MSI interrupt modes. RHEL7.x: * qla2xxx: Fix compiler issue for FC_PORTSPEED_32GBIT on RHEL 7.1 * 8.07.00.17.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS 6.5, XS 6.x: * Add udev notification to save fw dump for ISP27XX. * Add message for sucessful FW dump collected for ISP27XX. * Add fix for beacon for ISP27XX. * Increase the wait time for firmware to be ready for P3P. RHEL7, RHEL6, SLES11, SLES12, UEK, UEK2, XS 6.5, XS 6.x: * Disable FCE and FET tracing for ISP27XXX. * Add support to load firmware from file for ISP 26XX/27XX. RHEL7, SLES12, XS 6.5: * Fix crash due to wrong casting of reg for ISP27XX. * 8.07.00.16.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS 6.5, XS 6.x: * Mark port lost when we receive an RSCN for it. * Disable PCI device in shutdown handler. * Fail adapter initialization on load ram failure. * Move warning message to debug level. * Restore WWPN from flash when cable pulled for FA-WWPN port. * 8.07.00.15.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES12, UEK, UEK2, XS: * Restore WWPN in case of Loop Dead. * Honor FCP_RSP retry delay timer field. * Add missing ISP27xx checks to optrom code. * Force use of mailbox interface for flash access commands for ISP27xx. * Fix mismatch is checks to free sysfs nodes. * Disable laser for ISP2031 while unloading driver. * Enable DPORT using NVRAM parameters. RHEL5: * Disable FDMI by default. * Fix FW dump issue for ISP82XX. * Add 25xx firmware version 7.05.00. * 8.07.00.14.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, UEK, UEK2, XS: * Add fix in driver unload for pending activity. * Allow user to change ql2xfdmienable value. * Declaration error cause stack corruption. RHEL7, RHEL6, SLES11, UEK, UEK2, XS: * Fix duplicate log message ID. * Fix driver version string message. RHEL7, RHEL6, SLES11, UEK, XS: * Unload of qla2xxx driver crashes the machine. RHEL5: * Enable FDMI by default. * Add 24xx/25xx firmware version 7.04.00. * 8.07.00.13.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, UEK, UEK2, XS: * Remove restriction on starting remote device discovery on port update. * Allow nvram bit to enable FA-WWN. * Allow nvram bit to enable D-PORT. RHEL7, RHEL6, SLES11, UEK, UEK2, XS: * Move mailbox failure messages to a default debug level. * 8.07.00.12.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, UEK, UEK2, XS: * Correction to FA-WWN for un-acquiring portname. * Add scatter/gather table size module parameter. RHEL7, RHEL6, SLES11, UEK, UEK2, XS: * Add ql2xasynclogin module parameter. RHEL5: * For netlink response use respective sender's unique pid. * 8.07.00.11.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, UEK, UEK2, XS: * Fix incorrect debug printk. * Add D-Port functionality. * Add FA-WWN functionality. * Add FDMI-2 functionality. * ISPFx00 unexpected resets during adapter boot sequence. * Incorrect linked list semantic in qlafx00_get_fcport(). * Add unknown parameter error handling to build.sh. * 8.07.00.10.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, UEK, UEK2, XS: * Fix potential return count bug in qla2xxx_get_vpd_field(). * ISPFX00 avoid writing semaphore register in request_irqs(). * ISP27xx fwdump template error print simplification. RHEL7, RHEL6, SLES11, UEK, UEK2, XS: * ISP25xx multiqueue shadow register crash fix. * Correction of debug level in mailbox command print 0x1111. * 8.07.00.09.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES10, UEK, UEK2, XS: * Enable fast flash access for ISP83xx. * Do logins from chip reset in DPC thread instead of error handler thread. * Remove wait for online from host reset handler. RHEL7, RHEL6, RHEL5, SLES11, UEK, UEK2, XS: * ISP27xx fwdump add tests for incomplete template. * ISP27xx fwdump optimize template entry table lookup. * ISP27xx fwdump add template entry T275 (insert buffer). * ISP27xx fwdump template remove high frequency debug logs. * ISP27xx fwdump template fix insertbuf() routine. RHEL7, RHEL6, SLES11, UEK, UEK2, XS: * Add endianizer to T10 PI max_payload_size modifier. RHEL5, SLES10: * Allow ELS commands with variable size command/data. RHEL5: * Add 24xx/25xx firmware 7.03.00. * 8.07.00.08.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES10, UEK, UEK2, XS: * Add MBC option for fast SFP data access. * Remove ISP8044 from pci table. * Revert "Change default capture to firmware defined capture mask". RHEL7, RHEL6, SLES11, UEK, UEK2, XS: * Remove mapped vp index iterator macro dead code. RHEL5: * Add shutdown callback handler. * 8.07.00.07.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES10, UEK, UEK2, XS: * Check the QLA8044_CRB_DRV_ACTIVE_INDEX register when we are not the owner of the reset. * Reduce the time we wait for a command to complete during SCSI error handling. * Delay driver unload if there is any pending activity going on. * Don't check for firmware hung during the reset context for ISP82xx. * Fix beacon blink logic for ISP26xx/83xx. * Add mention of RHEL7 and SLES11.3 in README. RHEL7, RHEL6, RHEL5, SLES11, UEK, UEK2, XS: * ISP27xx firmware dump template spec updates (including T274). * ISP27xx queue index shadow registers. * Fix ISPFx00 not displaying the correct FW version after FW update through sysfs Interface. RHEL7, RHEL6, SLES11, UEK, UEK2, XS: * Clear loop_id for ports that are marked lost during fabric scanning. * Fixup looking for a space in the outstanding_cmds array in qla2x00_alloc_iocbs(). * 8.07.00.06.xx.y-k RHEL7, RHEL6, SLES11, SLES10, UEK, UEK2, XS: * Avoid escalating the SCSI error handler if the command is not found in firmware. RHEL7, RHEL6, RHEL5, SLES11, SLES10, UEK, UEK2, XS: * Change default capture to firmware defined capture mask. RHEL7, RHEL6, RHEL5, SLES11, UEK, UEK2, XS: * Adjust adapter reset routine to the changes in firmware specification for ISPFx00. * 8.07.00.05.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, SLES10, UEK, XS: * Add #if around printk_ratelimit to fix build issue on RHEL 6. * Add 'sparse_endian' command line option to build.sh * Fix build errors related to invalid print fields on some architectures. * Poll during initialization for ISP25xx and ISP83xx. * Add target mode definitions [SLES 11 SP3 specific]. * ISP8044 ipmdio bus timeout improvement. * Remove configure VFs mailbox command call. * Use proper log message for flash lock failed error for ISP82XX. * IOCB data should be copied to I/O mem using memcpy_toio. * 8.07.00.04.xx.y-k RHEL7, RHEL6, RHEL5, SLES11, UEK, Citrix: * Add sparse command line option. * Add 8044 serdes bsg interface. * Correction to 27xx template entry types 256 and 258. * Track the process when the ROM_LOCK failure happens. * Introduce fw_dump_flag to track fw dump progress. * Remove unnecessary code from qlafx00_intr_handler. * Enable fw_dump_size for 8044. * Update entry type 270 to match spec update for 27xx. * Change copyright year to 2014 in all the source files. * Remove unnecessary delays from fw dump code path. * Use jiffies instead of time. * Decrease pci access for response queue processing for ISPFX00. * Use proper log message for flash lock failed error. * Include file for msleep declaration in qla_nx2.c. * Correct the port no assignment for ISP82XX. RHEL5: * Add 24xx/25xx/81xx/83xx FC and FCoE Firmware 7.02.00. * IOCB data should be copied to I/O memory using memcpy_toio(). * Use the physical port for all loopback operations. * 8.07.00.03.xx.y-k RHEL6, SLES11, RHEL5, UEK, Citrix: * Wait for reset completion without lock for ISPFX00. * Add pci device id 0x2271. * Add pci device id 0x2071. * Fix Task Management command asynchronous handling * Add IOCB Abort command asynchronous handling * Do not schedule reset when one is already active when receiving an invalid status handle. * Add and use 32Gbps FC-GS definitions. * Correct operations for ISP27xx template types 270 and 271. * Fix sparse warnings in qla_mr.c * Allow 83XX and 27XX both to write req_q_out register. * Correct 83xx/27xx mislogic in setting out_mb in qla25xx_init_req_que(). * Check for peg alive counter and clear any outstanding mailbox command. * Log when device state is moved to failed state. * Issue abort command for outstanding commands during cleanup when only firmware is alive. * Support of new Helga minidump opcodes QLA8044_RDDFE(38), QLA8044_RDMDIO(39),QLA8044_POLLWR(40). * Allow the next firmware dump if the previous dump capture fails for ISP8044. * Add build.sh commandline option help/description to README file. * 8.07.00.02.xx.y-k RHEL6, SLES11, RHEL5, UEK, Citrix: * Allow ISP83xx and ISP27xx to use read/write remote register. * 8.07.00.01.xx.y-k RHEL6, SLES11, RHEL5, UEK, UEK2/R3, Citrix: * Remove pci device id ISP2071. * 8.07.00.00.xx.y-k RHEL6, SLES11, RHEL5, UEK, Citrix: * Add support for ISP2701. * Remove Marker type IOCB logic for ISPFX00. * Add changes in the IOCB structures to adjust driver source codes to ISPFX00 firmware spec * Add BE support for ISPFX00. * Avoid poisoining in the response queue for ISPFX00. * Simplyfy the ISPFX00 interrupt handler code for ISPFX00. * Optimize the response queue processing for ISPFX00. RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix: * Remove ISP_ABORT_NEEDED and ISP_ABORT_RETRY checks from watchdog function for Helga. * Read capture firmware dump on mailbox timeout for ISP8044 and ISP82XX. UEK2/R3: * Clear drv active before removing the host. * Wait for reset completion without lock for ISPFX00. * 8.06.00.13.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Add mutex around optrom calls to serialize accesses. * Add handling for boot indication progress AENs * Replace constant value for IOCTL IOCB abort execution status with a macro. * Enable the Flash Access Control (FAC) mailbox command. * Use proper message for Non owner reset ACK Timeout. * Remove init control block related dead code for ISPFX00. * Select correct request queue for error type IOCB for ISPFX00. * The file README.qla2xxx does not mention SLES11.3 (or later). * Fix warning reported by smatch. * Properly handle 32 bit mailbox register for ISPFX00. * Set host can_queue value based on available resources. * 8.06.00.12.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Assign the correct pointer to the sp->ctx in abort context for ISPFx00 (BZ8627). * Obtain adapter model description from vpd (SLES10 only) (ER105124). * Use scnprintf() instead of snprintf() in the sysfs handlers. * Only complete dcbx_comp and lb_portup_comp for virtual port index 0. * Reset nic_core_reset_owner on moving from COLD to READY for ISP8044 (ER111788). * Revert "qla2xxx: Remove entry in outstanding_cmds array if we fail to abort a request." * QLAFX00 Replace a constant with a macro definition for host->canqueue assigmnment. * 8.06.00.11.xx.y-k (RHEL5 only) * Iterate the correct list for remote port removal. * Honor FCPORT_UPDATE_NEEDED dpc flag for all ISPs. * Don't set NPIV_CONFIG_NEEDED and RELOGIN_NEEDED flag for ISPFX00. * 8.06.00.10.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix): * Remove entry in outstanding_cmds array if we fail to abort a request. * Clear RISC INT reg only for an event and not always while polling. * Fix undefined behavior in call to snprintf(). RHEL6, SLES11, UEK, Citrix: * Add BSG interface for read/write serdes register. * Fix request queue null dereference. * Disable adapter when we encounter a PCI disconnect.. * Refactor shutdown code so some functionality can be reused. * QLAFX00 Fix issue with not displaying node name after system reboot. * Add changes to obtain ISPFX00 adapters product information. * Add IOCTL command abort logic for ISPFX00. RHEL5, SLES10: * Add netlink interface for read/write serdes register. * Fix udev fwdump rules. RHEL5: * Update 8G and 4G firmware to version 7.01.00. README: * Updated for builing kernel with out-of-box driver for Boot-from-SAN. * Updated for building ramdisk with rpm driver for Citrix Boot-from-SAN. * 8.06.00.09.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Honor execute firmware failures. * Add BPM support for 25xx. * Disable INTx interrupt for ISP82XX. * Correctly set mailboxes for extended init control block. * Duplicate luns instantiated after doing ISP reset. * Don't consider the drivers knocked out of IDC participation for future reset recovery process. * Change message displaying fcport pointer to port id. * Fix the sparse C=2 warnings for ISP8044. * Revert "qla2xxx: Capture firmware dump on mailbox timeout for ISP8044 and ISP82XX." * Revert "qla2xxx: Ramp down queue depth for attached SCSI devices when driver resources are low." * Print proper QLAFX00 product name at probe. * Fix compile warnings in qlafx00_build_scsi_iocbs() on BE platforms. * Unloading driver crashes server due to not freeing sp pool (SLES10 only). * Update 8G and 4G firmware to 7.0.2. (RHEL5 only). * 8.06.00.08.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Fixups for ISP8044 beacon blink. * Select link initialization option bits from current operating mode. * Move queue depth ramp down message to i/o debug level. * Correctly reset Graceful Reset Bit in IDC Driver Control Register. * Add a new interface to update versions. * Correctly print out/in mailbox registers. * Add #if preprocessor statements to get driver compiled on UEK2 and R3. * 8.06.00.07.xx.y-k (RHEL5 only) * Set the timeout value to 45 for IOCTL commands for ISPFx00. * Dump IOCB on IOCTL command timeout for ISPFx00. * Allocate outstanding cmd array and request queue under single hardware lock. * 8.06.00.06.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Clear the reset owner on ready and failed state for ISP8044. * 8.06.00.05.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Clear the idc control graceful bit for ISP8044 after initialization. * Don't check for firmware hung during the reset context. * Add loopback IDC-TIME-EXTEND aen handling support. * Clear presence bit for ISP8044 on unload and error. * Move Previous version info message to debug level. * 8.06.00.04.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Properly set the tagging for commands. * Get the mpi version for ISP8044. * Capture firmware dump on mailbox timeout for ISP8044 and ISP82XX. * Implementation of flash write buffer mode for ISP8044. * Helga loopback support. * Add pex-dma support for faster minidump capture on ISP8044. * Collect minidump for ISP8044 using sysfs. * Perform context reset instead of chip reset for ISP8044 host reset. * Don't the set nic_core_reset_owner flag for ISP8044. * Set IDC graceful reset and don't capture minidump if it is set. * Honor return value from qla82xx_device_state_handler() in qla82xx_abort_isp(). * Silent noisy message during ISP8044 dump collection. * Correct debug print id's. * Add 8044 entry in udev rules. * Set default critical temperature when ISPFX00 firmware doesn't provide it. * QLAFX00 make over-temp AEN informational, add log for normal-temp AEN. * Correct Interrupt Register offset for ISPFX00 * Remove handling of Shutdown Requested AEN from qlafx00_process_aen(). * Send all AENs for ISPFx00 to above layers. * 8.06.00.03.xx.y-k (RHEL6, SLES11, RHEL5, UEK, Citrix) * Add changes in initialization for ISPFX00 cards with BIOS. * Add changes to support extended IOs for ISPFX00. * 8.06.00.02.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * ISP8044 abort isp. * Helga Flash Write. * Helga legacy pin based interrupt support. * Get all the optrom sysfs attributes for CNA. * Add ISP8044 to MIDTYPE macro. * Fix sparse warning reported for qla_nx2.c. * Helga Remove hardcoded return values by QLA_FUNCTION_FAILED. * Remove minidump and reset code if FCoE is not a owner. * Helga fcoe_nic_reset_owner updated. * Fix compilation issue on ia64. * Fix for serial_num not getting displayed via sysfs. * Add missing FCP statistics to sysfs interface. * 8.06.00.01.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Set VPD Size to 1K for ISP82XX, ISP8044, ISP8031 (ER107011). * Helga call flash recovery function from bootstrap code. * Clear the MBX_INTR_WAIT flag when the mailbox time-out happens. * Drop redundant log message when ROM lock failure happens during retries. * To update Helga minidump template capture. * Make log message that prints when a completion status requires a port down more readable. * Reconfigure thermal temperature. * Add setting of driver version string for vendor application. * Remove QL_DEBUG_LEVEL_17 defines from qla_nx.c. RHEL6, SLES11, UEK, Citrix: * Set the index in outstanding command array to NULL when cmd is aborted when the request timeout (ER107084). * 8.06.00.00.xx.y-k (RHEL6, SLES11, RHEL5, SLES10, UEK, Citrix) * Fix for locking issue between driver ISR and mailbox routines. * Do not take a second firmware dump when intentionally generating one. * Move qla2x00_free_device to the correct location. * Add support for ISP8044. * Update firmware link in Kconfig file. * Perform coverity analysis from build.sh RHEL6, SLES11: * Correct multiqueue offset calculations. * Add module parameter for interrupt mode. * Fix incorrect test after list_for_each_entry() exits. * Do not query FC statistics during chip reset. RHEL5, SLES10: * Use spinlock while accessing vport list. SLES10: * Correction of operator in udev rules. * 8.05.00.03.xx.y-k (RHEL6, SLES11), 8.04.00.15.xx.y-k (RHEL5, SLES10, UEK, Citrix) * Add clarifying printk to thermal access fail cases. RHEL5, SLES10: * Move list add of ha to non-error section of probe_one. * 8.05.00.02.xx.y-k (RHEL6, SLES11), 8.04.00.14.xx.y-k (RHEL5, SLES10, UEK, Citrix) * Revert "qla2xxx: Add setting of driver version string for vendor application." RHEL6, SLES11, UEK, Citrix: * Debug ID corrections. * Add iounmap(ha->cregbase) calls for ISPFX00 adapters for proper driver cleanup during load / unload. * Clear the outstanding command array for task management processing for ISPFx00. * Remove Request / Response transfer error AENs handling from qlafx00_async_event(). * Proper cleanup of BSG request when the request time-out on ISPFx00. * Fix issue with calling sp_done() twice for task management commands. * Fix bug in cont_entry handling for the cases when FW provides more data than mid layer can handle. * Correction to structure size while registering host information with firmware. RHEL5, SLES10: * Use vp_list field of scsi_qla_host while traversing virtual ports list. * 8.05.00.01.xx.y-k (RHEL6, SLES11.x), 8.04.00.13.xx.y-k (RHEL5, SLES10, UEK, Citrix) * Add setting of driver version string for vendor application. * Integrate generic card temperature with mezz card temperature. * Correction of comment in MBC opcode defines. * Wait for IDC complete event to finish loopback operation. * Don't process state change aen for reset owner. * Don't process RSCNs for a vport on the same physical adapter. * Correct list-iteration bug in Report-ID Acquisition codes. RHEL6, SLES11: * Addedd logic to monitor aenmbx0 register for fixed intervals on ISPFx00. * Remove unnecessary operations from qlafx00_soc_cpu_reset() and add resetting IRQ ack register per core. RHEL5, SLES10: * Return -EINVAL when setting up loopback operation. RHEL5: * Inclusion of 8G firmware version 5.09.00. * Inclusion of 4G firmware version 5.09.00. * 8.05.00.00.xx.y-k (RHEL6.x and SLES11.x) * Enhancements to support ISPFx00. * 8.04.00.12.xx.y-k * Update the copyright information. * Display the lock owner on lock acquire failure. * Move loopback mode reset after chip reset check. * Extra loopback error handling for ISP83xx. * Do link initialization on get loop id failure. * Do MPI reset only for 81xx. V2632 (RHEL 6.x, SLES 11.x, Citrix 6.0, UEK): * Revert "qla2xxx: Optimize existing port name server query matching." * Revert "qla2xxx: Avoid losing any fc ports when loop id's are exhausted." * Don't free pool that wasn't allocated. * Unload hangs after issuing BSG commands to vport. Citrix 6.0: * Create initrd as a part of installation and removal of the driver rpm. * RPM install should install driver under extra instead of driver directory. RHEL 5.x, SLES 10.x: * MBA_IDC_NOTIFY case should fallthru. * Add fw_dump_size sysfs attribute file. * Add test for validity of virtual host in netlink interface. SLES 10.x: * Add 8031/2031 cases to request firmware. * 8.04.00.11.xx.y-k * Move marking fcport online ahead of setting iiDMA speed. * Add 16Gb/s case to get port speed capability. * Get VPD information from common location for CNA. * Don't clear drv active on iospace config failure. * Display that driver is operating in legacy interrupt mode. * Add "16" speed to link speeds array in qla2x00_iidma_fcport() function * Correct race in loop_state assignment during reset handling. * Reject loopback request if one is already in progress. * Update the FTP site references in the driver sources. V2632 (RHEL 6.x, SLES 11.x Citrix 6.0 and UEK): * Obtain loopback iteration count from bsg request. * Parameterize the link speed string conversion function. * Update ql2xextended_error_logging parameter description with new options. * Fix typo in qla2xxx driver. * Free rsp_data even on error in qla2x00_process_loopback(). * Avoid null pointer dereference in shutdown routine. RHEL 5.x: * Remove fabric_logout() calls from qla2x00_dev_loss_tmo_callbk() function. SLES10.x: * Clear local references of rport on device loss timeout notification from FC transport. * 8.04.00.10.xx.y-k * Honor status value of 2 for report-id acquisition. * Ignore driver ack bit if corresponding presence bit is not set. * Add Gen3 PCIe speed 8GT/s to the log message. * Acquire risc semaphore before resetting ISP. V2632 (RHEL 6.x, SLES 11.x Citrix 6.0 and UEK): * Ramp down queue depth for attached SCSI devices when driver resources are low. * Determine the number of outstanding commands based on available resources. * Fix for kernel crash when external loopback diagnostic is run through BSG interface. * Fix coccinelle warnings in qla2x00_relogin. * Test and clear FCPORT_UPDATE_NEEDED atomically. * Use correct Request-Q-Out register during bidirectional request processing * Fix typo in qla83xx_fw_dump function. * Move noisy Start scsi failed messages to verbose logging level. * Fix for warnings reported by sparse. RHEL 5.x: * Inclusion of 4G/8G firmware version 5.08.00. * Log message when qla2xenablemsix module parameter is set to 2 (MSI mode) and adapter does not support MSI mode. * Revert "qla2xxx: Use GFF_ID to check FCP-SCSI FC4 type before logging into Nx_Ports" * Revert "qla2xxx: No fcport FC-4 type assignment in GA_NXT response." Citrix 6.x: * RPM build should hide the directory naming convention from user. * 8.04.00.09.xx.y-k * No fcport FC-4 type assignment in GA_NXT response. * Fix checkpatch error in qla2xxx_mctp_dump. * Change in setting UNLOADING flag and FC vports logout sequence while unloading qla2xxx driver. * Clear unsupported 'states' during Get-FW-State queries. V2632 (RHEL 6.x, SLES 11.x Citrix 6.0 and UEK): * Pass correct parameters while creating an initrd. * Remove spurious taking of ha->vport_slock spinlock. UEK: * Add macro for kernel extended version. RHEL 5.x: * Use GFF_ID to check FCP-SCSI FC4 type before logging into Nx_Ports. * Pass correct parameters while creating an initrd. * 8.04.00.08.xx.y-k (RHEL 6.x, SLES 11.x, UEK and Citrix) * Correct loop_id_map allocation-size and usage. * 8.04.00.07.xx.y-k * Prefix qla2xxx with the dump file name. * Delay for legacy interrupts not required for all boards for ISP83xx. * Use correct logger path in udev scripts. * Allow MSI interrupt registration for ISP82xx. * Don't toggle RISC interrupt bits after IRQ lines are attached. * Fix for legacy interrupts for ISP83xx. * Restrict nic core reset to one function for mctp. * Update to Implementation of the mctp. * Enable fw attributes for ISP24xx and above. * Get fcal position map should not be called for p2p topology. * Set Maximum Read Request Size to 4K. * Enclose adapter related calls in adapter check in failed state handler. * Fix for handling some error conditions in loopback. * Fix description of qla2xmaxqdepth parameter. * Set idc version if function is first one to come.- * Do not restrict the number of NPIV ports for ISP83xx. * Do PCI fundamental reset for 83xx. * Fail initialization if unable to load RISC code. * Ensure PLOGI is sent to Fabric Management-Server upon request. * Remove setting Scsi_host->this_id during adapter probe. * Use #defines instead of hardcoded values for intr status. V2632 (RHEL 6.x, SLES 11.x and UEK): * Remove dumping fw on timeout for bidirectional commands. * T10 DIF - ISP83xx changes. * Fix incorrect status reporting on DIF errors. * Change log messages to dbg and remove dumping fw on timeout for bidirectional. * Use the right field for container_of. SLES10.x: * Correct implementation of qla2x00_get_idma_speed. * Remove check for ISPs other than ISP81xx from qla81xx_set_port_config RHEL5.x: * Add stubs for edc and edc_status interface. * 8.04.00.06.xx.y-k * Don't call nic restart firmware if it is already active and running. * Wrong PCIe (2.5Gb/s x8) speed in the kernel message for ISP82xx. * Perform ROM mbx cmd access only after ISP soft-reset during f/w recovery. * Fix rval may be used uninitialized in this function warning. * Implement beacon support for ISP83xx CNA. * Fix for continuous rescan attempts in arbitrated loop topology. * Only enable link up on the correct interrupt event. * Update the driver license. * Don't register legacy interrupts for ISP82xx. * Add bit to identify Sensei card for thermal temp. * Implementation of MCTP. * IDC implementation for ISP83xx. * Add FW DUMP SIZE sysfs attribute. * Implementation of bidirectional. * Use bitmap to store loop_id's for fcports. * Display mailbox failure by default. * Remove redundant NULL check before release_firmware() call. * Add check in qla82xx_watchdog for failed hardware state. * Add I2C BSG interface. * Use dracut to rebuild the initramfs on RHEL 6 in build.sh. * Don't call failed handler for default case. * Add hilda fc fcoe entries in the udev rules file. * 8.04.00.05.xx.y-k * Display proper firmware version when new minidump template is gathered for ISP82xx. * Properly check for current state after the fabric-login request. * Proper completion to scsi-ml for scsi status task_set_full and busy. * Don't capture minidump for ISP82xx on flash update from application. * Avoid losing any fc ports when loop id's are exhausted. * Optimize existing port name server query matching. * Remove mirrored field vp_idx from struct fc_port. * Display proper supported speeds for 16G FC adapters. * Fix reset time out as qla2xxx not ack to reset request. * Stats should be different from physical and virtual ports. * Block flash access from application when device is initialized for ISP82xx. * Handle interrupt registration failures more gracefully. * Logic to detect overheat condition and fail ISP82xx. * Remove unneeded DPC wakeups from qla82xx_watchdog. * RHEL 5.x/SLES 10.x * Revert : IO failure during ISP82xx reset. * Revert : Avoid depending on SCSI host_lock in queuecommand function. * 8.04.00.04.55.6-k * 8.04.00.04.32.1-k * ISP83xx(16G FC) support for Xenserver 6.0 and Oracle UEK. * 8.04.00.04.xx.y-k * Remove resetting memory during device initialization for ISP82xx. * Proper detection of firmware abort error code for ISP82xx. * SLES10 SPx: Add udev script, udev rules file, kmdtool. * SLES10 SPx: Proper notification of device udev event for automatic gathering of firmware dump. * 8.04.00.03.xx.y-k * Correct link-reset regressions introduced during 83xx porting. * Avoid invalid request queue dereference for bad response packets. * Stop iteration after first failure in *_id functions. * Fix incorrect register access in qla2x00_start_iocbs(). * Fix to update proper command completion upon command retries. * Hard code the number of loop entries at 128. * Reference proper scsi_qla_host structure for processing non-scsi SRB commands. * Handle device mapping changes due to device logout. * Fix wrong decrement, null sp access. * Initialize the command done routine. * Avoid losing any fc ports when loop id's are exhausted. * Complete mailbox command timedout to avoid initialization failures during next reset cycle. * Add ha->max_fibre_devices to keep track of the maximum number of targets. * Cache swl during fabric discovery. * Remove EDC sysfs interface. * Perform firmware dump procedure on mailbox command timeout. * Change the log message when previous dump is available to retrieve for ISP82xx. * Remove check for null fcport from host reset handler. * Correct out of bounds read of ISP2200 mailbox registers. * Remove errant clearing of MBX_INTERRUPT flag during CT-IOCB processing. * Reduce mbx-command timeout for Login/Logout requests. * Clear options-flags while issuing stop-firmware mbx command. * Add an "is reset active" helper. * Prep zero-length BSG data-transfer requests. * Perform implicit logout during rport tear-down. * Handle failure cases during fabric_login * Increase speed of flash access in ISP82xx adapters to improve firmware load speed. * Add check for null fcport references in qla2xxx_queuecommand. * Handle change notifications based on switch scan results. * Use consistent DL mask for ELS/CT passthru requests. * Consolidation of SRB processing. 2. Known Issues None at this time. 3. Notices Information furnished in this document is believed to be accurate and reliable. However, CAVIUM INC. assumes no responsibility for its use, nor for any infringements of patents or other rights of third parties which may result from its use. CAVIUM INC. reserves the right to change product specifications at any time without notice. Applications described in this document for any of these products are only for illustrative purposes. CAVIUM INC. makes no representation nor warranty that such applications are suitable for the specified use without further testing or modification. CAVIUM INC. assumes no responsibility for any errors that may appear in this document. 4. Contacting Support For further assisance, contact Cavium Technical Support at: http://support.cavium.com Trademarks Accelera, Accelerating Cluster Performance, InfiniCon Systems, InfiniNIC, InfiniPath, InfiniView, QLA, QLogic, the QLogic logo, ReadyPath, SANdoctor, SANsurfer, and SilverStorm are registered trademarks of CAVIUM INC. All other brand and product names are trademarks or registered trademarks of their respective owners. (c) Copyright 2018. All rights reserved worldwide. Cavium and the Cavium logo are registered trademarks of CAVIUM INC. All other brand and product names are trademarks or registered trademarks of their respective owners.