summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/ipr.h
Commit message (Collapse)AuthorAgeFilesLines
* [SCSI] ipr: change endian swap key to match hardware spec changeWayne Boyer2010-07-271-1/+1
| | | | | | | | The value used to change the endian representation on the new adapters has changed. This patch updates that value. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add support for new Obsidian-E embedded adapterWayne Boyer2010-07-271-4/+5
| | | | | | | | | | This patch allows the driver to recognize a new Obsidian-E based adapter that uses a new subsystem ID. This patch also fixes a few tab/space problems. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add MMIO write to perform BIST for 64 bit adaptersWayne Boyer2010-07-271-0/+4
| | | | | | | | | The 64 bit chip used in new adapters does not properly support the BIST register in PCI config space. This patch implements an alternative MMIO write reset method. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add writeq definition if neededWayne Boyer2010-07-271-0/+8
| | | | | | | | | | Compiling the driver will fail on 32 bit powerpc and other architectures where writeq is not defined. This patch adds a definition for writeq. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add endian swap enablement for 64 bit adaptersWayne Boyer2010-07-271-2/+7
| | | | | | | | | | | | | | | | | | | A change in the hardware design of the chip for the new adapters changes the default endianness of MMIO operations. This patch adds a register definition which when written to with a predefined value will change the endianness back to what the driver expects. This patch also fixes two problems found during testing. First, the first reserved field in the ipr_hostrcb64_fabirc_desc structure only reserved one byte. The correct amount to reserve is 2 bytes. Second, the reserved field of the ipr_hostrcb64_error structure only reserved 2 bytes. The correct amount to reserve is 16 bytes. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: fix resource path display and formattingWayne Boyer2010-07-211-2/+3
| | | | | | | | | | | | | | It was possible to overflow the buffer used to print out the formatted version of the resource path. The fix is to limit the number of bytes that get formatted. This patch also updates the ipr_show_resource_path function to display the resource address for devices that are attached to adapters that don't support resource paths. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: fix a register read to use the correct address for 64 bit adaptersWayne Boyer2010-05-241-1/+1
| | | | | | | | | | | | | | | | Fix ipr_reset_enable_ioa() to read the correct IOA to host interrupt register address for 64 bit adapters. We need to read the lower 32 bits, not the upper 32 bits. Also change the write of the 64 bit mask value to a single writeq instead of two writel calls. Finally, use the correct u8 type for the type field in the ipr_resource_entry structure. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: include the resource path in the IOA status area structureWayne Boyer2010-05-241-2/+24
| | | | | | | | | | The IOA status area now includes the new resource path field for 64 bit adapters. This patch changes the driver to fix the ioasa structure and to use the correct structure definition based on the type of adatper. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: implement fixes for 64 bit adapter supportWayne Boyer2010-05-241-1/+2
| | | | | | | | | Implement some small fixes for 64 bit support that were preventing the adapter from becoming operational. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: adds PCI ID definitions for new adaptersWayne Boyer2010-03-031-5/+16
| | | | | | | | | | | | This patch adds the PCI ID definitions for new adapters based on the next generation 64 bit IOA PCI interface chip. New entries have been added to the ipr_pci_table[] array for the adapters and to the ipr_chip[] array for the new versions of the chip. Older entries have been removed for cards that did not ship. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add support for multiple stages of initializationWayne Boyer2010-03-031-0/+25
| | | | | | | | | This patch adds support for using the new IOA initialization feedback register. It also enables 64 bit support in the ipr_ioafp_identify_hrrq and ipr_mask_and_clear_interrupts routines. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: implement shutdown changes and remove obsolete write cache parameterWayne Boyer2010-03-031-9/+1
| | | | | | | | | | | | This patch adds a reboot notifier that will issue a shutdown prepare command to all adapters. This helps to prevent a problem where the primary adapter can get shut down before the secondary adapter and cause the secondary adapter to fail over and log and error. This patch also removes the "enable_cache" paramater as it is obsolete. Write cache for an adapter is now controlled from the iprconfig utility. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add hardware assisted smart dump functionalityWayne Boyer2010-03-031-6/+10
| | | | | | | | | This patch adds the hardware assisted smart dump functionality for the next generation IOA PCI interface chip. Signea-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add error handling updates for the next generation chipWayne Boyer2010-03-031-19/+141
| | | | | | | Add support for the new log data notification and overlay IDs. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: update the configuration table code for the next generation chipWayne Boyer2010-03-031-52/+122
| | | | | | | | | | | | This patch changes the configuration table structures and related code such that both 32 bit and 64 bit based adapters can work with the driver. This patch also implements the code to generate the virtual bus/id/lun values for devices connected to the new adapters. It also implements support for the new device resource path. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add support for new adapter command structures for the next ↵Wayne Boyer2010-03-031-13/+48
| | | | | | | | | | generation chip Change the adapter command structures such that both 32 bit and 64 bit based adapters can work with the driver. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: add workaround for MSI interrupts on P7Wayne Boyer2009-11-061-0/+1
| | | | | | | | | This patch adds some additional logic to the interrupt service routine to fix a potential problem where an MSI interrupt does not get cleared the first time. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* [SCSI] ipr: fix buffer overflowBrian King2009-08-221-1/+1
| | | | | | | | | ipr_cmd_label[] isn't big enough for an eight byte string plus terminator. Fix by shortening the string to seven bytes. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
* ipr: differentiate pci-x and pci-e based adaptersWayne Boyer2009-06-211-0/+4
| | | | | | | | | | MSI has only been tested on and known to work with PCI-E based adapters. This patch adds a field to struct ipr_chip_t to indicate which type of interrupt to use based on what is known about the chip. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
* ipr: add test for MSI interrupt supportWayne Boyer2009-06-211-2/+4
| | | | | | | | | | | The return value from pci_enable_msi() can not always be trusted. This patch adds code to generate an interrupt after MSI has been enabled and tests whether or not we can receive and process it. If the tests fails, then fall back to LSI. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
* [SCSI] ipr: add MSI supportWayne Boyer2009-03-121-2/+2
| | | | | | | | Enable MSI if available/supported. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
* [SCSI] struct device - replace bus_id with dev_name(), dev_set_name()Kay Sievers2009-01-021-1/+1
| | | | | | | | [jejb: limit ioctl to returning 20 characters to avoid overrun on long device names and add a few more conversions] Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
* [SCSI] Clean up my email address and use a single standard address for ↵Alan Cox2008-12-291-1/+1
| | | | | | | everything Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
* [SCSI] replace __FUNCTION__ with __func__Harvey Harrison2008-07-271-3/+3
| | | | | | | | | | | | [jejb: fixed up a ton of missed conversions. All of you are on notice this has happened, driver trees will now need to be rebased] Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Cc: SCSI List <linux-scsi@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
* [SCSI] ipr: Use PCI-E reset API for new ipr adapterBrian King2007-05-081-1/+7
| | | | | | | | | | | | | | Use a newly added PCI API to issue a PCI Fundamental reset (warm reset) to a new ipr PCI-E adapter. Typically, the ipr adapter uses the start BIST bit in config space to reset an adapter. Issuing start BIST on this particular adapter results in the PCI-E logic on the card losing sync, which causes PCI-E errors, making the card unusable. The only reset mechanism that exists on this hardware that does not have this problem is PCI Fundamental reset (warm reset). Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Enable multi-initator RAID supportBrian King2007-05-061-2/+24
| | | | | | | Enables multi-initiator support on ipr RAID adapters that support it. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Handle IOA reset requestBrian King2007-05-061-0/+1
| | | | | | | | | | | In ipr dual adapter configurations, the ipr adapter firmware may require an adapter reset for various reasons. The reset is requested by the adapter firmware logging an error with an IOASC of 0x02048000. Add support to log this error, and reset the adapter. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Driver version to 2.3.2Brian King2007-04-011-2/+2
| | | | | | | Bump driver version. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Faster sg list fetchBrian King2007-04-011-15/+16
| | | | | | | | | Improve overall command performance by embedding the scatterlist in the command block used by the adapter. This decreases the overall number of DMAs required for a single command. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Add new PCI-E IDs to device tableBrian King2007-04-011-0/+5
| | | | | | | Adds support for some new PCI-E ipr adapters. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Make adapter operational timeout be per adapter typeBrian King2007-04-011-0/+5
| | | | | | | | | | Some ipr adapters may take longer than others to come operational. This patch makes this timeout different for different adapters, while still preserving the module parameter which can be used to globally override the default. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Driver version 2.3.1Brian King2007-01-271-2/+2
| | | | | | | Bump driver version to 2.3.1. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Driver version 2.3.0Brian King2006-11-221-2/+2
| | | | | | Bump driver version. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Reduce default error log sizeBrian King2006-11-221-0/+1
| | | | | | | | | | Since the default error log size has increased on SAS adapters, prevent ipr from logging this additional data unless requested to do so by the user set log level in order to prevent flooding the logs. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Add support for logging SAS fabric errorsBrian King2006-11-221-0/+72
| | | | | | | | Adds support for logging SAS fabric errors logged by the ipr firmware. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: PCI IDs for new SAS adaptersBrian King2006-11-221-0/+6
| | | | | | Adds PCI IDs for some new ipr SAS adapters. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Support attaching SATA devicesBrian King2006-09-261-3/+15
| | | | | | | Adds support to attach SATA devices to ipr SAS adapters. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Bump driver version to 2.1.4Brian King2006-08-061-2/+2
| | | | | | | Bump the ipr driver version to 2.1.4. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Add some hardware defined types for SATABrian King2006-08-061-3/+75
| | | | | | | | Add some hardware defined types for SATA. This is required by future patches to add SATA support to ipr. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Bump versionBrian King2006-04-131-2/+2
| | | | | | | Bump ipr driver version to 2.1.3 Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: printk macro cleanup/removalBrian King2006-04-131-19/+6
| | | | | | | | Remove some unused printk macros, make some more robust, and convert some to use standard printk macros when possible. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Fixup device type checkBrian King2006-04-131-0/+16
| | | | | | | | | Fixup a check used by the ipr driver to determine if a given device is a SCSI disk. Due to the addition of support for attaching SATA devices, this check needs to be more robust. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Disk remove path cleanupBrian King2006-04-131-0/+1
| | | | | | | | | | | Instead of NULLing the resource entry pointer when a disk goes away to prevent any new commands being sent to it, set the adapter resource handle to an invalid value so new ops getting sent to it will fail with a selection timeout response. This patch is needed for future SATA patches. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Fix adapter initialization failureBrian King2006-02-121-3/+2
| | | | | | | | | | | | Since scsi core is always sending scatterlists now, remove some code which was written with the bad assumption that a small transfer would not be sent down in a scatterlist. Without this fix, the ipr driver ends up sending garbage data to the adapter following a reset, causing it to fail the reset and take the adapter offline. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Driver initialization fix for kexec/kdumpbrking@us.ibm.com2005-12-131-2/+3
| | | | | | | | | | | | | | | | When kexec booting a kernel when the previous kernel did not call ipr's shutdown method, the ipr adapter does not get properly initialized, which can result in the ipr adapter completing commands issued by the previous kernel. Fix ipr to detect this scenario by reading the adapter's interrupt mask register and the microprocessor interrupt register. If the interrupt mask register indicates that interrupts are enabled or the reset alert bit is set when the card is probed, this means the card is in an unknown state and we hard reset the card. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Driver version 2.1.0brking@us.ibm.com2005-11-061-2/+2
| | | | | | | Bump the driver version. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Better handle failure of adapter bringup commandsbrking@us.ibm.com2005-11-061-0/+2
| | | | | | | | | Some new ipr adapters do not support some of the initialization commands currently sent to it from the driver. Handle these commands failing and continue on with the adapter initialization. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Increase ipr device scanning limitsbrking@us.ibm.com2005-11-061-3/+3
| | | | | | | Increase device scanning limits so that all devices are found. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: New PCI Idsbrking@us.ibm.com2005-11-061-0/+4
| | | | | | | Adds support for some new ipr adapters Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] ipr: Support new device queueing modelbrking@us.ibm.com2005-11-061-0/+18
| | | | | | | | | | | | | | | New ipr adapters support a new device queueing model in the adapter firmware. The queueing model is the NACA queueing model, but it does not mean use of NACA is required. The new model removes some of the adapter firmware queue state that made handling QERR=0 almost impossible. The queueing model on older adapters included the concept of a queue frozen state, which would freeze the response queue in the adapter when a check condition occurred, requiring a a primitive to resume the queue. The new queueing model removes this complexity. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
OpenPOWER on IntegriCloud