summaryrefslogtreecommitdiffstats
path: root/sys/net
diff options
context:
space:
mode:
authorerj <erj@FreeBSD.org>2017-05-16 17:51:30 +0000
committererj <erj@FreeBSD.org>2017-05-16 17:51:30 +0000
commitc44273db25c27e5c888f8dbfa3d4499d4a768bc4 (patch)
treec2cfd9686a3f36b791b531a87f15dc6daff413ea /sys/net
parentdaf701637f4f8b9d28ed3f6dd5f860cea60adb44 (diff)
downloadFreeBSD-src-c44273db25c27e5c888f8dbfa3d4499d4a768bc4.zip
FreeBSD-src-c44273db25c27e5c888f8dbfa3d4499d4a768bc4.tar.gz
MFC r318147: Add several new media types to if_media.h
These include several 25G types (for active direct attach cables and LR modules), and a missing type for 10G active direct attach. Sponsored by: Intel Corporation
Diffstat (limited to 'sys/net')
-rw-r--r--sys/net/ieee8023ad_lacp.c4
-rw-r--r--sys/net/if_media.h12
2 files changed, 16 insertions, 0 deletions
diff --git a/sys/net/ieee8023ad_lacp.c b/sys/net/ieee8023ad_lacp.c
index c01cec1..2e426d3 100644
--- a/sys/net/ieee8023ad_lacp.c
+++ b/sys/net/ieee8023ad_lacp.c
@@ -1090,6 +1090,7 @@ lacp_compose_key(struct lacp_port *lp)
case IFM_10G_CR1:
case IFM_10G_ER:
case IFM_10G_SFI:
+ case IFM_10G_AOC:
key = IFM_10G_LR;
break;
case IFM_20G_KR2:
@@ -1114,6 +1115,9 @@ lacp_compose_key(struct lacp_port *lp)
case IFM_25G_CR:
case IFM_25G_KR:
case IFM_25G_SR:
+ case IFM_25G_LR:
+ case IFM_25G_ACC:
+ case IFM_25G_AOC:
key = IFM_25G_PCIE;
break;
case IFM_40G_CR4:
diff --git a/sys/net/if_media.h b/sys/net/if_media.h
index 8643995..16ff505 100644
--- a/sys/net/if_media.h
+++ b/sys/net/if_media.h
@@ -196,6 +196,10 @@ uint64_t ifmedia_baudrate(int);
#define IFM_25G_SR IFM_X(55) /* 25GBase-SR */
#define IFM_50G_CR2 IFM_X(56) /* 50GBase-CR2 */
#define IFM_50G_KR2 IFM_X(57) /* 50GBase-KR2 */
+#define IFM_25G_LR IFM_X(58) /* 25GBase-LR */
+#define IFM_10G_AOC IFM_X(59) /* 10G active optical cable */
+#define IFM_25G_ACC IFM_X(60) /* 25G active copper cable */
+#define IFM_25G_AOC IFM_X(61) /* 25G active optical cable */
/*
* Please update ieee8023ad_lacp.c:lacp_compose_key()
@@ -447,6 +451,10 @@ struct ifmedia_description {
{ IFM_25G_SR, "25GBase-SR" }, \
{ IFM_50G_CR2, "50GBase-CR2" }, \
{ IFM_50G_KR2, "50GBase-KR2" }, \
+ { IFM_25G_LR, "25GBase-LR" }, \
+ { IFM_10G_AOC, "10GBase-AOC" }, \
+ { IFM_25G_ACC, "25GBase-ACC" }, \
+ { IFM_25G_AOC, "25GBase-AOC" }, \
{ 0, NULL }, \
}
@@ -775,6 +783,10 @@ struct ifmedia_baudrate {
{ IFM_ETHER | IFM_25G_SR, IF_Gbps(25ULL) }, \
{ IFM_ETHER | IFM_50G_CR2, IF_Gbps(50ULL) }, \
{ IFM_ETHER | IFM_50G_KR2, IF_Gbps(50ULL) }, \
+ { IFM_ETHER | IFM_25G_LR, IF_Gbps(25ULL) }, \
+ { IFM_ETHER | IFM_10G_AOC, IF_Gbps(10ULL) }, \
+ { IFM_ETHER | IFM_25G_ACC, IF_Gbps(25ULL) }, \
+ { IFM_ETHER | IFM_25G_AOC, IF_Gbps(25ULL) }, \
\
{ IFM_TOKEN | IFM_TOK_STP4, IF_Mbps(4) }, \
{ IFM_TOKEN | IFM_TOK_STP16, IF_Mbps(16) }, \
OpenPOWER on IntegriCloud