Command Section

NTB_HW_PLX(4)          FreeBSD Kernel Interfaces Manual          NTB_HW_PLX(4)

NAME
     ntb_hw_plx - PLX/Avago/Broadcom Non-Transparent Bridge driver

SYNOPSIS
     To compile this driver into your kernel, place the following lines in
     your kernel configuration file:

           device ntb
           device ntb_hw_plx

     Or, to load the driver as a module at boot, place the following line in
     loader.conf(5):

           ntb_hw_plx_load="YES"

     The following tunables are settable from the loader(8):

     hint.ntb_hw.X.b2b
     Being set to 1 (default) tells the driver attached to Virtual Interface
     of the NTB that it works in NTB-to-NTB (back-to-back) mode, 0 -- NTB-to-
     Root Port.  Driver attached to Link Interface (visible from Root Port
     side) switches to NTB-to-Root Port mode automatically, but one attached
     to Virtual Interface can't detect what is on the other side and require
     external knowledge.

     hint.ntb_hw.X.split
     Being set above zero splits BAR2 into 2^x memory windows using Address
     Lookup Table (A-LUT).

DESCRIPTION
     The ntb_hw_plx driver provides support for the Non-Transparent Bridge
     (NTB) hardware in PLX PCIe bridge chips, which allow up to two of their
     PCIe ports to be switched from transparent to non-transparent bridge
     mode.  In this mode bridge looks not as a PCI bridge, but as PCI endpoint
     device.  The driver hides hardware details, exposing memory windows,
     scratchpads and doorbells of the other side via hardware independent KPI
     to ntb(4) subsystem.

     Each PLX NTB provides up to 2 64-bit or 4 32-bit memory windows to the
     other system's memory, 6 or 12 scratchpad registers and 16 doorbells to
     interrupt the other system.  If Address Lookup Table (A-LUT) is enabled,
     BAR2 can be split into several (up to 128) memory windows.  In NTB-to-NTB
     mode one of memory windows (or half of it, if bigger then 1MB) is
     consumed by the driver itself to access scratchpad and doorbell registers
     of the other side.

HARDWARE
     The following PLX/Avago/Broadcom chips are supported by the ntb_hw_plx
     driver:

        PEX 8713
        PEX 8717
        PEX 8725
        PEX 8733
        PEX 8749

     , but it may also work with other compatible ones.

CONFIGURATION
     The basic chip configuration should be done by serial EEPROM or via i2c.
     It includes enabling NTB on one or both sides (choosing between NTB-to-
     NTB (back-to-back) and NTB-to-Root Port modes) and configuring BARs
     sizes.

     The recommended mode is NTB-to-NTB mode, since while NTB-to-Root Port is
     generally supported by the driver, it require PCI hotplug handling on the
     Root Port, that may be difficult or cause different kinds of problems.

SEE ALSO
     if_ntb(4), ntb_transport(4), ntb(4),

AUTHORS
     The ntb_hw_plx driver was written by Alexander Motin <mav@FreeBSD.org>.

BUGS
     There is no way to protect your system from malicious behavior on the
     other system once the link is brought up.  Anyone with root or kernel
     access on the other system can read or write to any location on your
     system.  In other words, only connect two systems that completely trust
     each other.

FreeBSD 13.1-RELEASE-p6        November 9, 2019        FreeBSD 13.1-RELEASE-p6

Command Section

man2web Home...