diff options
author | legoater <legoater@users.noreply.github.com> | 2022-03-17 07:11:14 +0000 |
---|---|---|
committer | legoater <legoater@users.noreply.github.com> | 2022-03-17 07:11:14 +0000 |
commit | f86c561710de127eca526a73b79bc7e24ffbb38d (patch) | |
tree | 724648a57563b476ece7f5f12a0d2e12829b8abd /doc/pci.html | |
parent | ff7c0852427a5fa90b6423c31410a7a711a9e3ed (diff) | |
download | skiboot-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.html | 69 |
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 — 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 — 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> »</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> »</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> »</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> »</li> </ul> </div> <div class="footer" role="contentinfo"> © 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 |