aboutsummaryrefslogtreecommitdiff
path: root/doc/pci.html
diff options
context:
space:
mode:
authorlegoater <legoater@users.noreply.github.com>2022-03-17 07:11:14 +0000
committerlegoater <legoater@users.noreply.github.com>2022-03-17 07:11:14 +0000
commitf86c561710de127eca526a73b79bc7e24ffbb38d (patch)
tree724648a57563b476ece7f5f12a0d2e12829b8abd /doc/pci.html
parentff7c0852427a5fa90b6423c31410a7a711a9e3ed (diff)
downloadskiboot-f86c561710de127eca526a73b79bc7e24ffbb38d.zip
skiboot-f86c561710de127eca526a73b79bc7e24ffbb38d.tar.gz
skiboot-f86c561710de127eca526a73b79bc7e24ffbb38d.tar.bz2
Deploying to gh-pages from @ open-power/skiboot@e32e57e9728690f251c00894570bcdddd18de49c 🚀
Diffstat (limited to 'doc/pci.html')
-rw-r--r--doc/pci.html69
1 files changed, 36 insertions, 33 deletions
diff --git a/doc/pci.html b/doc/pci.html
index 1407f50..e82b74f 100644
--- a/doc/pci.html
+++ b/doc/pci.html
@@ -1,19 +1,21 @@
-<!DOCTYPE html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html>
+<html xmlns="http://www.w3.org/1999/xhtml">
<head>
- <meta charset="utf-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>PCI &#8212; skiboot v6.7-45-g4b9ca02
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>PCI &#8212; skiboot e32e57e
documentation</title>
- <link rel="stylesheet" type="text/css" href="_static/pygments.css" />
- <link rel="stylesheet" type="text/css" href="_static/classic.css" />
+ <link rel="stylesheet" href="_static/classic.css" type="text/css" />
+ <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
- <script src="_static/jquery.js"></script>
- <script src="_static/underscore.js"></script>
- <script src="_static/doctools.js"></script>
+ <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+ <script type="text/javascript" src="_static/jquery.js"></script>
+ <script type="text/javascript" src="_static/underscore.js"></script>
+ <script type="text/javascript" src="_static/doctools.js"></script>
+ <script type="text/javascript" src="_static/language_data.js"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
@@ -32,9 +34,8 @@
<li class="right" >
<a href="nvlink.html" title="OPAL/Skiboot Nvlink Interface Documentation"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">skiboot v6.7-45-g4b9ca02
- documentation</a> &#187;</li>
- <li class="nav-item nav-item-this"><a href="">PCI</a></li>
+ <li class="nav-item nav-item-0"><a href="index.html">skiboot e32e57e
+ documentation</a> &#187;</li>
</ul>
</div>
@@ -58,9 +59,9 @@ to help debug PCI issues. These are not ABI and may be changed or removed at
</div>
<div class="section" id="disable-eeh-mmio">
<h3>Disable EEH MMIO<a class="headerlink" href="#disable-eeh-mmio" title="Permalink to this headline">¶</a></h3>
-<dl class="simple">
-<dt>::</dt><dd><p>nvram -p ibm,skiboot –update-config pci-eeh-mmio=disabled</p>
-</dd>
+<dl class="docutils">
+<dt>::</dt>
+<dd>nvram -p ibm,skiboot –update-config pci-eeh-mmio=disabled</dd>
</dl>
</div>
<div class="section" id="check-for-rx-errors-after-link-training">
@@ -110,9 +111,9 @@ card.</p>
<div class="section" id="maximum-link-speed">
<h3>Maximum link speed<a class="headerlink" href="#maximum-link-speed" title="Permalink to this headline">¶</a></h3>
<p>Was useful during bringup on P9 DD1.</p>
-<dl class="simple">
-<dt>::</dt><dd><p>nvram -p ibm,skiboot –update-config pcie-max-link-speed=4</p>
-</dd>
+<dl class="docutils">
+<dt>::</dt>
+<dd>nvram -p ibm,skiboot –update-config pcie-max-link-speed=4</dd>
</dl>
</div>
<div class="section" id="ric-mata-mode">
@@ -175,8 +176,9 @@ parent) or 0 (not in the parent PE domain).</p>
<p>(<strong>WARNING</strong>: this was rescued from old internal documentation. Needs verification)</p>
<p>To setup MSIs:</p>
<ol class="arabic">
-<li><p>For ibm,opal-ioda PHBs, the host chooses an MVE for a PE to use and calls <code class="docutils literal notranslate"><span class="pre">opal_pci_set_mve(</span> <span class="pre">phb_id,</span> <span class="pre">mve_number,</span> <span class="pre">pe_number,)</span></code> to setup the MVE for the PE number. HAL treats this call as a NOP and returns hal_success status for ibm,opal-ioda2 PHBs.</p></li>
-<li><p>The host chooses an XIVE to use with a PE and calls
+<li><p class="first">For ibm,opal-ioda PHBs, the host chooses an MVE for a PE to use and calls <code class="docutils literal notranslate"><span class="pre">opal_pci_set_mve(</span> <span class="pre">phb_id,</span> <span class="pre">mve_number,</span> <span class="pre">pe_number,)</span></code> to setup the MVE for the PE number. HAL treats this call as a NOP and returns hal_success status for ibm,opal-ioda2 PHBs.</p>
+</li>
+<li><p class="first">The host chooses an XIVE to use with a PE and calls
a. <code class="docutils literal notranslate"><span class="pre">opal_pci_set_xive_pe(</span> <span class="pre">phb_id,</span> <span class="pre">xive_number,</span> <span class="pre">pe_number)</span></code> to authorize that PE to signal that XIVE as an interrupt. The host must call this function for each XIVE assigned to a particular PE, but may use this call for all XIVEs prior to calling <code class="docutils literal notranslate"><span class="pre">opel_pci_set_mve()</span></code> to bind the PE XIVEs to an MVE. For MSI conventional, the host must bind a unique MVE for each sequential set of 32 XIVEs.
b. The host forms the interrupt_source_number from the combination of the device tree MSI property base BUID and XIVE number, as an input to <code class="docutils literal notranslate"><span class="pre">opal_set_xive(interrupt_source_number,</span> <span class="pre">server_number,</span> <span class="pre">priority)</span></code> and <code class="docutils literal notranslate"><span class="pre">opal_get_xive(interrupt_source_number,</span> <span class="pre">server_number,</span> <span class="pre">priority)</span></code> to set or return the server and priority numbers within an XIVE.
c. <code class="docutils literal notranslate"><span class="pre">opal_get_msi_64[32](phb_id,</span> <span class="pre">mve_number,</span> <span class="pre">xive_num,</span> <span class="pre">msi_range,</span> <span class="pre">msi_address,</span> <span class="pre">message_data)</span></code> to determine the MSI DMA address (32 or 64 bit) and message data value for that xive.</p>
@@ -184,7 +186,8 @@ c. <code class="docutils literal notranslate"><span class="pre">opal_get_msi_64[
<div><p>For MSI conventional, the host uses this for each sequential power of 2 set of 1 to 32 MSIs, to determine the MSI DMA address and starting message data value for that MSI range. For MSI-X, the host calls this uniquely for each MSI interrupt with an msi_range input value of 1.</p>
</div></blockquote>
</li>
-<li><p>For <code class="docutils literal notranslate"><span class="pre">ibm,opal-ioda</span></code> PHBs, once the MVE and XIVRs are setup for a PE, the host calls <code class="docutils literal notranslate"><span class="pre">opal_pci_set_mve_enable(</span> <span class="pre">phb_id,</span> <span class="pre">mve_number,</span> <span class="pre">state)</span></code> to enable that MVE to be a valid target of MSI DMAs. The host may also call this function to disable an MVE when changing PE domains or states.</p></li>
+<li><p class="first">For <code class="docutils literal notranslate"><span class="pre">ibm,opal-ioda</span></code> PHBs, once the MVE and XIVRs are setup for a PE, the host calls <code class="docutils literal notranslate"><span class="pre">opal_pci_set_mve_enable(</span> <span class="pre">phb_id,</span> <span class="pre">mve_number,</span> <span class="pre">state)</span></code> to enable that MVE to be a valid target of MSI DMAs. The host may also call this function to disable an MVE when changing PE domains or states.</p>
+</li>
</ol>
</div>
<div class="section" id="ioda-dma-setup-sequences">
@@ -192,8 +195,8 @@ c. <code class="docutils literal notranslate"><span class="pre">opal_get_msi_64[
<p>(<strong>WARNING</strong>: this was rescued from old internal documentation. Needs verification)</p>
<p>To Manage DMA Windows :</p>
<ol class="arabic simple">
-<li><p>The host calls <code class="docutils literal notranslate"><span class="pre">opal_pci_map_pe_dma_window(</span> <span class="pre">phb_id,</span> <span class="pre">dma_window_number,</span> <span class="pre">pe_number,</span> <span class="pre">tce_levels,</span> <span class="pre">tce_table_addr,</span> <span class="pre">tce_table_size,</span> <span class="pre">tce_page_size,</span> <span class="pre">utin64_t*</span> <span class="pre">pci_start_addr</span> <span class="pre">)</span></code> to setup a DMA window for a PE to translate through a TCE table structure in KVM memory.</p></li>
-<li><p>The host calls <code class="docutils literal notranslate"><span class="pre">opal_pci_map_pe_dma_window_real(</span> <span class="pre">phb_id,</span> <span class="pre">dma_window_number,</span> <span class="pre">pe_number,</span> <span class="pre">mem_low_addr,</span> <span class="pre">mem_high_addr)</span></code> to setup a DMA window for a PE that is translated (but validated by the PHB as an untranlsated address space authorized to this PE).</p></li>
+<li>The host calls <code class="docutils literal notranslate"><span class="pre">opal_pci_map_pe_dma_window(</span> <span class="pre">phb_id,</span> <span class="pre">dma_window_number,</span> <span class="pre">pe_number,</span> <span class="pre">tce_levels,</span> <span class="pre">tce_table_addr,</span> <span class="pre">tce_table_size,</span> <span class="pre">tce_page_size,</span> <span class="pre">utin64_t*</span> <span class="pre">pci_start_addr</span> <span class="pre">)</span></code> to setup a DMA window for a PE to translate through a TCE table structure in KVM memory.</li>
+<li>The host calls <code class="docutils literal notranslate"><span class="pre">opal_pci_map_pe_dma_window_real(</span> <span class="pre">phb_id,</span> <span class="pre">dma_window_number,</span> <span class="pre">pe_number,</span> <span class="pre">mem_low_addr,</span> <span class="pre">mem_high_addr)</span></code> to setup a DMA window for a PE that is translated (but validated by the PHB as an untranlsated address space authorized to this PE).</li>
</ol>
</div>
<div class="section" id="device-tree-bindings">
@@ -203,7 +206,6 @@ c. <code class="docutils literal notranslate"><span class="pre">opal_get_msi_64[
</div>
- <div class="clearer"></div>
</div>
</div>
</div>
@@ -244,15 +246,17 @@ c. <code class="docutils literal notranslate"><span class="pre">opal_get_msi_64[
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
- <h3 id="searchlabel">Quick search</h3>
+ <h3>Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="search.html" method="get">
- <input type="text" name="q" aria-labelledby="searchlabel" />
+ <input type="text" name="q" />
<input type="submit" value="Go" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
</form>
</div>
</div>
-<script>$('#searchbox').show(0);</script>
+<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
@@ -269,14 +273,13 @@ c. <code class="docutils literal notranslate"><span class="pre">opal_get_msi_64[
<li class="right" >
<a href="nvlink.html" title="OPAL/Skiboot Nvlink Interface Documentation"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">skiboot v6.7-45-g4b9ca02
- documentation</a> &#187;</li>
- <li class="nav-item nav-item-this"><a href="">PCI</a></li>
+ <li class="nav-item nav-item-0"><a href="index.html">skiboot e32e57e
+ documentation</a> &#187;</li>
</ul>
</div>
<div class="footer" role="contentinfo">
&#169; Copyright 2016-2017, IBM, others.
- Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 4.0.1.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.5.
</div>
</body>
</html> \ No newline at end of file