1 .. SPDX-License-Identifier: GPL-2.0
10 Copyright, IBM Corp. 2020
13 Command line parameters and debugfs entries
14 ===========================================
16 Command line parameters
17 -----------------------
21 Do not use PCI Mapped I/O (MIO) instructions.
25 Ignore the RID field and force use of one PCI domain per PCI function.
30 The S/390 debug feature (s390dbf) generates views to hold various debug results in sysfs directories of the form:
32 * /sys/kernel/debug/s390dbf/pci_*/
36 - /sys/kernel/debug/s390dbf/pci_msg/sprintf
37 Holds messages from the processing of PCI events, like machine check handling
38 and setting of global functionality, like UID checking.
40 Change the level of logging to be more or less verbose by piping
41 a number between 0 and 6 to /sys/kernel/debug/s390dbf/pci_*/level. For
42 details, see the documentation on the S/390 debug feature at
43 Documentation/s390/s390dbf.rst.
48 Entries specific to zPCI functions and entries that hold zPCI information.
50 * /sys/bus/pci/slots/XXXXXXXX
52 The slot entries are set up using the function identifier (FID) of the
55 - /sys/bus/pci/slots/XXXXXXXX/power
57 A physical function that currently supports a virtual function cannot be
58 powered off until all virtual functions are removed with:
59 echo 0 > /sys/bus/pci/devices/XXXX:XX:XX.X/sriov_numvf
61 * /sys/bus/pci/devices/XXXX:XX:XX.X/
64 A zPCI function identifier that uniquely identifies the function in the Z server.
67 Low-level identifier used for a configured PCI function.
68 It might be useful for debuging.
71 Model-dependent location of the I/O adapter.
74 PCI function group ID, functions that share identical functionality
75 use a common identifier.
76 A PCI group defines interrupts, IOMMU, IOTLB, and DMA specifics.
79 The virtual function number, from 1 to N for virtual functions,
80 0 for physical functions.
86 The port corresponds to the physical port the function is attached to.
87 It also gives an indication of the physical function a virtual function
91 The unique identifier (UID) is defined when configuring an LPAR and is
95 The segments determine the isolation of a function.
96 They correspond to the physical path to the function.
97 The more the segments are different, the more the functions are isolated.
99 Enumeration and hotplug
100 =======================
102 The PCI address consists of four parts: domain, bus, device and function,
103 and is of this form: DDDD:BB:dd.f
105 * When not using multi-functions (norid is set, or the firmware does not
106 support multi-functions):
108 - There is only one function per domain.
110 - The domain is set from the zPCI function's UID as defined during the
113 * When using multi-functions (norid parameter is not set),
114 zPCI functions are addressed differently:
116 - There is still only one bus per domain.
118 - There can be up to 256 functions per bus.
120 - The domain part of the address of all functions for
121 a multi-Function device is set from the zPCI function's UID as defined
122 in the LPAR creation for the function zero.
124 - New functions will only be ready for use after the function zero
125 (the function with devfn 0) has been enumerated.