1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-12 14:29:28 +00:00

Add TWINAX (Twin Axial Copper for 10G networking) media types.

Add code to the Chelsio driver so that it can recognize different
module types which may be plugged into it, including SR, LR lasers
and TWINAX copper cables.

Obtained from:	Chelsio Inc.
MFC after:	1 week
This commit is contained in:
George V. Neville-Neil 2008-12-17 22:59:29 +00:00
parent f812e06742
commit a6c8d9978a
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=186260

View File

@ -145,6 +145,11 @@ uint64_t ifmedia_baudrate(int);
#define IFM_10G_SR 19 /* 10GBase-SR 850nm Multi-mode */
#define IFM_10G_CX4 20 /* 10GBase CX4 copper */
#define IFM_2500_SX 21 /* 2500BaseSX - multi-mode fiber */
#define IFM_10G_TWINAX 22 /* 10GBase Twinax copper */
#define IFM_10G_TWINAX_LONG 23 /* 10GBase Twinax Long copper */
#define IFM_10G_LRM 24 /* 10GBase-LRM 850nm Multi-mode */
#define IFM_UNKNOWN 25 /* New media types that have not been defined yet */
/* note 31 is the max! */
@ -349,6 +354,10 @@ struct ifmedia_description {
{ IFM_10G_SR, "10Gbase-SR" }, \
{ IFM_10G_CX4, "10Gbase-CX4" }, \
{ IFM_2500_SX, "2500BaseSX" }, \
{ IFM_10G_LRM, "10Gbase-LRM" }, \
{ IFM_10G_TWINAX, "10Gbase-Twinax" }, \
{ IFM_10G_TWINAX_LONG, "10Gbase-Twinax-Long" }, \
{ IFM_UNKNOWN, "Unknown" }, \
{ 0, NULL }, \
}
@ -603,6 +612,9 @@ struct ifmedia_baudrate {
{ IFM_ETHER | IFM_10G_SR, IF_Gbps(10ULL) }, \
{ IFM_ETHER | IFM_10G_CX4, IF_Gbps(10ULL) }, \
{ IFM_ETHER | IFM_2500_SX, IF_Mbps(2500ULL) }, \
{ IFM_ETHER | IFM_10G_TWINAX, IF_Gbps(10ULL) }, \
{ IFM_ETHER | IFM_10G_TWINAX_LONG, IF_Gbps(10ULL) }, \
{ IFM_ETHER | IFM_10G_LRM, IF_Gbps(10ULL) }, \
\
{ IFM_TOKEN | IFM_TOK_STP4, IF_Mbps(4) }, \
{ IFM_TOKEN | IFM_TOK_STP16, IF_Mbps(16) }, \