git: f4592cd2a4b0 - stable/13 - cxgbe(4): Keep link configuration compatible with really old firmwares.
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 28 Feb 2022 06:55:40 UTC
The branch stable/13 has been updated by np:
URL: https://cgit.FreeBSD.org/src/commit/?id=f4592cd2a4b040cdc279bc53d0a5905c350e7090
commit f4592cd2a4b040cdc279bc53d0a5905c350e7090
Author: Navdeep Parhar <np@FreeBSD.org>
AuthorDate: 2021-11-11 00:10:41 +0000
Commit: Navdeep Parhar <np@FreeBSD.org>
CommitDate: 2022-02-28 06:45:20 +0000
cxgbe(4): Keep link configuration compatible with really old firmwares.
Sponsored by: Chelsio Communications
(cherry picked from commit 8e76bae0b72e53da80c48ba138b1cfd712724df4)
---
sys/dev/cxgbe/common/t4_hw.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/sys/dev/cxgbe/common/t4_hw.c b/sys/dev/cxgbe/common/t4_hw.c
index d6f85a1fcd34..e2b55dc71eba 100644
--- a/sys/dev/cxgbe/common/t4_hw.c
+++ b/sys/dev/cxgbe/common/t4_hw.c
@@ -3959,6 +3959,14 @@ int t4_link_l1cfg(struct adapter *adap, unsigned int mbox, unsigned int port,
if (lc->requested_fec & FEC_MODULE)
fec |= fec_to_fwcap(lc->fec_hint);
}
+
+ /*
+ * This is for compatibility with old firmwares. The original
+ * way to request NO_FEC was to not set any of the FEC bits. New
+ * firmwares understand this too.
+ */
+ if (fec == FW_PORT_CAP32_FEC_NO_FEC)
+ fec = 0;
}
/* Force AN on for BT cards. */