Changeset View
Changeset View
Standalone View
Standalone View
share/man/man4/pci.4
Show All 18 Lines | |||||||||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||||||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||||||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | .\" 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 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||||||||
.\" SUCH DAMAGE. | .\" SUCH DAMAGE. | ||||||||||
.\" | .\" | ||||||||||
.\" $FreeBSD$ | .\" $FreeBSD$ | ||||||||||
.\" | .\" | ||||||||||
.Dd June 17, 2019 | .Dd July 27, 2021 | ||||||||||
.Dt PCI 4 | .Dt PCI 4 | ||||||||||
.Os | .Os | ||||||||||
.Sh NAME | .Sh NAME | ||||||||||
.Nm pci | .Nm pci | ||||||||||
.Nd generic PCI bus driver | .Nd generic PCI/PCIe bus driver | ||||||||||
.Sh SYNOPSIS | .Sh SYNOPSIS | ||||||||||
To compile the PCI bus driver into the kernel, | To compile the PCI bus driver into the kernel, | ||||||||||
place the following line in your | place the following line in your | ||||||||||
kernel configuration file: | kernel configuration file: | ||||||||||
.Bd -ragged -offset indent | .Bd -ragged -offset indent | ||||||||||
.Cd device pci | .Cd device pci | ||||||||||
.Ed | .Ed | ||||||||||
.Pp | .Pp | ||||||||||
To compile in support for Single Root I/O Virtualization | To compile in support for Single Root I/O Virtualization | ||||||||||
.Pq SR-IOV : | .Pq SR-IOV : | ||||||||||
.Bd -ragged -offset indent | .Bd -ragged -offset indent | ||||||||||
.Cd options PCI_IOV | .Cd options PCI_IOV | ||||||||||
.Ed | .Ed | ||||||||||
.Pp | .Pp | ||||||||||
To compile in support for native PCI-express HotPlug: | To compile in support for native PCI-express HotPlug: | ||||||||||
.Bd -ragged -offset indent | .Bd -ragged -offset indent | ||||||||||
.Cd options PCI_HP | .Cd options PCI_HP | ||||||||||
.Ed | .Ed | ||||||||||
.Sh DESCRIPTION | .Sh DESCRIPTION | ||||||||||
The | The | ||||||||||
.Nm | .Nm | ||||||||||
driver provides support for | driver provides support for | ||||||||||
.Tn PCI | .Tn PCI | ||||||||||
and | |||||||||||
.Tn PCIe | |||||||||||
devices in the kernel and limited access to | devices in the kernel and limited access to | ||||||||||
.Tn PCI | .Tn PCI | ||||||||||
devices for userland. | devices for userland. | ||||||||||
.Pp | .Pp | ||||||||||
The | The | ||||||||||
.Nm | .Nm | ||||||||||
driver provides a | driver provides a | ||||||||||
.Pa /dev/pci | .Pa /dev/pci | ||||||||||
Show All 11 Lines | |||||||||||
driver provides a write interface for | driver provides a write interface for | ||||||||||
.Tn PCI | .Tn PCI | ||||||||||
configuration registers, system administrators should exercise caution when | configuration registers, system administrators should exercise caution when | ||||||||||
granting access to the | granting access to the | ||||||||||
.Nm | .Nm | ||||||||||
device. | device. | ||||||||||
If used improperly, this driver can allow userland applications to | If used improperly, this driver can allow userland applications to | ||||||||||
crash a machine or cause data loss. | crash a machine or cause data loss. | ||||||||||
In particular, driver only allows operations on the opened | |||||||||||
.Pa /dev/pci | |||||||||||
to modify system state if the file descriptor was opened for writing. | |||||||||||
For instance, the | |||||||||||
.Dv PCIOCREAD | |||||||||||
and | |||||||||||
.Dv PCIOCBARMMAP | |||||||||||
operations require a writeable descriptor, because reading a config register | |||||||||||
or a BAR read access could have function-specific side-effects. | |||||||||||
.Pp | .Pp | ||||||||||
The | The | ||||||||||
markj: Starting a paragraph with "in particular" seems a bit disjointed. I would omit .Pp. | |||||||||||
.Nm | .Nm | ||||||||||
driver implements the | driver implements the | ||||||||||
Done Inline Actions
markj: | |||||||||||
.Tn PCI | .Tn PCI | ||||||||||
bus in the kernel. | bus in the kernel. | ||||||||||
It enumerates any devices on the | It enumerates any devices on the | ||||||||||
.Tn PCI | .Tn PCI | ||||||||||
bus and gives | bus and gives | ||||||||||
Done Inline Actions
markj: | |||||||||||
.Tn PCI | .Tn PCI | ||||||||||
Done Inline Actions
markj: | |||||||||||
client drivers the chance to attach to them. | client drivers the chance to attach to them. | ||||||||||
It assigns resources to children, when the BIOS does not. | It assigns resources to children, when the BIOS does not. | ||||||||||
It takes care of routing interrupts when necessary. | It takes care of routing interrupts when necessary. | ||||||||||
It reprobes the unattached | It reprobes the unattached | ||||||||||
.Tn PCI | .Tn PCI | ||||||||||
children when | children when | ||||||||||
.Tn PCI | .Tn PCI | ||||||||||
client drivers are dynamically | client drivers are dynamically | ||||||||||
▲ Show 20 Lines • Show All 564 Lines • Show Last 20 Lines |
Starting a paragraph with "in particular" seems a bit disjointed. I would omit .Pp.