Murthy Bhat
5d1f03e6f4
scsi: smartpqi: Capture controller reason codes
...
In some rare cases, the driver can halt the controller. Add a reason code
describing why the controller was halted. Store this reason code in a
controller register to aid in debugging the issue.
Link: https://lore.kernel.org/r/20210928235442.201875-4-don.brace@microchip.com
Reviewed-by: Scott Benesh <scott.benesh@microchip.com >
Reviewed-by: Scott Teel <scott.teel@microchip.com >
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com >
Acked-by: John Donnelly <john.p.donnelly@oracle.com >
Signed-off-by: Murthy Bhat <Murthy.Bhat@microchip.com >
Signed-off-by: Don Brace <don.brace@microchip.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2021-10-05 00:13:14 -04:00
Mahesh Rajashekhara
9ee5d6e9ac
scsi: smartpqi: Add controller handshake during kdump
...
Correct kdump hangs when controller is locked up.
There are occasions when a controller reboot (controller soft reset) is
issued when a controller firmware crash dump is in progress.
This leads to incomplete controller firmware crash dump:
- When the controller crash dump is in progress, and a kdump is initiated,
the driver issues inbound doorbell reset to bring back the controller in
SIS mode.
- If the controller is in locked up state, the inbound doorbell reset does
not work causing controller initialization failures. This results in the
driver hanging waiting for SIS mode.
To avoid an incomplete controller crash dump, add in a controller crash
dump handshake:
- Controller will indicate start and end of the controller crash dump by
setting some register bits.
- Driver will look these bits when a kdump is initiated. If a controller
crash dump is in progress, the driver will wait for the controller crash
dump to complete before issuing the controller soft reset then complete
driver initialization.
Link: https://lore.kernel.org/r/20210928235442.201875-3-don.brace@microchip.com
Reviewed-by: Scott Benesh <scott.benesh@microchip.com >
Reviewed-by: Scott Teel <scott.teel@microchip.com >
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com >
Acked-by: John Donnelly <john.p.donnelly@oracle.com >
Signed-off-by: Mahesh Rajashekhara <mahesh.rajashekhara@microchip.com >
Signed-off-by: Don Brace <don.brace@microchip.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2021-10-05 00:13:14 -04:00
Kevin Barnett
889653ecfc
scsi: smartpqi: Update copyright notices
...
Updated copyright notices and company name strings to reflect Microchip
ownership.
Link: https://lore.kernel.org/r/20210714182847.50360-3-don.brace@microchip.com
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com >
Reviewed-by: Scott Benesh <scott.benesh@microchip.com >
Reviewed-by: Scott Teel <scott.teel@microchip.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com >
Signed-off-by: Don Brace <don.brace@microchip.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2021-07-19 22:00:56 -04:00
Kevin Barnett
2708a25643
scsi: smartpqi: Add support for new product ids
...
Add support for newer hardware by adding in a product identifier. This
identifier can then be used to check for the hardware generation.
Link: https://lore.kernel.org/r/161549370966.25025.2968242206975557607.stgit@brunhilda
Reviewed-by: Scott Benesh <scott.benesh@microchip.com >
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com >
Reviewed-by: Scott Teel <scott.teel@microchip.com >
Reviewed-by: Martin Wilck <mwilck@suse.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com >
Signed-off-by: Don Brace <don.brace@microchip.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2021-04-05 23:02:28 -04:00
Don Brace
2a71268160
scsi: smartpqi: Update copyright
...
Update driver copyright.
Link: https://lore.kernel.org/r/159864896224.13630.9798419111015060967.stgit@brunhilda
Reviewed-by: Scott Teel <scott.teel@microsemi.com >
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2020-09-02 22:49:06 -04:00
Don Brace
2cc37b1575
scsi: smartpqi: add spdx
...
Reviewed-by: David Carroll <david.carroll@microsemi.com >
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Reviewed-by: Scott Teel <scott.teel@microsemi.com >
Reviewed-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2019-03-18 16:48:28 -04:00
Don Brace
2f4c4b92db
scsi: smartpqi: update copyright
...
Reviewed-by: Gerry Morong <gerry.morong@microsemi.com >
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Reviewed-by: Scott Teel <scott.teel@microsemi.com >
Reviewed-by: David Carroll <david.carroll@microsemi.com >
Reviewed-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2019-03-18 16:48:28 -04:00
Mahesh Rajashekhara
4fd22c13ad
scsi: smartpqi: add ofa support
...
- when OFA event occurs, driver will stop traffic to RAID/HBA path. Driver
waits for all the outstanding requests to complete.
- Driver sends OFA event acknowledgment to firmware.
- Driver will wait until the new firmware is up and running.
- Driver will free up the resources.
- Driver calls SIS/PQI initialization and rescans the device list.
- Driver will resume the traffic to RAID/HBA path.
Reviewed-by: Murthy Bhat <murthy.bhat@microsemi.com >
Signed-off-by: Mahesh Rajashekhara <mahesh.rajashekhara@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2018-12-19 22:27:52 -05:00
Kevin Barnett
4f078e2408
scsi: smartpqi: cleanup doorbell register usage.
...
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2017-08-10 19:58:26 -04:00
Kevin Barnett
336b681931
scsi: smartpqi: add pqi reset quiesce support
...
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2017-08-10 19:58:25 -04:00
Kevin Barnett
b805dbfe2b
scsi: smartpqi: update copyright
...
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2017-06-12 20:48:03 -04:00
Kevin Barnett
061ef06a2d
scsi: smartpqi: add suspend and resume support
...
add support for ACPI S3 (suspend) and S4 (hibernate)
system power states.
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2017-06-12 20:48:02 -04:00
Kevin Barnett
162d7753fc
scsi: smartpqi: ensure controller is in SIS mode at init
...
put in SIS mode during initialization.
support kexec/kdump
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Reviewed-by: Scott Teel <scott.teel@microsemi.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2017-06-12 20:48:02 -04:00
Kevin Barnett
5b0fba0f40
scsi: smartpqi: add in controller checkpoint for controller lockups.
...
tell smartpqi controller to generate a checkpoint for rare lockup
conditions.
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Reviewed-by: Scott Teel <scott.teel@microsemi.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2017-06-12 20:48:02 -04:00
Kevin Barnett
ff6abb7383
scsi: smartpqi: add kdump support
...
Reviewed-by: Scott Teel <scott.teel@microsemi.com >
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de >
Reviewed-by: Tomas Henzl <thenzl@redhat.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2016-09-02 06:21:38 -04:00
Kevin Barnett
6c223761eb
smartpqi: initial commit of Microsemi smartpqi driver
...
This initial commit contains Microsemi's smartpqi module.
[mkp: Minor tweaks to apply to 4.9/scsi-queue]
Reviewed-by: Scott Benesh <scott.benesh@microsemi.com >
Reviewed-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com >
Signed-off-by: Don Brace <don.brace@microsemi.com >
Reviewed-by: Hannes Reinecke <hare@suse.com >
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de >
Reviewed-by: Ewan D. Milne <emilne@redhat.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
2016-08-12 16:00:09 -04:00