Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
NTB_HW_PLX(4)		     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)  subsys-
     tem.

     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 in-
     terrupt 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 dri-
     ver:

     *	 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(4), ntb_transport(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 ports 15.quarterly	November 9, 2019		   NTB_HW_PLX(4)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ntb_hw_plx&sektion=4&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help