summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/isci/init.c
Commit message (Collapse)AuthorAgeFilesLines
* isci: preallocate remote devicesDan Williams2011-07-031-20/+7
| | | | | | | | | | | | | Until we synchronize against device removal this limits the damage of use after free bugs to the driver's own objects. Unless we implement reference counting we need to ensure at least a subset of a remote device is valid at all times. We follow the lead of other libsas drivers that also preallocate devices. This also enforces maximum remote device accounting at the lldd layer, but the core may still run out of RNC's before we hit this limit. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: kill isci_host list in favor of an arrayDan Williams2011-07-031-18/+7
| | | | | | | | isci_host_by_id() should have been a clue that an array would have been a simpler approach. Reported-by: James Bottomley <James.Bottomley@suse.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: fix sas address reportingDan Williams2011-07-031-1/+1
| | | | | | | Undo the open coded and incorrect translation of the oem parameter sas address to its libsas expected format. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Move firmware loading to per PCI deviceDave Jiang2011-07-031-0/+91
| | | | | | | | | | Moved the firmware loading from per adapter to per PCI device. This should prevent firmware from being loaded twice becuase of 2 SCU controller per PCI device. We do have to do it per PCI device because request_firmware() requires a struct device passed in. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Initialize proc_name field in scsi_host_templateHavard Skinnemoen2011-07-031-0/+1
| | | | | | | | | | | | The proc_name field in struct scsi_host_template is exported through sysfs and allows userspace tools to identify the driver behind a particular SCSI host controller. Initialize this field so that userspace tools can easily identify isci host controllers through sysfs. Signed-off-by: Havard Skinnemoen <hskinnemoen@google.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: implement error isrDan Williams2011-07-031-2/+8
| | | | | | Add basic support for handling/reporting error interrupts. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: bypass scic_controller_get_handler_methods()Dan Williams2011-07-031-2/+2
| | | | | | | | | | | | | | The indirection is unecessary and broken in the current case that assigns the handlers based on a not up-to-date pdev->msix_enabled value. Route the handlers directly to the requisite core routines. Todo: hook up error interrupt handling Reported-by: Jeff Garzik <jeff@garzik.org> Cc: Christoph Hellwig <hch@infradead.org> Signed-off-by: Edmund Nadolski <edmund.nadolski@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: removing unused loglevel module paramDave Jiang2011-07-031-2/+0
| | | | | | | We no longer use the loglevel parameter. Remove. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
* isci: Intel(R) C600 Series Chipset Storage Control Unit DriverDan Williams2011-07-021-0/+613
Support for the up to 2x4-port 6Gb/s SAS controllers embedded in the chipset. This is a snapshot of the first publicly available version of the driver, commit 4c1db2d0 in the 'historical' branch. git://git.kernel.org/pub/scm/linux/kernel/git/djbw/isci.git historical Signed-off-by: Maciej Trela <maciej.trela@intel.com> Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Edmund Nadolski <edmund.nadolski@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
OpenPOWER on IntegriCloud