Commit Graph

6699 Commits

Author SHA1 Message Date
Bart Van Assche
f4ce28b5ab scst/include/backport.h: Unbreak the build on RHEL 7 / CentOS 7
Fixes: 5ebd20d839 ("scst/include/backport.h: Backport cpu_to_be32_array()")


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8879 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-09 15:11:29 +00:00
Bart Van Assche
289ae036e5 qla2x00t-32gbit: Fix a compiler warning triggered by kernel versions before v4.10
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8878 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-09 15:11:05 +00:00
Bart Van Assche
5a99fa9a8c qla2x00t-32gbit: Move the trace/events/qla.h include file
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8877 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-08 15:32:10 +00:00
Bart Van Assche
9ece5279ad Add the qla2x00t-32gbit/trace/events/qla.h file to the output of scripts/generate-kernel-patch
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8876 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-08 15:23:43 +00:00
Bart Van Assche
178eef8917 qla2x00t-32gbit: Revert two changes that had been checked in accidentally
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8875 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 16:55:10 +00:00
Bart Van Assche
f99de361ed Update svn:ignore properties
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8874 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 16:28:22 +00:00
Bart Van Assche
66184b6b25 qla2x00t-32gbit: make 1-bit bit-fields unsigned int
The bitfields mpi_fw_dump_reading and mpi_fw_dumped are currently signed
which is not recommended as the representation is an implementation defined
behaviour.  Fix this by making the bit-fields unsigned ints.

Link: https://lore.kernel.org/r/20200428102013.1040598-1-colin.king@canonical.com
Fixes: cbb01c2f2f63 ("scsi: qla2xxx: Fix MPI failure AEN (8200) handling")
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 78b874b7cbf09fbfadfa5f18a347ebef7bbb49fe upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8873 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 16:06:41 +00:00
Bart Van Assche
582746f829 qla2x00t-32gbit: Fix MPI failure AEN (8200) handling
Today, upon an MPI failure AEN, on top of collecting an MPI dump, a regular
firmware dump is also taken and then chip reset. This is disruptive to IOs
and not required. Make the firmware dump collection, followed by chip
reset, optional (not done by default).

Firmware dump buffer and MPI dump buffer are independent of each
other with this change and each can have dump that was taken at two
different times for two different issues. The MPI dump is saved in a
separate buffer and is retrieved differently from firmware dump.

To collect full dump on MPI failure AEN, a module parameter is
introduced:
    ql2xfulldump_on_mpifail (default: 0)

Link: https://lore.kernel.org/r/20200331104015.24868-2-njavali@marvell.com
Reported-by: kbuild test robot <lkp@intel.com>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Arun Easi <aeasi@marvell.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit cbb01c2f2f630f1497f703c51ff21538ae2d86b8 upstream ]



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8872 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 16:05:56 +00:00
Bart Van Assche
28e8c3fa48 qla2x00t-32gbit: Use ARRAY_SIZE() instead of open-coding it
This patch does not change any functionality.

Link: https://lore.kernel.org/r/20200413021359.21725-1-bvanassche@acm.org
Cc: Nilesh Javali <njavali@marvell.com>
Cc: Quinn Tran <qutran@marvell.com>
Cc: Himanshu Madhani <himanshu.madhani@oracle.com>
Cc: Martin Wilck <mwilck@suse.com>
Cc: Daniel Wagner <dwagner@suse.de>
Cc: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit d221aed19c80d83c2de2fa5e8a5ba045065c6d4b upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8871 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 16:05:02 +00:00
Bart Van Assche
bf6dcb17a0 qla2x00t-32gbit: Split qla2x00_configure_local_loop()
The size of the function qla2x00_configure_local_loop() hurts its
readability. Hence split that function. This patch does not change any
functionality.

Link: https://lore.kernel.org/r/20200405225905.17171-1-bvanassche@acm.org
Cc: Nilesh Javali <njavali@marvell.com>
Cc: Himanshu Madhani <hmadhani@marvell.com>
Cc: Quinn Tran <qutran@marvell.com>
Cc: Martin Wilck <mwilck@suse.com>
Cc: Daniel Wagner <dwagner@suse.de>
Cc: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 21e855cdfeb91cf2fe92cd608c3f1d657fc73c5c upstream ]



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8870 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 16:04:06 +00:00
Bart Van Assche
72a90c1b5a qla2x00t-32gbit: Remove non functional code
Remove code which has no functional use anymore since commit 3c75ad1d87c7
("scsi: qla2xxx: Remove defer flag to indicate immeadiate port loss").
    
While at it remove also the stale function documentation.

Link: https://lore.kernel.org/r/20200206135443.110701-1-dwagner@suse.de
Reviewed-by: Arun Easi <aeasi@marvell.com>
Reviewed-by: Lee Duncan <lduncan@suse.com>
Signed-off-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 1b72e86ddbbc7fb55771bf649d81c2513830a6a5 upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8869 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 16:03:08 +00:00
Bart Van Assche
2286974744 qla2x00t-32gbit: Add ring buffer for tracing debug logs
Having this log in a ring buffer helps to diagnose qla2xxx driver and
firmware issues instead of having to reproduce the problem with
extended_logging enabled. This saves cycles and helps when it is hard
to reproduce problem.
    
Link: https://lore.kernel.org/r/1581557368-32080-1-git-send-email-rajan.shanmugavelu@oracle.com
Reviewed-by: Joe Jin <joe.jin@oracle.com>
Acked-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Rajan Shanmugavelu <rajan.shanmugavelu@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 598a90f2002c4c4daee24d76d24e8270c7075eef upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8868 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 16:01:42 +00:00
Bart Van Assche
afc46c6053 nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8867 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 15:10:15 +00:00
Bart Van Assche
3f97a8d3cb iscsi-scst, srpt: Fix the build against MOFED 5
Reported-by: Grant Albitz <Cryptz@Cryptz.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8866 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-05-06 03:26:38 +00:00
Bart Van Assche
102797b00b qla2x00t-32gbit: Port to Linux kernel v5.7
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8865 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-21 02:26:16 +00:00
Bart Van Assche
540dc57576 qla2x00t: Port to Linux kernel v5.7
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8864 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-21 02:25:58 +00:00
Bart Van Assche
ab29dc4430 scst: Port to Linux kernel v5.7
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8863 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-21 02:25:32 +00:00
Bart Van Assche
40f36a6873 scst_user: Set replies_done to zero if replies_cnt == 0
This patch prevents that fileio_tgt becomese unresponsive.

Reported-by: James McCarthy <mccarthy1029@gmail.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8861 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-11 17:11:33 +00:00
Bart Van Assche
32c2db1acf nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8857 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-08 14:41:35 +00:00
Bart Van Assche
a8b636e09f scst/src/dev_handlers/scst_user: Remove two casts from dev_user_reply_get_cmd()
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8851 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-04 23:39:48 +00:00
Bart Van Assche
b2facc91c9 scst/src/dev_handlers/scst_user: Simplify dev_user_reply_get_multi()
Remove multiple pointer casts. This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8850 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-04 23:24:47 +00:00
Bart Van Assche
1db9c3c8b2 scst/kernel/in-tree/Makefile.drivers.Linux.patch: Port to kernel v5.6
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8849 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-04 22:59:14 +00:00
Bart Van Assche
fcfb8f873d scst/kernel/in-tree/Makefile.scst: Add scst_local_cmd.o
Signed-off-by: Sietse van Zanen <sietse@wizdom.nu>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8848 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-03 02:10:40 +00:00
Bart Van Assche
cff108855e scst/src/Makefile: Sort source file names alphabetically
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8847 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-03 02:07:01 +00:00
Bart Van Assche
647f056f6b Remove more references to the removed scst_proc.c source file
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8846 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-03 02:06:24 +00:00
Bart Van Assche
4dc7c91610 nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8845 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-01 01:22:46 +00:00
Bart Van Assche
4850c2c7c9 nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8844 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-31 05:08:15 +00:00
Bart Van Assche
a2b4edd4d2 scst/src/scst_local_cmd.h: Remove a duplicate declaration
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8843 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-20 17:25:55 +00:00
Bart Van Assche
6c543c089e scst_targ: Sort scst_local_fns[] alphabetically
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8842 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-20 17:25:38 +00:00
Bart Van Assche
33ae08da62 scripts/kernel-functions: Apply the -fno-PIE to more kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8841 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-20 17:25:16 +00:00
Bart Van Assche
ad089822f0 qla2x00t-32gbit: Fix the build against kernel v3.18 and older
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8840 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-20 17:24:37 +00:00
Bart Van Assche
347bbf8736 qla2x00t-32gbit: Fix the build against kernel v4.9 and older
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8839 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-20 17:24:01 +00:00
Bart Van Assche
5ebd20d839 scst/include/backport.h: Backport cpu_to_be32_array()
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8838 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-20 17:23:00 +00:00
Bart Van Assche
eb67ff6780 nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8837 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-14 22:32:47 +00:00
Bart Van Assche
8f34137fce qla2x00t-32gbit: Improve coding style conformance
Do not surround single line statements with braces. Do not split strings
across multiple lines. Do not use 'return;' at the end of a function. Use
tabs to indent. Remove superfluous parentheses.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8836 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-09 02:21:33 +00:00
Bart Van Assche
1199f4247f qla2x00t-32gbit: Suppress complaints about using smp_processor_id()
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8835 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-09 02:18:12 +00:00
Bart Van Assche
cd68a96ef9 scst-dkms.spec.in: Do not install the */conftest/*/*.ko kernel modules
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8834 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-08 20:49:11 +00:00
Bart Van Assche
b044a48cf8 RPM build: Add support for CentOSPlus
See also https://sourceforge.net/p/scst/tickets/34/ .

This was reported by Brandon Thetford.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8833 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-08 20:28:01 +00:00
Bart Van Assche
eea7b68473 qla2x00t-32gbit: Update driver version to 10.01.00.25-k
Link: https://lore.kernel.org/r/20200226224022.24518-19-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 4cbca7ea9edaab268f344c2bcd22afcb7370569f upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8832 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:40:33 +00:00
Bart Van Assche
37e6d53d11 qla2x00t-32gbit: Set Nport ID for N2N
When transitioning from loop to N2N, stale NPort ID is not
re-assigned. Stale ID can collide with remote device.  This patch will
re-assign NPort ID on N2N is detected.

Link: https://lore.kernel.org/r/20200226224022.24518-18-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit ad8a260aa80d4dfa9588fd5d23b71ec922f61c8b upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8831 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:40:06 +00:00
Bart Van Assche
9d6877b38d qla2x00t-32gbit: Handle NVME status iocb correctly
Certain state flags bit combinations are not checked and not handled
correctly. Plus, do not log a normal underrun situation where there is
no frame drop.

Link: https://lore.kernel.org/r/20200226224022.24518-17-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Arun Easi <aeasi@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 3d582b34992ba2fe4065f01019f0c08d12916faa upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8830 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:39:29 +00:00
Bart Van Assche
b4a2b8a647 qla2x00t-32gbit: Remove restriction of FC T10-PI and FC-NVMe
T10-PI and FC-NVMe are not mutually exclusive. This patch removes
restrictions where if FC-NVMe is enabled T10-PI defaults to disabled.

Link: https://lore.kernel.org/r/20200226224022.24518-16-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 3e4615a292b47632d409f0d53a23da85e039b031 upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8829 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:38:56 +00:00
Bart Van Assche
7924ccd89c qla2x00t-32gbit: Serialize fc_port alloc in N2N
For N2N, fc_port struct is created during report id acquisition.  At
later time, the loop resync (fabric, n2n, loop) would trigger the rest
of the login using the created fc_port struct.  The loop resync logic
can trigger another fc_port allocation if the 1st allocation was not
able to execute.  This patch prevents the 2nd allocation trigger.

Link: https://lore.kernel.org/r/20200226224022.24518-15-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 11efe8755d73efd153d6459240866b6d52448f19 upstream ]



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8828 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:38:18 +00:00
Bart Van Assche
231611a186 qla2x00t-32gbit: Fix NPIV instantiation after FW dump
NPIV re-enable code was blocked after FW had been initialized.  The
blocking check was too broad. Reduce the check to make sure if FW is
initialized or not.

Link: https://lore.kernel.org/r/20200226224022.24518-14-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit ab391abdc191c2a2874098df86d1fe4b9762ef60 upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8827 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:37:32 +00:00
Bart Van Assche
cacab3adea qla2x00t-32gbit: Fix RDP respond data format
RPD information failed to display by switch cli command.  This is
caused by driver failure to properly format RDP response data with
data descriptor to allow switch to parse it correctly.

Link: https://lore.kernel.org/r/20200226224022.24518-13-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 770538c3012ac8ff92d5e4ae18850588c188c5fa upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8826 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:37:02 +00:00
Bart Van Assche
44ab6ef708 qla2x00t-32gbit: Force semaphore on flash validation failure
For single port 28XX adapter, the second core can still run in the
background.  The flash semaphore can be held by the non-active core.
This patch tell MPI FW to check for this case and clear the semaphore
from the non-active core.

Link: https://lore.kernel.org/r/20200226224022.24518-12-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit cad9c2d28ec69f1d0370b2ba5abe309b0b709be4 upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8825 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:36:34 +00:00
Bart Van Assche
8b1ff82c99 qla2x00t-32gbit: add more FW debug information
Per FW request, MB 1-7 should be logged for 8002 error.

Link: https://lore.kernel.org/r/20200226224022.24518-11-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit a82c307e69c465e4d80cc15fde3c00f5b95832d6 upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8824 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:36:04 +00:00
Bart Van Assche
44b99951e2 qla2x00t-32gbit: Update BPM enablement semantics.
commit e4e3a2ce9556 ("scsi: qla2xxx: Add ability to autodetect SFP
type") takes a heavy handed approach to BPM (Buffer Plus Management)
enablement:

1) During hardware initialization, if an LR-capable transceiver is
   recognized, the driver schedules a disruptive post-initialization
   chip-reset (ISP-ABORT) to allow the BPM settings to be sent to the
   firmware.  This chip-reset will result in (short-term) path-loss to
   all fc-rports and their attached SCSI devices.

2) LR-detection is triggered during any link-up event, resulting in a
   refresh and potential chip-reset

Based on firmware-team guidance, upon LR-capable transceiver
recognition, the driver's hardware initialization code will now
re-execute firmware with the new BPM settings, then continue on with
driver initialization.  To address the second issue, the driver
performs LR-capable detection upon the driver receiving a
transceiver-insertion asynchronous event from firmware.  No short-term
path loss is needed with this new semantic.

Link: https://lore.kernel.org/r/20200226224022.24518-10-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Andrew Vasquez <andrewv@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit b0f18eee6fc1ee21c07abb55e9ccabc9ed9c09f0 upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8823 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:35:34 +00:00
Bart Van Assche
98844e3456 qla2x00t-32gbit: fix FW resource count values
This patch fixes issue where current and original exchanges count
were swapped for intiator and targets.

Also fix IOCB count for current and original which were swapped.

Link: https://lore.kernel.org/r/20200226224022.24518-9-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit ce1ee122e0f048fc67c1259489f0802a28049bfd upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8822 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:35:00 +00:00
Bart Van Assche
99aaaf0a06 qla2x00t-32gbit: Use a dedicated interrupt handler for 'handshake-required' ISPs
There's no point checking flags.disable_msix_handshake in the
interrupt handler hot-path.  Instead perform the check during
queue-pair instantiation and use the proper interrupt handler.

Link: https://lore.kernel.org/r/20200226224022.24518-8-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Andrew Vasquez <andrewv@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

[ commit 7b2a73963c91cf6bad6b8f58636560cd1f3cf319 upstream ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8821 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-03-07 21:34:25 +00:00