blob: 78aa6449197d54349e8ba55fb3506aa0bd92a9a6 [file] [log] [blame]
Deployment Bot (from Travis CI)6d7e6e92021-06-14 19:18:41 +00001
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
5<html xmlns="http://www.w3.org/1999/xhtml">
6 <head>
7 <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
8 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
9 <title>Introduction to OpenPOWER Firmware &#8212; OpenPOWER Firmware v2.6-257-g5b5624c2
10 documentation</title>
11 <link rel="stylesheet" href="_static/alabaster.css" type="text/css" />
12 <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
13 <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
14 <script type="text/javascript" src="_static/jquery.js"></script>
15 <script type="text/javascript" src="_static/underscore.js"></script>
16 <script type="text/javascript" src="_static/doctools.js"></script>
17 <link rel="index" title="Index" href="genindex.html" />
18 <link rel="search" title="Search" href="search.html" />
19 <link rel="next" title="Testing op-build" href="testing.html" />
20 <link rel="prev" title="Welcome to OpenPOWER Firmware’s documentation!" href="index.html" />
21
22 <link rel="stylesheet" href="_static/custom.css" type="text/css" />
23
24
25 <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
26
27 </head><body>
28
29
30 <div class="document">
31 <div class="documentwrapper">
32 <div class="bodywrapper">
33
34
35 <div class="body" role="main">
36
37 <div class="section" id="introduction-to-openpower-firmware">
38<h1>Introduction to OpenPOWER Firmware<a class="headerlink" href="#introduction-to-openpower-firmware" title="Permalink to this headline"></a></h1>
39<p>The <code class="docutils literal notranslate"><span class="pre">op-build</span></code> project constructs a host firmware image for OpenPOWER
40machines.</p>
41<div class="section" id="firmware-components">
42<h2>Firmware Components<a class="headerlink" href="#firmware-components" title="Permalink to this headline"></a></h2>
43<dl class="docutils">
44<dt><a class="reference external" href="https://github.com/open-power/buildroot">Buildroot</a></dt>
45<dd>We use <a class="reference external" href="http://buildroot.net/">http://buildroot.net/</a> as the build system for assembling a firmware
46image. <cite>op-build</cite> is a “Buildroot overlay”. We build a kernel and initramfs
47using buildroot to run the Petitboot boot loader in. We maintain a branch
48with a minimum number of patches on top of upstream buildroot.</dd>
49<dt><a class="reference external" href="https://github.com/open-power/op-build">op-build</a></dt>
50<dd>A buildroot overlay that assembles OpenPOWER Firmware images.</dd>
51<dt><a class="reference external" href="https://github.com/open-power/sbe">SBE</a></dt>
52<dd>the Self Boot Engine is the first unit inside the POWER processor to start
53executing. It’s job is to set up a core and load Hostboot.</dd>
54<dt><a class="reference external" href="https://github.com/open-power/hostboot">Hostboot</a></dt>
55<dd>Low level system boot firmware. It brings up CPU cores, the OCC, Memory
56and hands control over to OPAL (skiboot)</dd>
57<dt><a class="reference external" href="https://github.com/open-power/occ">OCC</a></dt>
58<dd>The On Chip Controller is responsible for thermal limits and frequency
59management.</dd>
60<dt>OPAL</dt>
61<dd>The OpenPOWER Abstraction Layer, provided by skiboot</dd>
62<dt><a class="reference external" href="https://open-power.github.io/skiboot/">skiboot</a></dt>
63<dd>skiboot implements OPAL (the OpenPOWER Abstraction Layer). Skiboot is
64boot and runtime firmware and is responsible for bringing up PCI and
65providing runtime abstractions to the running OS.</dd>
66<dt><a class="reference external" href="https://github.com/open-power/linux">Linux</a></dt>
67<dd>Once skiboot has finished setting up the machine, it hands control over
68to a Linux kernel. This kernel provides device drivers and userspace to
69run the bootloader, Petitboot. We maintain our own branch with a minimal
70number of patches on top of the latest upstream stable release.</dd>
71<dt><a class="reference external" href="https://github.com/open-power/petitboot/">Petitboot</a></dt>
72<dd>The bootloader. It is a normal user-space process running on Linux that
73searches the system for disks and network devices that it can boot the
74OS from.</dd>
75<dt><a class="reference external" href="https://github.com/open-power/hcode">HCODE</a></dt>
76<dd>Firmware for the power management PPE. Implements heavy lifting for deeper
77STOP states.</dd>
78</dl>
79</div>
80<div class="section" id="introductory-videos">
81<h2>Introductory Videos<a class="headerlink" href="#introductory-videos" title="Permalink to this headline"></a></h2>
82<p>There are a number of good recorded presentations from various conferences
83around the world that have overviews and deep dives into various parts of
84the firmware stack.</p>
85<p>Here, we present technical presentations that may be useful in learning
86about topics relevant to OpenPOWER firmware development.</p>
87<p>For broader OpenPOWER topics, check out the following channels:</p>
88<ul class="simple">
89<li><cite>OpenPOWER Foundation</cite> &lt;<a class="reference external" href="https://github.com/open-power/op-build/pull/2983">https://github.com/open-power/op-build/pull/2983</a>&gt;`_</li>
90</ul>
91<div class="section" id="introductory">
92<h3>Introductory<a class="headerlink" href="#introductory" title="Permalink to this headline"></a></h3>
93<iframe width="640" height="360" src="//www.youtube.com/embed/a4XGvssR-ag?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe><iframe width="640" height="360" src="//www.youtube.com/embed/hcLhKjxa-40?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
94<div class="section" id="secure-boot">
95<h3>Secure Boot<a class="headerlink" href="#secure-boot" title="Permalink to this headline"></a></h3>
96<iframe width="640" height="360" src="//www.youtube.com/embed/hwB1bkXQep4?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
97<div class="section" id="interfaces-and-standards">
98<h3>Interfaces and standards<a class="headerlink" href="#interfaces-and-standards" title="Permalink to this headline"></a></h3>
99<iframe width="640" height="360" src="//www.youtube.com/embed/2TroT3ORw0s?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
100<div class="section" id="opencapi">
101<h3>OpenCAPI<a class="headerlink" href="#opencapi" title="Permalink to this headline"></a></h3>
102<iframe width="640" height="360" src="//www.youtube.com/embed/h3pLBDCqY-I?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe><iframe width="640" height="360" src="//www.youtube.com/embed/K4dhx0ctjkQ?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
103<div class="section" id="xive-interrupt-controller">
104<h3>XIVE Interrupt Controller<a class="headerlink" href="#xive-interrupt-controller" title="Permalink to this headline"></a></h3>
105<iframe width="640" height="360" src="//www.youtube.com/embed/s88beMQWkks?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
106<div class="section" id="id1">
107<h3>Petitboot<a class="headerlink" href="#id1" title="Permalink to this headline"></a></h3>
108<iframe width="640" height="360" src="//www.youtube.com/embed/4JbDb4bRBK4?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe><iframe width="640" height="360" src="//www.youtube.com/embed/oxmMJMibZQ8?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
109<div class="section" id="booting-faster">
110<h3>Booting Faster<a class="headerlink" href="#booting-faster" title="Permalink to this headline"></a></h3>
111<iframe width="640" height="360" src="//www.youtube.com/embed/fTLsS_QZ8us?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
112<div class="section" id="testing">
113<h3>Testing<a class="headerlink" href="#testing" title="Permalink to this headline"></a></h3>
114<iframe width="640" height="360" src="//www.youtube.com/embed/znEM2xqJhBU?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
115<div class="section" id="bringup-and-customisation">
116<h3>Bringup and customisation<a class="headerlink" href="#bringup-and-customisation" title="Permalink to this headline"></a></h3>
117<iframe width="640" height="360" src="//www.youtube.com/embed/v73Nw7NDxYI?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe><iframe width="640" height="360" src="//www.youtube.com/embed/dBEBQQYP_eI?feature=player_detailpage" frameborder="0" allowfullscreen="1">&nbsp;</iframe></div>
118</div>
119</div>
120
121
122 </div>
123
124 </div>
125 </div>
126 <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
127 <div class="sphinxsidebarwrapper">
128<h1 class="logo"><a href="index.html">OpenPOWER Firmware</a></h1>
129
130
131
132
133
134
135
136
137<h3>Navigation</h3>
138<p class="caption"><span class="caption-text">Contents:</span></p>
139<ul class="current">
140<li class="toctree-l1 current"><a class="current reference internal" href="#">Introduction to OpenPOWER Firmware</a><ul>
141<li class="toctree-l2"><a class="reference internal" href="#firmware-components">Firmware Components</a></li>
142<li class="toctree-l2"><a class="reference internal" href="#introductory-videos">Introductory Videos</a></li>
143</ul>
144</li>
145<li class="toctree-l1"><a class="reference internal" href="testing.html">Testing op-build</a></li>
146<li class="toctree-l1"><a class="reference internal" href="process/index.html">Development Process</a></li>
147<li class="toctree-l1"><a class="reference internal" href="boot-devices.html">Supported Boot Devices</a></li>
148<li class="toctree-l1"><a class="reference internal" href="versioning.html">Version Scheme</a></li>
149<li class="toctree-l1"><a class="reference internal" href="release-notes/index.html">op-build Release Notes</a></li>
150</ul>
151
152<div class="relations">
153<h3>Related Topics</h3>
154<ul>
155 <li><a href="index.html">Documentation overview</a><ul>
156 <li>Previous: <a href="index.html" title="previous chapter">Welcome to OpenPOWER Firmware’s documentation!</a></li>
157 <li>Next: <a href="testing.html" title="next chapter">Testing op-build</a></li>
158 </ul></li>
159</ul>
160</div>
161<div id="searchbox" style="display: none" role="search">
162 <h3>Quick search</h3>
163 <div class="searchformwrapper">
164 <form class="search" action="search.html" method="get">
165 <input type="text" name="q" />
166 <input type="submit" value="Go" />
167 <input type="hidden" name="check_keywords" value="yes" />
168 <input type="hidden" name="area" value="default" />
169 </form>
170 </div>
171</div>
172<script type="text/javascript">$('#searchbox').show(0);</script>
173
174
175
176
177
178
179
180
181 </div>
182 </div>
183 <div class="clearer"></div>
184 </div>
185 <div class="footer">
186 &copy;2017, OpenPOWER Foundation System Software Work Group.
187
188 |
189 Powered by <a href="http://sphinx-doc.org/">Sphinx 1.7.9</a>
190 &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
191
192 |
193 <a href="_sources/introduction.rst.txt"
194 rel="nofollow">Page source</a>
195 </div>
196
197
198
199
200 </body>
201</html>