7e390f677e
Submitted by: rpokala@ MFC after: 2 weeks
115 lines
3.9 KiB
Groff
115 lines
3.9 KiB
Groff
.\"
|
|
.\" Copyright (c) 2016-2019 Alexander Motin <mav@FreeBSD.org>
|
|
.\" 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.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.\"
|
|
.Dd November 9, 2019
|
|
.Dt NTB_TRANSPORT 4
|
|
.Os
|
|
.Sh NAME
|
|
.Nm ntb_transport
|
|
.Nd Packet-oriented transport for Non-Transparent Bridges
|
|
.Sh SYNOPSIS
|
|
To compile this driver into your kernel,
|
|
place the following lines in your kernel configuration file:
|
|
.Bd -ragged -offset indent
|
|
.Cd "device ntb"
|
|
.Cd "device ntb_transport"
|
|
.Ed
|
|
.Pp
|
|
Or, to load the driver as a module at boot, place the following line in
|
|
.Xr loader.conf 5 :
|
|
.Bd -literal -offset indent
|
|
ntb_transport_load="YES"
|
|
.Ed
|
|
.Pp
|
|
The following tunables are settable from the
|
|
.Xr loader 8 :
|
|
.Bl -ohang
|
|
.It Va hw.ntb_transport.debug_level
|
|
Driver debug level.
|
|
The default value is 0, higher means more verbose.
|
|
.It Va hw.ntb_transport.max_mw_size
|
|
Limits maximum memory window usage.
|
|
Allocation of big physically contiguous memory buffer may be a problem,
|
|
while too big buffers makes no much sense for low latency network interface.
|
|
.It Va hint.ntb_transport. Ns Ar X Ns Va .config
|
|
Configures a set of the transport consumers, separated by commas.
|
|
Each consumer can be configured as: "[<name>][:<queues>]", where:
|
|
.Va name
|
|
is a name of the driver to attach (empty means any),
|
|
.Va queues
|
|
is a number of queues to allocate (empty means automatic).
|
|
The default configuration is empty string, which means single consumer
|
|
with one queue per memory window, allowing any driver to attach.
|
|
.It Va hint.ntb_transport. Ns Ar X Ns Va .compact
|
|
Non-zero value enables compact version of scratchpad protocol, using half
|
|
as many registers.
|
|
Enabled automatically if there is not enough registers to negotiate all
|
|
available memory windows.
|
|
The compact version does not support memory windows of 4GB and above.
|
|
.El
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
driver attaches on top of the
|
|
.Nm ntb
|
|
driver to utilize its resources to create a set of bidirectional queues,
|
|
delivering packets between the systems.
|
|
The primary purpose of this driver is to be used by
|
|
.Nm if_ntb
|
|
network interface, but other consumers may also be developed using KPI.
|
|
.Pp
|
|
Each
|
|
.Nm
|
|
require from underlying
|
|
.Nm ntb
|
|
instance:
|
|
.Bl -bullet -compact
|
|
.It
|
|
1 or more memory windows;
|
|
.It
|
|
6 scratchpads, plus 2 more for each additional memory window,
|
|
or 3 plus 1 in case of compact protocol;
|
|
.It
|
|
1 doorbell for each memory window or configured queue.
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr if_ntb 4 ,
|
|
.Xr ntb 4 ,
|
|
.Xr ntb_hw_amd 4 ,
|
|
.Xr ntb_hw_intel 4 ,
|
|
.Xr ntb_hw_plx 4
|
|
.Sh AUTHORS
|
|
.An -nosplit
|
|
The
|
|
.Nm
|
|
driver was developed by Intel and originally written by
|
|
.An Carl Delsey Aq Mt carl@FreeBSD.org .
|
|
Later improvements were done by
|
|
.An Conrad E. Meyer Aq Mt cem@FreeBSD.org
|
|
and
|
|
.An Alexander Motin Aq Mt mav@FreeBSD.org .
|