Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Jan 2021 14:03:37 GMT
From:      Gordon Bergling <gbe@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 1f73236b0302 - main - Add a manual page for axp(4) / AMD 10G Ethernet driver
Message-ID:  <202101241403.10OE3bOD074105@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by gbe (doc committer):

URL: https://cgit.FreeBSD.org/src/commit/?id=1f73236b0302cdf47630c99687c2dfd4e514ab54

commit 1f73236b0302cdf47630c99687c2dfd4e514ab54
Author:     Gordon Bergling <gbe@FreeBSD.org>
AuthorDate: 2021-01-24 13:57:16 +0000
Commit:     Gordon Bergling <gbe@FreeBSD.org>
CommitDate: 2021-01-24 13:57:16 +0000

    Add a manual page for axp(4) / AMD 10G Ethernet driver
    
    Submitted by:   Rajesh Kumar <rajesh1 dot kumar at amd dot com>
    Reviewed by:    bcr, brueffer, rpokala
    MFC after:      2 weeks
    Differential Revision:  https://reviews.freebsd.org/D27800
---
 share/man/man4/Makefile |   1 +
 share/man/man4/axp.4    | 225 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 226 insertions(+)

diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index ffc7a08292e9..10034a72d608 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -69,6 +69,7 @@ MAN=	aac.4 \
 	aue.4 \
 	axe.4 \
 	axge.4 \
+	axp.4 \
 	bce.4 \
 	bcma.4 \
 	bfe.4 \
diff --git a/share/man/man4/axp.4 b/share/man/man4/axp.4
new file mode 100644
index 000000000000..598e6a968e7a
--- /dev/null
+++ b/share/man/man4/axp.4
@@ -0,0 +1,225 @@
+.\" Copyright (c) 2020, Advanced Micro Devices Inc.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions are met:
+.\"
+.\" 1. Redistributions of source code must retain the above copyright notice,
+.\"    this list of conditions and the following disclaimer.
+.\"
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\"
+.\" 3. Neither the name of Advanced Micro Devices Inc., nor the names of its
+.\"    contributors may be used to endorse or promote products derived from
+.\"    this software without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+.\" POSSIBILITY OF SUCH DAMAGE.
+.\"
+.\" * Other names and brands may be claimed as the property of others.
+.\"
+.Dd January 24, 2021
+.Dt AXP 4
+.Os
+.Sh NAME
+.Nm axp
+.Nd "Advanced Micro Devices 10G Ethernet driver"
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device iflib"
+.Cd "device axp"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+if_axp_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver enables PCI-E based 10G Ethernet controller inbuilt in the
+AMD EPYC processors.
+.Pp
+The following features are supported.
+.Pp
+.Bl -bullet -compact
+.It
+1G/10G SFP+ Link
+.It
+Jumbo frames (9000 Bytes)
+.It
+Transmit and Receive checksum offload
+.It
+TCP segmentation offload (TSO)
+.It
+VLAN tag insertion/extraction
+.It
+VLAN checksum offload
+.It
+VLAN TSO
+.It
+Receive side steering (RSS)
+.It
+IPV4 and IPV6 capable
+.It
+MSI-X interrupts
+.It
+Split header
+.El
+.Pp
+All the above mentioned features are enabled by default.
+.Pp
+For hardware related questions, please refer the documentation supplied
+along with AMD EPYC processors.
+.Sh SYSCTL VARIABLES
+The following variables are available as
+.Xr sysctl 8
+variables:
+.Bl -tag -width indent
+.It Va dev.ax.X.mac_stats
+Dumps the transmit and receive statistics counter values for the controller.
+This includes statistics specific to each transmit and receive queue.
+.It Va dev.ax.X.channels_info
+Dumps the permissible and default configured transmit and receive channel
+information.
+.It Va dev.ax.X.ringparam_info
+Dumps the permissible and default configured descriptor information for the
+transmit and receive queue.
+.It Va dev.ax.X.link_ksettings_info
+Dumps the current link setting like link mode, speed, duplex settings.
+.It Va dev.ax.X.pauseparam_info
+Dumps the current flow-control settings.
+.It Va dev.ax.X.coalesce_info
+Dumps the current interrupt coalescing settings.
+.It Va dev.ax.X.link_info
+Dumps the current state of the Link.
+.It Va dev.ax.X.drv_info
+Dumps the driver and controller firmware version information.
+.It Va dev.ax.X.YYYY_register
+.It Va dev.ax.X.YYYY_register_values
+Sysctl to dump a specific register from a specific block of the controller.
+YYYY specifies the block.
+The following blocks are supported.
+.Bl -bullet -compact
+.It
+xpcs
+.It
+xgmac
+.It
+xprop
+.It
+xi2c
+.El
+.Pp
+Set the offset of the register to the first variable, and then read the value
+of the register by reading the second variable.
+.It Va dev.ax.X.axgbe_debug_level
+Configure the log-level for the driver.
+Default is 0.
+Supports 0-3.
+.It Va dev.ax.X.single_fl
+This variable must be set before loading the driver, either via
+.Xr loader.conf 5
+or through the use of
+.Xr kenv 1 .
+This cannot be modified when driver is loaded.
+.Pp
+Setting this variable in
+.Xr loader.conf 5
+needs the system to be restarted to take effect.
+When using
+.Xr kenv 1 ,
+use the wrapper variable
+.Va dev.ax.single_fl\&,
+which will configure all AMD interfaces with single freelist per receive queue.
+Default is 2 freelist per receive queue.
+.Pp
+This variable is to configure the interface when single freelist is needed.
+(For Eg. netmap).
+Basically, this will control the software behavior of how the receive
+descriptors are used.
+.Pp
+Setting this variable to 1, will use 1 Freelist per receive queue.
+.Pp
+Setting this variable to 0, will use 2 Freelist per receive queue.
+.Pp
+Based on the setting, the receive buffers are programmed accordingly on the
+received descriptors.
+.Pp
+By default, this variable will be set to 0, meaning the interfaces will be
+configured for regular data traffic (not netmap traffic).
+.It Va dev.ax.X.sph_enabled
+This variable must be set before loading the driver, either via
+.Xr loader.conf 5
+or through the use of
+.Xr kenv 1 .
+This cannot be modified when driver is loaded.
+.Pp
+Setting this variable in
+.Xr loader.conf 5
+needs the system to be restarted to take effect.
+When using
+.Xr kenv 1 ,
+use the wrapper variable
+.Va dev.ax.sph_enable\&,
+which will configure(enable/disable) split header support in all
+AMD interfaces.
+.Pp
+This variable is to control enable/disable of the split header feature in
+the interface.
+.Pp
+Setting this variable to 1, will enable split header feature.
+.Pp
+Setting this variable to 0, will disable split header feature.
+.Pp
+By default, this variable will be set to 1, meaning the Split header support be
+enabled.
+.Pp
+NOTE: It is recommended to use this variable only when
+.Va single_fl\&
+is configured.
+Otherwise let it be default value.
+.El
+.Sh SEE ALSO
+.Xr arp 4 ,
+.Xr iflib 4 ,
+.Xr netmap 4 ,
+.Xr vlan 4 ,
+.Xr ifconfig 8
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Fx 13.0 .
+.Pp
+Another version of the driver is already present in
+.Fx .
+This driver was named as "axgbe" earlier, which is renamed as "axa" now.
+This driver is for the ACPI based Ethernet controllers in the previous/older
+version of the hardware.
+This driver is authored by
+.Aq Mt andrew@FreeBSD.org .
+.Sh AUTHORS
+The
+.Nm
+device driver was written by
+.An Advanced Micro Devices Inc .
+.Pp
+For any issues and support requirements, email the details to
+.Aq Mt rajesh1.kumar@amd.com .



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202101241403.10OE3bOD074105>