summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] gfp_t: drivers/scsiAl Viro2005-10-283-4/+4
| | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] qlogic lockup fixAndrew Morton2005-10-251-1/+2
| | | | | | | | | | | | | | | If qla2x00_probe_one()'s call to qla2x00_iospace_config() fails, we call qla2x00_free_device() to clean up. But because ha->dpc_pid hasn't been set yet, qla2x00_free_device() tries to stop a kernel thread which hasn't started yet. It does wait_for_completion() against an uninitialised completion struct and the kernel hangs up. Fix it by initialising ha->dpc_pid a bit earlier. Cc: Andrew Vasquez <andrew.vasquez@qlogic.com> Cc: James Bottomley <James.Bottomley@steeleye.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [SCSI] qla2xxx: fix remote port timeout with qla2xxx driverAndrew Vasquez2005-09-251-0/+2
| | | | | | | | | | This patch fixes a hole in the rport unblock handling when processing fabric events via the ADISC/PLOGI device state machine. Original code would not properly 'unblock' the port upon the port reloging into the fabric. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [PATCH] qla2xxx: Use dword accessors for PCI_ROM_ADDRESSAdam Kropelin2005-09-171-9/+12
| | | | | | | | | | | | | | PCI_ROM_ADDRESS is a 32 bit register and as such should be accessed using pci_bus_{read,write}_config_dword(). A recent audit of drivers/ turned up several cases of byte- and word-sized accesses. The harmful ones were fixed by Linus directly. This patches up one of the remaining harmless-but-still-wrong cases caught in the dragnet. Signed-off-by: Adam Kropelin <akropel1@rochester.rr.com> Cc: Andrew Vasquez <andrew.vasquez@qlogic.com> Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 Linus Torvalds2005-09-122-12/+10
|\
| * [SCSI] qla2xxx: use wwn_to_u64() transport helperAndrew Vasquez2005-09-102-12/+10
| | | | | | | | | | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* | [PATCH] trivial iomem annotations in qla2xxx/qla_dbg.cviro@ZenIV.linux.org.uk2005-09-091-1/+1
|/ | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [SCSI] qla2xxx: Update version number to 8.01.00-k.Andrew Vasquez2005-09-041-2/+2
| | | | | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Stop firmware execution at unintialization time.Andrew Vasquez2005-09-044-6/+41
| | | | | | | | On ISP24xx parts, stop execution of firmware during ISP tear-down. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Replace schedule_timeout().Andrew Vasquez2005-09-041-14/+11
| | | | | | | | | | | | | From: Nishanth Aravamudan <nacc@us.ibm.com> Replace schedule_timeout() with msleep()/msleep_interruptible() as appropriate, to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Remove bad call to fc_remove_host() during probe failure.Andrew Vasquez2005-09-041-2/+0
| | | | | | | | | | fc_remove_host() should only be called after a scsi_host has been successfully added via scsi_add_host() -- any failures while qla2xxx probing would result in an incorrect call to fc_remove_host() during cleanup. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add host attributes.Andrew Vasquez2005-09-043-0/+136
| | | | | | | | | | | Export additional host information via the shost_attrs member in the scsi_host template. Attributes include: driver version, firmware version, ISP serial number, ISP type, ISP product ID, HBA model name, HBA model description, PCI interconnect information, and HBA port state. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add change_queue_depth/type() API support.Andrew Vasquez2005-09-041-0/+29
| | | | | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Remove redundant call to pci_unmap_sg().Andrew Vasquez2005-09-041-5/+1
| | | | | | | | | | In a corner-case failure where the request-q does not contain enough entries for a given request, pci_unmap_sg() would be called twice. Remove direct call and let the failure-path logic handle the unmapping. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Remove RISC pause/release barriers during flash manipulation.Andrew Vasquez2005-09-041-34/+0
| | | | | | | | | Remove unnecessary RISC pause/release barriers during ISP24xx flash manipulation. The ISP24xx can arbitrate flash access requests during RISC executions. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Correct LED scheme definition.Andrew Vasquez2005-09-042-3/+3
| | | | | | | | | Original implementation used an overloaded bit in the EFI parameters. The correct bit is BIT_4 of the special_options section of NVRAM. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Simplify redundant target/device reset logic.Andrew Vasquez2005-09-043-56/+1
| | | | | | | | | Remove redundant qla2x00_target_reset() function in favour of the equivalent qla2x00_device_reset(). Update callers of old function. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Correct domain/area exclusion logic.Andrew Vasquez2005-09-041-1/+8
| | | | | | | | | | | | | | | | | | | | | In an FL topology, limit port recognition to those devices not within the same area and domain of the ISP. The firmware will recogonize such devices during local-loop discovery. Some devices may respond to a PLOGI before they have completed their fabric login or they may not be a public device. In this case they will report: domain == 00 area == 00 alpa == <XX> which is valid. Exclude such devices from local loop discovery. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add FDMI support.Andrew Vasquez2005-09-048-5/+741
| | | | | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Export class-of-service (COS) information.Andrew Vasquez2005-09-044-0/+26
| | | | | | | | Export COS information for the fc_host and fc_remote_port objects added by the driver. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Use dma_get_required_mask() in determining the 'ideal' DMA mask.Andrew Vasquez2005-09-041-23/+10
| | | | | | | | | | | In order to efficiently utilise the ISP's IOCB request-queue, use the dma_get_required_mask() function to determine the use of command-type 2 or 3 IOCBs when queueing SCSI commands. This applies to ISP2[123]xx chips only, as the ISP24xx uses command-type 7 IOCBs which use 64bit DSDs. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [PATCH] More qla2xxx configuration fixesAndrew Vasquez2005-07-272-1/+14
| | | | | | | | | | This adds the appropriate FW_LOADER pre-requisite and a separate entry for ISP24xx support. Thanks to Adrian Bunk and Jesper Juhl for their efforts in fixing this quirk. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Fix up qla2xxx configuration bogosityLinus Torvalds2005-07-272-2/+0
| | | | | | | | | If we haven't configured the qla24xx driver, then the Makefile shouldn't do it for us. This also means that we can avoid the unnecessary selection of FC_ATTRS. Debugged by James Bottomley
* Fix compiler warning in qla_iocb.cLinus Torvalds2005-07-261-1/+1
| | | | Remove bogus initialization that was re-done (correctly) later.
* [PATCH] qla2xxx: Kconfig dependency fixAndrew Morton2005-07-261-0/+1
| | | | | | | | | | | | | | | *** Warning: "fc_remote_port_block" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! *** Warning: "scsi_is_fc_rport" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! *** Warning: "fc_remote_port_unblock" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! *** Warning: "fc_remote_port_rolechg" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! *** Warning: "fc_release_transport" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! *** Warning: "fc_remove_host" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! *** Warning: "fc_remote_port_add" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! *** Warning: "fc_attach_transport" [drivers/scsi/qla2xxx/qla2xxx.ko] undefined! Cc: James Bottomley <James.Bottomley@steeleye.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] qla: remove anonymous unionAndrew Morton2005-07-261-3/+1
| | | | | | | | | | | Older gcc's dont support anonymous unions, so this driver gets hundreds of error. Fortunately the fix is easy... Cc: James Bottomley <James.Bottomley@steeleye.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [SCSI] qla2xxx: Cleanup FC remote port registration.Andrew Vasquez2005-07-142-22/+11
| | | | | | | | | | | | | | | Cleanup FC remote port registration. Due to the inherent behaviour (an immediate scan) of adding a 'target'-role-capable rport via fc_remote_port_add(), split the registration into two steps -- addition as unknown-type role, then use fc_remote_port_rolchg() with appropriate role (based on PLOGI/PRLI bits). This allows for a more cleaner rport->dd_data management as can be seen with the simplified qla2xxx_slave_alloc() function. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Consolidate ISP24xx chip reset logic.Andrew Vasquez2005-07-142-47/+42
| | | | | | | | | | | | Consolidate ISP24xx chip reset logic. Consolidate near-duplicate RISC reset logic from qla24xx_reset_chip() and qla24xx_chip_diag(). Also, after initiating a soft-reset, insure the firmware has completed all NVRAM accesses before continuing. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add firmware version number to qla24xx_fw_version_str().Andrew Vasquez2005-07-141-1/+4
| | | | | | | | | Add firmware version number to qla24xx_fw_version_str(). Original code was accidently trimmed during port. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Update version number to 8.01.00b5-k.Andrew Vasquez2005-07-141-3/+3
| | | | | | | Update version number to 8.01.00b5-k. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Correct maximum supported lun and target-id definitions.Andrew Vasquez2005-07-142-3/+3
| | | | | | | | | | | Correct maximum supported lun and target-id definitions. The driver uses command-IOCBs which support a maximum lun value of 0xffff -- correct #define to reflect the change. Also, remove superfluous MAX_TARGET definition. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Update copyright banner.Andrew Vasquez2005-07-1421-21/+21
| | | | | | | Update copyright banner. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Firmware updates.Andrew Vasquez2005-07-145-27900/+28078
| | | | | | | | | | | Firmware updates. Resync with latest 21xx firmware -- 1.19.25. Resync with latest 22xx firmware -- 2.02.08. Resync with latest 23xx/63xx firmware -- 3.03.15. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Code scrubbing.Andrew Vasquez2005-07-1414-306/+199
| | | | | | | | | | | Code scrubbing. - Remove trailing whitespace from driver files. - Remove unused #defines and inlines. - Standardize on C comments (// -> /* */) Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: NVRAM id-list updates.Andrew Vasquez2005-07-141-5/+41
| | | | | | | | | NVRAM id-list updates. Resync with latest NVRAM subsystem ID list. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add OS initialization codes for ISP24xx recognition.Andrew Vasquez2005-07-144-95/+350
| | | | | | | Add OS initialization codes for ISP24xx recognition. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add ISP24xx initialization routines.Andrew Vasquez2005-07-143-135/+848
| | | | | | | Add ISP24xx initialization routines. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add ISP24xx ISR routines.Andrew Vasquez2005-07-142-164/+419
| | | | | | | | | | | | | Add ISP24xx ISR routines. Add appropriate glue-code for ISP24xx support -- this included generalizing some of the core handling routines (qla2x00_async_event() [pull-up retrieval of mailbox values] and qla2x00_status_entry()]. Fixup 2100/2300 ISRs to handle the new conventions. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add ISP24xx IOCB manipulation routines.Andrew Vasquez2005-07-143-16/+323
| | | | | | | | | | | | Add ISP24xx IOCB manipulation routines. Add appropriate glue-code for ISP24xx support while manipulting IOCB packets. Add an ISP24xx specific 'start_scsi' routine due to command-type-7 layout changes. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add ISP24xx flash-manipulation routines.Andrew Vasquez2005-07-144-79/+531
| | | | | | | | | | | Add ISP24xx flash-manipulation routines. Add read/write flash manipulation routines for the ISP24xx. Update sysfs NVRAM objects to use generalized accessor functions. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add MBX command routines for ISP24xx support.Andrew Vasquez2005-07-145-244/+809
| | | | | | | | | | | Add MBX command routines for ISP24xx support. Generalize several routines [qla2x00_load_ram_ext(), qla2x00_execute_fw(), qla2x00_verify_checksum()] to handle larger addressing space. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Generalize SNS generic-services routines.Andrew Vasquez2005-07-144-73/+121
| | | | | | | | | | Generalize SNS generic-services routines. Consolidate completion-status checking while adding support for the ISP24xx. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add ISP24xx diagnostic routines.Andrew Vasquez2005-07-143-1/+983
| | | | | | | | | | Add ISP24xx diagnostic routines. Add function and structure definitions for the ISP24xx diagnostic firmware dump routines. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add ISP24xx definitions.Andrew Vasquez2005-07-1411-152/+1318
| | | | | | | | | | | | Add ISP24xx definitions. Add requisite structure definitions and #define's for ISP24xx support. Also drop volatile modifiers from device_reg_* register layouts as the members are never really accessed, only their offsets within the layout are used during reads and writes. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Add pci ids for new ISP types.Andrew Vasquez2005-07-141-21/+0
| | | | | | | | | | Add pci ids for new ISP types. Move old definitions in local qla_def.h file to pci_ids.h as well. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: Factor-out ISP specific functions to method-based call tables.Andrew Vasquez2005-07-1410-199/+275
| | | | | | | | | | Factor-out ISP specific functions to method-based call tables. In anticipation of ISP24xx/ISP25xx support, factor-out ISP specific functions into a method-based call table. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* merge by hand (qla_os.c mismerge)James Bottomley2005-06-178-219/+12
|\
| * merge by hand (fix up qla_os.c merge error)James Bottomley2005-06-178-221/+13
| |\
| | * [SCSI] allow sleeping in ->eh_host_reset_handler()Jeff Garzik2005-06-171-4/+0
| | | | | | | | | | | | Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| | * [SCSI] allow sleeping in ->eh_bus_reset_handler()Jeff Garzik2005-06-171-4/+0
| | | | | | | | | | | | Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>