mirror of
https://github.com/opnsense/src.git
synced 2026-02-18 18:20:26 -05:00
cxgbe(4): Add two new transceiver types.
Future firmwares will report these types to the driver. These transceivers work already but are misidentified as a different type. Sponsored by: Chelsio Communications (cherry picked from commit c22b297062e1440676973a8aa89cbad1571e22f9)
This commit is contained in:
parent
81789c2794
commit
47cdd7a9eb
2 changed files with 9 additions and 1 deletions
|
|
@ -7820,6 +7820,8 @@ enum fw_port_module_type {
|
|||
FW_PORT_MOD_TYPE_TWINAX_PASSIVE = 0x4,
|
||||
FW_PORT_MOD_TYPE_TWINAX_ACTIVE = 0x5,
|
||||
FW_PORT_MOD_TYPE_LRM = 0x6,
|
||||
FW_PORT_MOD_TYPE_LR_SIMPLEX = 0x7,
|
||||
FW_PORT_MOD_TYPE_DR = 0x8,
|
||||
FW_PORT_MOD_TYPE_ERROR = M_FW_PORT_CMD_MODTYPE - 3,
|
||||
FW_PORT_MOD_TYPE_UNKNOWN = M_FW_PORT_CMD_MODTYPE - 2,
|
||||
FW_PORT_MOD_TYPE_NOTSUPPORTED = M_FW_PORT_CMD_MODTYPE - 1,
|
||||
|
|
|
|||
|
|
@ -3549,6 +3549,7 @@ port_mword(struct port_info *pi, uint32_t speed)
|
|||
/* Pluggable transceiver */
|
||||
switch (pi->mod_type) {
|
||||
case FW_PORT_MOD_TYPE_LR:
|
||||
case FW_PORT_MOD_TYPE_LR_SIMPLEX:
|
||||
switch (speed) {
|
||||
case FW_PORT_CAP32_SPEED_1G:
|
||||
return (IFM_1000_LX);
|
||||
|
|
@ -3605,6 +3606,10 @@ port_mword(struct port_info *pi, uint32_t speed)
|
|||
if (speed == FW_PORT_CAP32_SPEED_10G)
|
||||
return (IFM_10G_LRM);
|
||||
break;
|
||||
case FW_PORT_MOD_TYPE_DR:
|
||||
if (speed == FW_PORT_CAP32_SPEED_100G)
|
||||
return (IFM_100G_DR);
|
||||
break;
|
||||
case FW_PORT_MOD_TYPE_NA:
|
||||
MPASS(0); /* Not pluggable? */
|
||||
/* fall throough */
|
||||
|
|
@ -12224,7 +12229,8 @@ t4_os_portmod_changed(struct port_info *pi)
|
|||
struct vi_info *vi;
|
||||
if_t ifp;
|
||||
static const char *mod_str[] = {
|
||||
NULL, "LR", "SR", "ER", "TWINAX", "active TWINAX", "LRM"
|
||||
NULL, "LR", "SR", "ER", "TWINAX", "active TWINAX", "LRM",
|
||||
"LR_SIMPLEX", "DR"
|
||||
};
|
||||
|
||||
KASSERT((pi->flags & FIXED_IFMEDIA) == 0,
|
||||
|
|
|
|||
Loading…
Reference in a new issue