30 Oct, 2009
1 commit
-
Bump version 3.04.13.
Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley
12 Sep, 2009
1 commit
-
Bump version to 3.04.12
Signed-off-by: James Bottomley
23 Aug, 2009
3 commits
-
Bump version to 3.04.11
Signed-off-by: James Bottomley
-
Removed mptscsih_timer_expired. This timer is no more use.
Signed-off-by: James Bottomley
-
Change DEFINED value of can queue for FC and SAS devices.
Signed-off-by: James Bottomley
10 Jun, 2009
13 commits
-
Firmware is able to handle Broadcast primitives, but upstream driver does not
have support for broadcast primitive handling. Now this patch is mainly to
support broadcast primitives.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
1. Handle integrated Raid device(Add/Delete) and error condition and check
related to Raid device. is_logical_volume will represent logical volume
device.
2. Raid device dual port support is added. Main functions to support this
feature are mpt_raid_phys_disk_get_num_paths and mpt_raid_phys_disk_pg1.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
Resending patch considering Grants G's code review.
Main goal to submit this patch is code cleaup.
1. Better driver debug prints and code indentation.
2. fault_reset_work_lock is not used anywhere. driver is using taskmgmt_lock
instead of fault_reset_work_lock.
3. setting pci_set_drvdata properly.
4. Ingore config request when IOC is in reset state.( ioc_reset_in_progress
is set).
5. Init/clear managment frame proprely.(INITIALIZE_MGMT_STATUS and
CLEAR_MGMT_STATUS)Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
1.) SAS topology Rescan is added. If Firmware is doing Reset and we get
Device add interrupt from Firmware, we will not receive it as part of Reset
is going ON. After Reset we will do special Rescan of SAS topology.
2.) Driver version changed from 3.04.08 to 3.04.09.Added proper lock/unlock in mptsas_not_responding_devices() as per James'
comment.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
SAS topology scan is restructured. HBA firmware is generating more
events. Expander Events are added, Link status events are also added with
respect to SAS topology scan optimization.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
Now Firmware events are handled by firmware event queue.
Previously it was handled in interrupt context/WorkQueue of Linux.
Firmware Event handling is restructured and optimized.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
1) rewrite of ioctl_cmds internal generated function that issue commands to
firmware, porting them to be single threaded using the generic MPT_MGMT
struct. All wait Queues are replace by completion Queue.
2) added seperate callback handler for ioctl task managment
(mptctl_taskmgmt_reply), to handle command that timeout
3) rewrite mptctl_bus_resetSigned-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
1.) Added taskmgmt_quiesce_io flag in IOC and removed resetPending from
_MPT_SCSI_HOST struct.
2.) Reset from Scsi mid layer and internal Reset are seperate context.
Adding DeviceResetCtx for internal Device reset frame.
mptsas_taskmgmt_complete is optimized as part of implementation.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
1.) rewrite taskmanagement request and completion routines, making them
single threaded and using the generic MPT_MGMT struct, deleting
mptscsih_TMHandler, replacing with single request TM handler
mptscsih_IssueTaskMgmt, and killing the watchdog timer functions.
2.) cleanup ioc_reset callback handlers, introducing wrappers for
synchronizing error recovery (mpt_set_taskmgmt_in_progress_flag,
mpt_clear_taskmgmt_in_progress_flag), as the fusion firmware only handles
one task management request at a timeSigned-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
Rewrite of all internal generated functions that issue commands to firmware,
porting them to be single threaded using the generic MPT_MGMT
struct. Implemented using completion Queue.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
1) Previously we had mutliple #defines to use same values.
Now those #defines are optimized.
MPT_IOCTL_STATUS_* is removed and MPT_MGMT_STATUS_* are new
#defines.
2.) config path is optimized.
Instead of wait Queue and timer, using completion Q.
3.) mpt_timer_expired is not used.[jejb: elide patch to eliminate mpt_timer_expired]
Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
sas_discovery_quiesce_io flag is used to control IO start/resume functionality.
IO will be stoped while doing discovery of topology. Once discovery is completed
It will resume IO. Resending patch including James review.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley -
The reason for this change is there is a data corruption when four different
physical memory regions in the 36GB to 37GB region are
accessed. This is only affecting 1078.The solution is we need to use different addressing when filling in
the scatter gather table for the effected memory regions. So instead
of snooping on all four different memory holes, we treat any physical
addresses in the 36GB address with the same algorithm.The fix is explained below
1) Ensure that the message frames are NOT located in the trouble
region. There is no remapping available for message frames, they must
be allocated outside the problem region.
2) Ensure that Sense buffers are NOT in the trouble region. There is
no remapping available.
3) Walk through the SGE entries and if any are inside the trouble region
then they need to be remapped as discussed below.
1) Set the Local Address bit in the SGE Flags field.
MPI_SGE_FLAGS_LOCAL_ADDRESS
2) Ensure we are using 64-bit SGEs
3) Set MSb (Bit 63) of the 64-bit address, this will indicate buffer
location is Host Memory.Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley
14 Jan, 2009
1 commit
-
Signed-off-by: Kashyap Desai
Signed-off-by: James Bottomley
22 Jul, 2008
1 commit
-
Kobjects do not have a limit in name size since a while, so stop
pretending that they do.Signed-off-by: Kay Sievers
Signed-off-by: Greg Kroah-Hartman
12 Jul, 2008
1 commit
-
When the firmware is in Fault state it will be identifed only when the next time
the driver access the IOC state.
This patch includes a polling function in the driver which will be executed in
regular interval to check the status of the firmware and if it is in Fault
state, then the firmware will be reset by the driver.Signed-off-by: Sathya Prakash
Signed-off-by: James Bottomley
05 Jun, 2008
3 commits
-
Updating copyright statement to include the year 2008
Signed-off-by: Sathya Prakash
Signed-off-by: James Bottomley -
Updating driver version to 3.04.07 from 3.04.06
Signed-off-by: Sathya Prakash
Signed-off-by: James Bottomley -
This patch makes the needlessly global struct mpt_proc_root_dir static.
Signed-off-by: Adrian Bunk
Acked-by: "Prakash, Sathya"
Signed-off-by: James Bottomley
08 Apr, 2008
3 commits
-
While performing hardware raid reset testing via the raid's client, I
noticed that sometimes, following the reset, that there would be more
raid targets in the lsscsi output than there actually were raid
targets. I tracked this down to the following issue.Fusion cannot always find the mptsas_portinfo structure for the hba
because it uses the handle stored in ioc->handle to locate it. The
problem is that the firmware can change the handle associated with the
hba when h/w raid is reset (via the raid client). When this happens,
the driver will allocate another mptsas_portinfo structure and link it
into the chain of said structures. This ultimately causes confusion
within the driver resulting in targets not being removed when they
should be.Eric Moore pointed out that the hba's portinfo structure is always the
first structure on the sas_topology list. This patch modifies
mptsas.c to access the hba's portinfo structure by taking the first
structure on said list.Signed-off-by: Michael Reed
Acked-by: "Moore, Eric"
Signed-off-by: James Bottomley -
the semaphore inactive_list_mutex is used as a mutex, convert it to
the mutex APISigned-off-by: Matthias Kaehlcke
Acked-by: "Moore, Eric"
Signed-off-by: James Bottomley -
This patch modifies the driver to enable MSI by default for all SAS chips.
Signed-off-by: Sathya Prakash
Signed-off-by: James Bottomley
18 Feb, 2008
1 commit
-
Verified all the arches necessary select the CONFIG_64BIT symbol. This
also kills the warning (since it was using the 32-bit case) on parisc64
and mips64.Signed-off-by: Kyle McMartin
Signed-off-by: James Bottomley
12 Feb, 2008
1 commit
-
This patch modifies the I/O resource allocation behavior of FUSION
driver. The current version of driver allocates the I/O resources
even if they are not required and this creates trouble in low resource
environments. This driver now uses
pci_enable_device_mem/pci_enable_device functions to differentiate the
resource allocations.Signed-off-by: Sathya Prakash
Signed-off-by: James Bottomley
24 Jan, 2008
1 commit
-
This patch fixes the module unload problem in flash less 1030
controller environment where firmware download boot functionality is
invoked. The problem is due to the firmware download is being done in
the reverse order, which this patch solves by insureing the download
occurs to the last controller being reset.signed-off-by: Sathya Prakash
Signed-off-by: James Bottomley
13 Oct, 2007
8 commits
-
Cleaning up prints that use the xxx_printk API, in that the fusion
preamble "mptbase: iocX" follows the info provided by the print API.
The way its currently coded, the [H:C:T] print in sdev_printk will be
inbetween "mptbase" and "iocX", instead of before.Signed-off-by: Eric Moore
Signed-off-by: James Bottomley -
ScsiLookup is an array of pending scmd pointers that the scsi lld
maintains. This array is touched from queuecommand, eh threads, and
interrupt context. This array should put under locks, hence this patch
to synchronize its access. I've added some nice little function
wrappers for this, and moved the ScsiLookup array over to MPT_ADAPTER
struct.Signed-off-by: Eric Moore
Signed-off-by: James Bottomley -
bump version
Signed-off-by: Eric Moore
Signed-off-by: James Bottomley -
Recently LSI Logic Corp was renamed as LSI Corp, so whereever there is
a reference of LSI Logic, it is changed to LSI in mpt fusion driver
code.signed-off-by: Sathya Prakash
Acked-by: Eric Moore
Signed-off-by: James Bottomley -
When there is state change in FC links, a message is displayed with
old and new link speed.signed-off-by: Sathya Prakash
Acked-by: Eric Moore
Signed-off-by: James Bottomley -
The call back index requires only u8 but in lot of places it is
referred as int, now everywhere the call back index variables are
declared as u8 with uniform name cb_idxsigned-off-by: Sathya Prakash
Acked-by: Eric Moore
Signed-off-by: James Bottomley -
Added support for sending the task management requests through High priority
request FIFO instead of Doorbell writes when firmware support High priority
FIFO.signed-off-by: Sathya Prakash
Acked-by: Eric Moore
Signed-off-by: James Bottomley -
Per request from Matthew Wilcox - using PCI_VENDOR_ATTO.
Add support for ATTO UL4D, they are rebranded 53C1030.
The changes are
1. Adding a new PCI vendor ID in pci table
2. The spi_port_page_2 is in different format than that of LSI generic
spi_port_page_2 and hence mapping code is added.signed-off-by: Sathya Prakash
signed-off-by: Eric Moore
Signed-off-by: James Bottomley
28 Jul, 2007
1 commit
-
This patch adds a new file mptdebug.h in the fusion source directory,
which contains different debug macros. The existing debug macros and
flags are removed from the mptbase.h and Makefile In Kconfig a new
configuration parameter FUSION_LOGGING is added to enable/disable the
logging support during compile time.signed-off-by: Sathya Prakash
Signed-off-by: James Bottomley
19 Jul, 2007
1 commit
-
Add support for Brocade 410/420 4Gbit FC HBAs.
They are re-branded LSI HBAs [LSI7104EP-LC/LSI7204EP-LC]Signed-off-by: Sathya Prakash
Acked-by: "Moore, Eric"
Signed-off-by: James Bottomley