Import mpr(4) driver P12 to P14 diff from vendor site.

This is mostly a version bump to stay in version number sync with firmware.
The only change there was cosmetic:  Display degraded speed message upon
receiving Active Cable Exception Event with DEGRADED reason code.

Discussed with:	slm@
MFC after:	1 week
This commit is contained in:
Alexander Motin 2017-03-06 19:39:31 +00:00
parent 59daefd7eb
commit 0656476aa6
4 changed files with 26 additions and 5 deletions

View File

@ -688,7 +688,10 @@ typedef struct _MPI26_EVENT_DATA_ACTIVE_CABLE_EXCEPT
MPI2_POINTER pMpi26EventDataActiveCableExcept_t;
/* defines for ReasonCode field */
#define MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER (0x00)
#define MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER (0x00)
#define MPI26_EVENT_ACTIVE_CABLE_PRESENT (0x01)
#define MPI26_EVENT_ACTIVE_CABLE_DEGRADED (0x02)
/* Hard Reset Received Event data */

View File

@ -651,14 +651,26 @@ mprsas_fw_work(struct mpr_softc *sc, struct mpr_fw_event_work *fw_event)
ace_event_data =
(pMpi26EventDataActiveCableExcept_t)fw_event->event_data;
if (ace_event_data->ReasonCode ==
MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER) {
mpr_printf(sc, "Currently an active cable with "
switch(ace_event_data->ReasonCode) {
case MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER:
{
mpr_printf(sc, "Currently a cable with "
"ReceptacleID %d cannot be powered and device "
"connected to this active cable will not be seen. "
"This active cable requires %d mW of power.\n",
ace_event_data->ReceptacleID,
ace_event_data->ActiveCablePowerRequirement);
break;
}
case MPI26_EVENT_ACTIVE_CABLE_DEGRADED:
{
mpr_printf(sc, "Currently a cable with "
"ReceptacleID %d is not running at optimal speed "
"(12 Gb/s rate)\n", ace_event_data->ReceptacleID);
break;
}
default:
break;
}
break;
}

View File

@ -95,6 +95,12 @@ struct mpr_table_lookup mpr_event_names[] = {
{"SasPhyCounter", 0x22},
{"GpioInterrupt", 0x23},
{"HbdPhyEvent", 0x24},
{"SasQuiesce", 0x25},
{"SasNotifyPrimitive", 0x26},
{"TempThreshold", 0x27},
{"HostMessage", 0x28},
{"PowerPerformanceChange", 0x29},
{"CableEvent", 0x34},
{NULL, 0},
{"Unknown Event", 0}
};

View File

@ -33,7 +33,7 @@
#ifndef _MPRVAR_H
#define _MPRVAR_H
#define MPR_DRIVER_VERSION "13.01.00.00-fbsd"
#define MPR_DRIVER_VERSION "15.01.00.00-fbsd"
#define MPR_DB_MAX_WAIT 2500