sif: Fix regressions in supporting fw from release 0.1.0.4 and earlier
Orabug:
23497496
This commit fixes two separate regressions in handling the old fw:
1) Teardown of the dne_qp happens only with older FWs because the newer
firmwares implements the dne_qp handling in fw, so
driver does not invoke the teardown code. This teardown code
uses generic calls that has been implicitly amended
to by the WA for Bug #4074, which also assumed that all QPs
subject to that call has a valid send queue. The DNE QPs don't
and this causes a null pointer exception, which is triggered
both during driver unload and as a side effect of lid changes.
2) EPSC support for SL to TSL mapping was introduced in EPSC API v.0.56
but was broken - this causes the driver to set wrong values
which leads to modify_qp errors. The fix is just to avoid putting
the map to use unless epsc version is >= 0.57.
Signed-off-by: Knut Omang <knut.omang@oracle.com>