Lines Matching +full:auto +full:- +full:poll

33 framework provides a means for implementing high-performance networking
75 .Ss High-Level Design
76 At a high-level, a device driver is chiefly concerned with three general
78 .Bl -enum -offset indent
94 Configuration of a device, such as whether auto-negotiation should be
138 structure and the corresponding NULL-terminated
204 .Bd -literal -offset indent
303 .Bl -bullet -offset indent -compact
340 interrupt or by being asked to poll for frames.
346 In addition to the per-packet flow described below, there are certain
353 During a single interrupt or poll request, a device driver should process
356 .Bl -enum -offset indent
364 It is recommended that this is performed once per interrupt or poll for
365 the entire region and not on a per-packet basis.
499 can make more sense to just actively poll the device, asking for more packets
557 .Ss Link Speed and Auto-negotiation
561 .Em auto-negotiation ,
567 .Bl -enum
576 perform auto-negotiation.
578 A user can control what speeds a device advertises via auto-negotiation
579 and whether or not it performs auto-negotiation at all by using a series
595 family of properties, but they are read-only and indicate what the
645 Several of the statistics that are queried relate to auto-negotiation and
669 various link properties such as the MTU, auto-negotiation state, and
722 .Bl -tag -width Ds
725 both IPv4 and IPv6 UDP and TCP packets; however, it requires the pseudo-header
727 The pseudo-header checksum will be available for the mblk_t when calling
735 outgoing IPv4 UDP or TCP packets only, and does not require a pseudo-header
743 outgoing IPv6 UDP or TCP packets only, and does not require a pseudo-header
811 .Bd -literal -offset indent
823 .Bl -tag -width Dv -offset indent
842 .Bd -literal -offset indent
845 .Bd -filled -offset indent
855 .Bd -literal -offset indent
858 .Bd -filled -offset indent
878 capability is very important for implementing a high-performing device
885 While simple networking devices only have a single ring, most high-speed
910 .Bl -bullet -offset -indent
923 standards such as SFP, QSFP, QSFP-DD, etc., which often contain
954 Many of the properties in the system are focused around auto-negotiation and
967 Many of the properties listed below are read-only.
968 Each property indicates whether it's read-only or it's read/write.
972 In particular, all properties that relate to auto-negotiation and are read/write
974 link speeds are auto-negotiated.
987 .Bl -hang -width Ds
989 .Bd -filled -compact
993 .Sy Read-Only
1003 .Bl -tag -width Ds
1016 .Bd -filled -compact
1020 .Sy Read-Only
1029 .Bd -filled -compact
1033 .Sy Read-Only
1043 .Bl -tag -width Ds
1055 If auto-negotiation is in use, it should have completed.
1059 .Bd -filled -compact
1063 .Sy Read-Only
1069 The type of media is class-specific and determined based on the
1075 The media is always read-only.
1076 This property is not used to control how auto-negotiation should be
1077 performed, instead the existing speed-based properties are used instead.
1078 This property should be updated after auto-negotiation has completed.
1083 SFP-based device.
1085 therefore the driver can't distinguish between say 40GBASE-SR4 and
1086 40GBASE-LR4, then drivers should return that the media is unknown.
1089 often used between a MAC and a PHY, but also for chip-to-chip
1095 Currently media values are defined for Ethernet-based devices and use
1103 .Bl -tag -width Ds
1116 Traditional 10 Mbit/s Ethernet based utilizing CAT-3 cabling.
1124 pairs over a CAT-5 cable.
1127 100 Mbit/s Ethernet operating over multi-mode fiber.
1130 This is a general term that covers operating in one of the 100BASE-?X
1133 100BASE-TX and 100BASE-FX.
1134 If the driver can determine if it is operating with a BASE-T or fiber
1137 This is an uncommon half-duplex variant of 100 Mbit/s Ethernet that
1138 operates over CAT-3 cable using four twisted pairs.
1142 requires two twisted pairs, but unlike 100BASE-TX requires CAT-3 cables.
1149 This form of 100 Mbit/s Ethernet is generally used for chip-to-chip
1151 .Pq Serial gigabit media-independent interface
1154 This is a general catch-all for all 1 Gbit/s fiber-based operation.
1156 traditional 802.3-compatible PHYs.
1160 Traditional 1 Gbit/s Ethernet that utilizes a CAT-5 cable with four
1174 1 Gbit/s Ethernet operating over a pair of multi-mode fibers, one for
1177 1 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1180 1 Gbit/s Ethernet operating over a single piece of single-mode fiber.
1181 This media operates bi-directionally as opposed to how 1000BASE-LX and
1182 1000BASE-SX operate.
1185 chip-to-chip connectivity.
1187 2.5 Gbit/s Ethernet based on four copper twisted-pairs.
1194 This is a variant of 2.5 Gbit/s Ethernet that took the 1000BASE-X IEEE
1198 5.0 Gbit/s Ethernet based on four copper twisted-pairs.
1206 CAT-6a cables.
1209 10 Gbit/s Ethernet operating over a pair of multi-mode fibers, one for
1213 10 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1218 10 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1223 10 Gbit/s Ethernet operating over a pair of multi-mode fibers, one for
1226 10GBASE-SR.
1239 SFP-compatible cable.
1241 Defined in SFF-8431.
1243 10 Gbit/s Ethernet that is built using a short-range active
1244 optical cable that is SFP+-compatible.
1245 Defined in SFF-8431.
1248 active component that allows it go longer distances than 10GBASE-CR.
1249 Defined in SFF-8431.
1253 Sometimes used for chip-to-chip interconnects.
1257 SFP-based transceiver.
1258 Defined in SFF-8431.
1261 XFP-based transceiver.
1262 Defined in INF-8077i
1265 25 Gbit/s Ethernet based upon four twisted pair cables using CAT-8
1269 25 Gbit/s Ethernet operating over a pair of multi-mode fibers, one for
1273 25 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1278 25 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1290 25 Gbit/s Ethernet based that is built using a short-range active
1291 optical cable that is SFP28-compatible.
1292 Defined loosely by SFF-8402 and often utilizes 25GBASE-SR.
1295 active component that allows it go longer distances than 25GBASE-CR.
1296 Defined loosely by SFF-8402.
1299 for chip-to-chip connectivity.
1302 40 Gbit/s Ethernet based upon four twisted-pairs of CAT-8 cables.
1307 This is generally used with a QSFP+ connector defined in SFF-8635.
1314 40 Gbit/s Ethernet based upon using four pairs of multi-mode fiber, each
1320 40 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1327 40 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1334 40 Gbit/s Ethernet based upon using one pair of multi-mode fibers, one
1340 40 Gbit/s Ethernet based upon a QSFP+ based cable with built-in
1345 Gbit/s with some additional component compared to 40GBASE-CR4.
1348 between a MAC and a PHY or for chip-to-chip connectivity.
1365 50 Gbit/s Ethernet based upon using four pairs of multi-mode fiber, each
1371 50 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1377 50 Gbit/s Ethernet generally based upon a QSFP+ based cable with built-in
1382 25 Gbit/s with some additional component compared to 50GBASE-CR2.
1391 50 Gbit/s Ethernet operating over a pair of multi-mode fibers, one for
1395 50 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1400 50 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1405 50 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1410 50 Gbit/s Ethernet that is built using a short-range active optical
1416 such as a retimer or redriver when compared to 50GBASE-CR.
1422 100 Gbit/s Ethernet based upon using ten pairs of multi-mode fiber, each
1426 100 Gbit/s Ethernet based upon using four pairs of multi-mode fiber,
1431 100 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1438 100 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1449 100 Gbit/s signalling used for chip-to-chip and chip-to-module
1459 short-range optical transceivers.
1464 that unlike 100GBASE-CR4 has an active component such as a retimer or
1475 100 Gbit/s Ethernet based upon using two pairs of multi-mode fiber,
1487 100 Gbit/s Ethernet operating over a pair of multi-mode fibers, one for
1489 The maximum fiber length is 60-100m depending on the fiber type
1493 100 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1499 100 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1504 100 Gbit/s Ethernet operating over a pair of single-mode fibers, one for
1519 200 Gbit/s Ethernet based upon using four pairs of multi-mode fiber,
1524 200 Gbit/s Ethernet based upon using four pairs of single-mode fiber,
1529 200 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1536 200 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1543 200 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1551 Used for chip-to-chip and chip-to-module connections.
1563 200 Gbit/s Ethernet based upon using two pairs of multi-mode fiber,
1569 Used for chip-to-chip and chip-to-module connections.
1576 200 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1579 Gbit/s signals and generally based upon a QSFP-DD connector.
1583 200 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1586 Gbit/s signals and generally based upon a QSFP-DD connector.
1590 200 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1593 Gbit/s signals and generally based upon a QSFP-DD connector.
1598 Used for chip-to-chip and chip-to-module connections.
1610 400 Gbit/s Ethernet based upon using four pairs of multi-mode fiber,
1615 400 Gbit/s Ethernet based upon using four pairs of single-mode fiber,
1621 400 Gbit/s Ethernet based upon using one pair of single-mode fibers, one
1629 Used for chip-to-chip and chip-to-module connections.
1633 .Bd -filled -compact
1643 perform auto-negotiation.
1646 indicates that auto-negotiation is disabled.
1648 .Sy non-zero
1649 value indicates that auto-negotiation is enabled.
1650 Devices should generally default to enabling auto-negotiation.
1658 .Bd -filled -compact
1692 .Bd -filled -compact
1705 auto-negotiation.
1709 .Bl -tag -width Ds
1727 potentially perform auto-negotiation again.
1729 .Bd -filled -compact
1744 .Bl -tag -width Ds
1748 The FEC coding to use is auto-negotiated,
1753 The link may use Reed-Solomon FEC coding.
1755 The link may use Base-R coding, also common referred to as FireCode.
1766 .Bd -filled -compact
1770 .Sy Read-Only
1781 The remaining properties are all about various auto-negotiation link
1795 speed and trigger any kind of link reset and auto-negotiation, if enabled, to
1800 set of properties are read-only properties.
1808 .Sx Link Speed and Auto-negotiation
1812 .Bl -hang -width Ds
1814 .Bd -filled -compact
1818 .Sy Read-Only
1823 property describes whether or not 10 Mbit/s half-duplex support is
1826 .Bd -filled -compact
1835 property describes whether or not 10 Mbit/s half-duplex support is
1838 .Bd -filled -compact
1842 .Sy Read-Only
1847 property describes whether or not 10 Mbit/s full-duplex support is
1850 .Bd -filled -compact
1859 property describes whether or not 10 Mbit/s full-duplex support is
1862 .Bd -filled -compact
1866 .Sy Read-Only
1871 property describes whether or not 100 Mbit/s half-duplex support is
1874 .Bd -filled -compact
1883 property describes whether or not 100 Mbit/s half-duplex support is
1886 .Bd -filled -compact
1890 .Sy Read-Only
1895 property describes whether or not 100 Mbit/s full-duplex support is
1898 .Bd -filled -compact
1907 property describes whether or not 100 Mbit/s full-duplex support is
1910 .Bd -filled -compact
1914 .Sy Read-Only
1920 100BASE-T4 standard is
1923 .Bd -filled -compact
1933 100BASE-T4 standard is
1936 .Bd -filled -compact
1940 .Sy Read-Only
1945 property describes whether or not 1 Gbit/s half-duplex support is
1948 .Bd -filled -compact
1957 property describes whether or not 1 Gbit/s half-duplex support is
1960 .Bd -filled -compact
1964 .Sy Read-Only
1969 property describes whether or not 1 Gbit/s full-duplex support is
1972 .Bd -filled -compact
1981 property describes whether or not 1 Gbit/s full-duplex support is
1984 .Bd -filled -compact
1988 .Sy Read-Only
1993 property describes whether or not 2.5 Gbit/s full-duplex support is
1996 .Bd -filled -compact
2005 property describes whether or not 2.5 Gbit/s full-duplex support is
2008 .Bd -filled -compact
2012 .Sy Read-Only
2017 property describes whether or not 5.0 Gbit/s full-duplex support is
2020 .Bd -filled -compact
2029 property describes whether or not 5.0 Gbit/s full-duplex support is
2032 .Bd -filled -compact
2036 .Sy Read-Only
2041 property describes whether or not 10 Gbit/s full-duplex support is
2044 .Bd -filled -compact
2053 property describes whether or not 10 Gbit/s full-duplex support is
2056 .Bd -filled -compact
2060 .Sy Read-Only
2065 property describes whether or not 40 Gbit/s full-duplex support is
2068 .Bd -filled -compact
2077 property describes whether or not 40 Gbit/s full-duplex support is
2080 .Bd -filled -compact
2084 .Sy Read-Only
2089 property describes whether or not 100 Gbit/s full-duplex support is
2092 .Bd -filled -compact
2101 property describes whether or not 100 Gbit/s full-duplex support is
2104 .Bd -filled -compact
2108 .Sy Read-Only
2113 property describes whether or not 200 Gbit/s full-duplex support is
2116 .Bd -filled -compact
2125 property describes whether or not 200 Gbit/s full-duplex support is
2128 .Bd -filled -compact
2132 .Sy Read-Only
2137 property describes whether or not 400 Gbit/s full-duplex support is
2140 .Bd -filled -compact
2149 property describes whether or not 400 Gbit/s full-duplex support is
2155 These private properties are device-specific properties.
2209 The following statistics are based on MIB-II statistics from both RFC
2211 .Bl -tag -width Ds
2257 .Bl -tag -width Ds
2260 full-duplex operation.
2263 half-duplex operation.
2266 full-duplex operation.
2269 full-duplex operation.
2272 half-duplex operation.
2275 100BASE-T4 operation.
2278 full-duplex operation.
2281 full-duplex operation.
2284 half-duplex operation.
2287 full-duplex operation.
2290 full-duplex operation.
2293 full-duplex operation.
2298 Indicates that the device is advertising support for auto-negotiation.
2311 Indicates the device supports 1 Gbit/s full-duplex operation.
2313 Indicates the device supports 1 Gbit/s half-duplex operation.
2315 Indicates the device supports 100 Mbit/s full-duplex operation.
2317 Indicates the device supports 100 Gbit/s full-duplex operation.
2319 Indicates the device supports 100 Mbit/s half-duplex operation.
2321 Indicates the device supports 100 Mbit/s 100BASE-T4 operation.
2323 Indicates the device supports 10 Mbit/s full-duplex operation.
2325 Indicates the device supports 10 Gbit/s full-duplex operation.
2327 Indicates the device supports 10 Mbit/s half-duplex operation.
2329 Indicates the device supports 2.5 Gbit/s full-duplex operation.
2331 Indicates the device supports 40 Gbit/s full-duplex operation.
2333 Indicates the device supports 5.0 Gbit/s full-duplex operation.
2338 auto-negotiation.
2366 auto-negotiation.
2375 Indicates the remote device supports 1 Gbit/s full-duplex operation.
2377 Indicates the remote device supports 1 Gbit/s half-duplex operation.
2379 Indicates the remote device supports 100 Mbit/s full-duplex operation.
2381 Indicates the remote device supports 100 Gbit/s full-duplex operation.
2383 Indicates the remote device supports 100 Mbit/s half-duplex operation.
2385 Indicates the remote device supports 100 Mbit/s 100BASE-T4 operation.
2387 Indicates the remote device supports 10 Mbit/s full-duplex operation.
2389 Indicates the remote device supports 10 Gbit/s full-duplex operation.
2391 Indicates the remote device supports 10 Mbit/s half-duplex operation.
2393 Indicates the remote device supports 2.5 Gbit/s full-duplex operation.
2395 Indicates the remote device supports 40 Gbit/s full-duplex operation.
2397 Indicates the remote device supports 5.0 Gbit/s full-duplex operation.
2403 auto-negotiation.
2457 .Bl -enum -offset indent
2459 Drivers should lay out memory so that the IP header will be 4-byte
2462 4-byte aligned address; however, a DMA allocation will be at a 4-
2463 or 8-byte aligned address by default.
2465 frame, leaving the IP header at a 2-byte alignment if the Ethernet frame
2474 that the IP header will be 4-byte aligned.
2511 .Bl -bullet -offset indent
2529 .Bl -enum -offset indent
2588 Other devices may have a register that software can poll.
2589 In the cases where polling is required, driver writers should try not to poll
2590 too frequently and should generally only poll when the device is actively being
2631 .Bl -enum -offset indent
2655 device-specific means.
2659 This includes things like the current MTU, advertised auto-negotiation speeds,
2668 When a non-fatal error occurs, then the device driver should submit an
2893 .%T TCP/IP-based internets: MIB-II
2899 .%T RFC 1573 Evolution of the Interfaces Group of MIB-II
2904 .%T RFC 1643 Definitions of Managed Objects for the Ethernet-like