summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorVisa Hankala <visa@cvs.openbsd.org>2021-05-28 15:52:12 +0000
committerVisa Hankala <visa@cvs.openbsd.org>2021-05-28 15:52:12 +0000
commitc936d7c63d495f7441666a138433724ca1bc0081 (patch)
treeb8b73968e0ef860431deb6e4e6b8e32dd1512e10 /share
parente4c383111810f4e543b8bc537e8c43db38f9f5da (diff)
Add cad(4), a driver for Cadence GEM.
This initial revision targets the Zynq-7000, where the GEM implements single transmit and receive queues with 32-bit DMA addresses. The driver uses receive checksum offload, but transmit checksum offload is disabled because of a hardware quirk. Also, the hardware's receive path is prone to getting stuck if input cannot be handled quickly enough. The driver attempts to recover by restarting the receiver when no input has been seen for a while. OK kettenis@
Diffstat (limited to 'share')
-rw-r--r--share/man/man4/Makefile4
-rw-r--r--share/man/man4/cad.469
2 files changed, 71 insertions, 2 deletions
diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index ce1014935ce..4cef668149a 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile,v 1.798 2021/05/28 12:32:24 patrick Exp $
+# $OpenBSD: Makefile,v 1.799 2021/05/28 15:52:11 visa Exp $
MAN= aac.4 abcrtc.4 abl.4 ac97.4 acphy.4 acrtc.4 \
acpi.4 acpiac.4 acpials.4 acpiasus.4 acpibat.4 \
@@ -23,7 +23,7 @@ MAN= aac.4 abcrtc.4 abl.4 ac97.4 acphy.4 acrtc.4 \
bcmtmon.4 bdpmic.4 \
berkwdt.4 bge.4 bgw.4 bio.4 bpe.4 bktr.4 bmtphy.4 bnx.4 bnxt.4 \
boca.4 bpf.4 brgphy.4 bridge.4 brswphy.4 bse.4 bwfm.4 bwi.4 bytgpio.4 \
- cac.4 cas.4 cardbus.4 carp.4 ccp.4 ccpmic.4 cd.4 cdce.4 \
+ cac.4 cad.4 cas.4 cardbus.4 carp.4 ccp.4 ccpmic.4 cd.4 cdce.4 \
cduart.4 cfxga.4 \
ch.4 chvgpio.4 ciphy.4 ciss.4 clcs.4 clct.4 cmpci.4 \
com.4 cue.4 cwfg.4 cy.4 cz.4 \
diff --git a/share/man/man4/cad.4 b/share/man/man4/cad.4
new file mode 100644
index 00000000000..2ead7a1edfb
--- /dev/null
+++ b/share/man/man4/cad.4
@@ -0,0 +1,69 @@
+.\" $OpenBSD: cad.4,v 1.1 2021/05/28 15:52:11 visa Exp $
+.\"
+.\" Copyright (c) 2021 Visa Hankala
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd $Mdocdate: May 28 2021 $
+.Dt CAD 4
+.Os
+.Sh NAME
+.Nm cad
+.Nd Cadence 10/100/Gigabit Ethernet device
+.Sh SYNOPSIS
+.Cd "cad* at fdt?"
+.Sh DESCRIPTION
+The
+.Nm
+driver supports the Cadence Gigabit Ethernet MAC core found on some SoCs,
+including the following:
+.Pp
+.Bl -bullet -offset indent -compact
+.It
+Xilinx Zynq-7000
+.El
+.Pp
+The
+.Nm
+driver supports IPv4 receive IP/TCP/UDP checksum offload,
+and IPv6 receive TCP/UDP checksum offload.
+.Pp
+The following media types and options are supported,
+as given to
+.Xr ifconfig 8 :
+.Bl -tag -width autoselect -offset indent
+.It media autoselect
+Use auto-negotiation for speed and duplex (default).
+.It media 1000baseT mediaopt full-duplex
+Use 1000baseT on copper, full duplex.
+.It media 100baseTX mediaopt full-duplex
+Use 100baseTX on copper, full duplex.
+.It media 100baseTX mediaopt half-duplex
+Use 100baseTX on copper, half duplex.
+.It media 10baseT mediaopt full-duplex
+Use 10baseT on copper, full duplex.
+.It media 10baseT mediaopt half-duplex
+Use 10baseT on copper, half duplex.
+.El
+.Sh SEE ALSO
+.Xr arp 4 ,
+.Xr ifmedia 4 ,
+.Xr intro 4 ,
+.Xr netintro 4 ,
+.Xr hostname.if 5 ,
+.Xr ifconfig 8
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Ox 7.0