You've already forked slimbootloader.github.io
mirror of
https://github.com/Dasharo/slimbootloader.github.io.git
synced 2026-03-06 15:26:36 -08:00
333 lines
18 KiB
HTML
333 lines
18 KiB
HTML
<!DOCTYPE html>
|
||
<html class="writer-html5" lang="en" >
|
||
<head>
|
||
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
|
||
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>Boot VxWorks — Slim Bootloader 1.0 documentation</title>
|
||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
|
||
<link rel="stylesheet" href="../_static/graphviz.css" type="text/css" />
|
||
<link rel="stylesheet" href="../_static/custom.css" type="text/css" />
|
||
<link rel="shortcut icon" href="../_static/sbl_logo_blue_32x32_icon.ico"/>
|
||
<!--[if lt IE 9]>
|
||
<script src="../_static/js/html5shiv.min.js"></script>
|
||
<![endif]-->
|
||
|
||
<script src="../_static/jquery.js"></script>
|
||
<script src="../_static/_sphinx_javascript_frameworks_compat.js"></script>
|
||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||
<script src="../_static/doctools.js"></script>
|
||
<script src="../_static/sphinx_highlight.js"></script>
|
||
<script src="../_static/js/theme.js"></script>
|
||
<link rel="index" title="Index" href="../genindex.html" />
|
||
<link rel="search" title="Search" href="../search.html" />
|
||
<link rel="next" title="Boot Zephyr" href="boot-zephyr.html" />
|
||
<link rel="prev" title="Boot Ubuntu" href="boot-ubuntu.html" />
|
||
</head>
|
||
|
||
<body class="wy-body-for-nav">
|
||
<div class="wy-grid-for-nav">
|
||
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
||
<div class="wy-side-scroll">
|
||
<div class="wy-side-nav-search" >
|
||
|
||
|
||
|
||
<a href="../index.html" class="icon icon-home">
|
||
Slim Bootloader
|
||
<img src="../_static/sbl_logo_white_200x200.png" class="logo" alt="Logo"/>
|
||
</a>
|
||
<div class="version">
|
||
1.0
|
||
</div>
|
||
<div role="search">
|
||
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
|
||
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
|
||
<input type="hidden" name="check_keywords" value="yes" />
|
||
<input type="hidden" name="area" value="default" />
|
||
</form>
|
||
</div>
|
||
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
|
||
<ul class="current">
|
||
<li class="toctree-l1"><a class="reference internal" href="../introduction/index.html">Introduction</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../getting-started/index.html">Getting Started</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../supported-hardware/index.html">Supported Hardware</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../developer-guides/index.html">Developer’s Guide</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../security/index.html">Security Features</a></li>
|
||
<li class="toctree-l1 current"><a class="reference internal" href="index.html">How-Tos</a><ul class="current">
|
||
<li class="toctree-l2"><a class="reference internal" href="customize-build.html">Customize Build</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="change-boot-option.html">Change Boot Options</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="enable-verified-boot.html">Enable Verified Boot</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="enable-intel-tcc.html">Intel® TCC enable</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="enable-intel-tsn.html">TSN</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="enable-tsn-gbe-sgmii.html">Enable TSN GbE SGMII</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="enable-pre-os-payload.html">Enable Pre-OS Payload Support</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="reduce-debug-message.html">Reduce debug messages</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="add-new-library.html">Add New Library</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="add-new-payload.html">Create New Payload</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="add-new-payload.html#helloworld-payload">HelloWorld Payload</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="integrate-multiple-payloads.html">Integrate Multiple Payloads</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="create-container-boot-image.html">Create Container Boot Image</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="create-ias-boot-image.html">Create IAS Boot Image</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-windows.html">Boot Windows with UEFI Payload</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-netboot.html">Netboot / PXE boot with UEFI Payload</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-ubuntu.html">Boot Ubuntu</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-ubuntu.html#setup-spn-os-container-boot">Setup SBL OS Container Boot</a></li>
|
||
<li class="toctree-l2 current"><a class="current reference internal" href="#">Boot VxWorks</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-zephyr.html">Boot Zephyr</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-micropython.html">Boot MicroPython</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-with-linux-payload.html">Boot Linux as a Payload</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-with-u-boot-payload.html">Boot Linux with U-Boot Payload</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-pxe-uboot.html">PXE Boot Through U-Boot Payload</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="configure-memory-down.html">Configure Memory Down</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="collect-time-logs.html">Capture Boot Time Data</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="configure_gpio.html">GPIO / CFIO Configuration</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="configure_gpio.html#run-gengpiodata-tool">Run GenGpioData Tool</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="add-fastboot.html">Add Fastboot Support</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="boot-acrn.html">Boot ACRN Hypervisor</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../tools/index.html">Tools</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../tutorials/index.html">Tutorials</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../specs/index.html">Specifications</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../references/references.html">References and Links</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../references/terminology.html">Terminology and Acronyms</a></li>
|
||
</ul>
|
||
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
|
||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
|
||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
||
<a href="../index.html">Slim Bootloader</a>
|
||
</nav>
|
||
|
||
<div class="wy-nav-content">
|
||
<div class="rst-content">
|
||
<div role="navigation" aria-label="Page navigation">
|
||
<ul class="wy-breadcrumbs">
|
||
<li><a href="../index.html" class="icon icon-home" aria-label="Home"></a></li>
|
||
<li class="breadcrumb-item"><a href="index.html">How-Tos</a></li>
|
||
<li class="breadcrumb-item active">Boot VxWorks</li>
|
||
<li class="wy-breadcrumbs-aside">
|
||
</li>
|
||
</ul>
|
||
<hr/>
|
||
</div>
|
||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
||
<div itemprop="articleBody">
|
||
|
||
<section id="boot-vxworks">
|
||
<span id="id1"></span><h1>Boot VxWorks<a class="headerlink" href="#boot-vxworks" title="Permalink to this heading"></a></h1>
|
||
<p>This page provides instructions for creating a bootable VxWorks image in container format and setting up the boot option in SBL.</p>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>See <a class="reference internal" href="../tools/GenContainer.html#gen-container-tool"><span class="std std-ref">Container Tool</span></a> for more details on container format.</p>
|
||
</div>
|
||
<p><strong>Step 1:</strong> Download <a href="https://github.com/slimbootloader/slimbootloader/blob/master/BootloaderCorePkg/Tools/GenContainer.py" target="_blank">GenContainer.py</a> and <a href="https://github.com/slimbootloader/slimbootloader/blob/master/BootloaderCorePkg/Tools/CommonUtility.py" target="_blank">CommonUtility.py</a> to the same working directory to use the container tool.</p>
|
||
<p><strong>Step 2:</strong> Get a VxWorks kernel.</p>
|
||
<blockquote>
|
||
<div><p>Obtain a VxWorks kernel binary. The binary should be in ELF format and multiboot compliant.</p>
|
||
</div></blockquote>
|
||
<p><strong>Step 3:</strong> Generate <code class="docutils literal notranslate"><span class="pre">container.bin</span></code> file</p>
|
||
<p>Run:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">GenContainer</span><span class="o">.</span><span class="n">py</span> <span class="n">create</span> <span class="o">-</span><span class="n">t</span> <span class="n">NORMAL</span> <span class="o">-</span><span class="n">cl</span> <span class="n">VXWK</span><span class="p">:</span><span class="o"><</span><span class="n">VxWorks</span> <span class="n">kernel</span><span class="o">></span> <span class="o">-</span><span class="n">k</span> <span class="n">SblKeys</span>\<span class="n">OS1_TestKey_Pub_RSA2048_priv</span><span class="o">.</span><span class="n">pem</span> <span class="o">-</span><span class="n">o</span> <span class="n">container</span><span class="o">.</span><span class="n">bin</span>
|
||
</pre></div>
|
||
</div>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>SblKeys\OS1_TestKey_Pub_RSA2048_priv.pem is given as an example key used for signing SBL OS container binaries.</p>
|
||
</div>
|
||
<p>Sample output messages:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Container</span> <span class="s1">'BOOT'</span> <span class="n">was</span> <span class="n">created</span> <span class="n">successfully</span> <span class="n">at</span><span class="p">:</span>
|
||
<span class="o">/</span><span class="n">home</span><span class="o">/</span><span class="n">user</span><span class="o">/</span><span class="n">container</span><span class="o">.</span><span class="n">bin</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Step 4:</strong> Copy <code class="docutils literal notranslate"><span class="pre">container.bin</span></code> onto the intended boot media’s boot partition.</p>
|
||
<p>Depending on the boot media being used, <code class="docutils literal notranslate"><span class="pre">container.bin</span></code> should be copied to the <strong>root</strong> directory on the boot device.</p>
|
||
<p><strong>Step 5:</strong> Configure the boot option entry to load <code class="docutils literal notranslate"><span class="pre">container.bin</span></code> from the boot partition</p>
|
||
<p>Make sure the boot option is configured to the location of <code class="docutils literal notranslate"><span class="pre">container.bin</span></code> on the boot device. E.g., if <code class="docutils literal notranslate"><span class="pre">container.bin</span></code> is located on the first FAT32 partition on a USB, the boot option entry should look like the following:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>- !expand { BOOT_OPTION_TMPL : [ 0 , 0 , 0 , 5 , 0 , 0 , 0 , 0 , 'container.bin' ] }
|
||
</pre></div>
|
||
</div>
|
||
<p>See <a class="reference internal" href="change-boot-option.html#change-boot-options"><span class="std std-ref">Change Boot Options</span></a> for more details.</p>
|
||
<p><strong>Step 6:</strong> Build, stitch, flash and boot</p>
|
||
<p>Follow <a class="reference internal" href="../supported-hardware/index.html#supported-hardware"><span class="std std-ref">Supported Hardware</span></a> to build a flashable image for the target platform.</p>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>If the target boot option is not the first entry, enter SBL shell first to switch it to the first one.</p>
|
||
</div>
|
||
<p>Example boot messages:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>Idx|ImgType|DevType|DevNum|Flags|HwPart|FsType|SwPart|File/Lbaoffset
|
||
0| 0| USB | 0 | 0 | 0 | FAT | 0 | container.bin
|
||
1| 0| NVME | 0 | 10 | 0 | EXT2 | 1 | /boot/sbl_os
|
||
5| 0| SATA | 0 | 10 | 0 | EXT2 | 1 | /boot/sbl_os
|
||
|
||
|
||
======== Try Booting with Boot Option 0 ========
|
||
BootMediumPciBase(0x1400)
|
||
Getting boot image from USB
|
||
Init USB XHCI - Success
|
||
Enumerate Bus - Success
|
||
Found 2 USB devices on bus
|
||
Use the 1st mass storage device
|
||
Found 1 mass storage devices
|
||
Try to find boot partition
|
||
Partition type: MBR (1 logical partitions)
|
||
Find partition success
|
||
Init File system
|
||
Detected FAT on HwDev 0 Part 0
|
||
BootSlot = 0x0
|
||
File 'container.bin' size 8686432
|
||
Get file 'container.bin' (size:0x848B60) success.
|
||
LoadBootImage ImageType-0 Image
|
||
ParseBootImage ImageType-0
|
||
Registering container BOOT
|
||
HASH verification for usage (0x00000800) with Hash Alg (0x1): Success
|
||
SignType (0x1) SignSize (0x100) SignHashAlg (0x1)
|
||
RSA verification for usage (0x00000800): Success
|
||
HASH verification for usage (0x00000000) with Hash Alg (0x1): Success
|
||
CONTAINER size = 0x848B60, image type = 0xF3, # of components = 2
|
||
COMP:VXWK Success
|
||
Unregister done - Success!
|
||
One multiboot file in boot image file ....
|
||
SetupBootImage ImageType-0
|
||
Boot image is Multiboot format...
|
||
Mb: LoadAddr=0x408000, LoadEnd=0xB55DA0 , BssEnd=0xBF4F20, Size=0x74DDA0
|
||
|
||
Dump normal boot image info:
|
||
|
||
Dump MB info @780D61C0:
|
||
- Flags: 1245
|
||
- MemLower: 280 (640K)
|
||
- MemUpper: 600C00 (6294528K)
|
||
- BootDevicePart3: 0
|
||
- BootDevicePart2: 0
|
||
- BootDevicePart1: 0
|
||
- BootDeviceDrive: 0
|
||
- Cmdline addr: 77851000
|
||
cmd = 'console=ttyS0,115200'
|
||
- ModsCount: 0
|
||
- ModsAddr: 0
|
||
- ElfshdrNum: 0
|
||
- ElfshdrSize: 0
|
||
- ElfshdrAddr: 0
|
||
- ElfshdrShndx: 0
|
||
- MmapLength: 168
|
||
- MmapAddr: 780D6810
|
||
0: 0000000000000000--00000000000A0000 1
|
||
18: 00000000000A0000--0000000000060000 2
|
||
30: 0000000000100000--00000000780E0000 1
|
||
48: 00000000781E0000--0000000000500000 2
|
||
60: 00000000786E0000--0000000000068000 3
|
||
78: 0000000078748000--0000000000008000 4
|
||
90: 0000000078750000--0000000000500000 2
|
||
A8: 0000000078C50000--00000000003B0000 2
|
||
C0: 0000000079000000--0000000002000000 2
|
||
D8: 000000007B000000--0000000000800000 2
|
||
F0: 000000007B800000--0000000000800000 2
|
||
108: 000000007C000000--0000000003C00000 2
|
||
120: 00000000FED20000--0000000000060000 2
|
||
138: 00000000FF66F000--0000000000991000 2
|
||
150: 0000000100000000--0000000180400000 1
|
||
- DrivesLength: 0
|
||
- DrivesAddr: 0
|
||
- ConfigTable: 00000000
|
||
- LoaderName: 789E3088
|
||
'Slim BootLoader'
|
||
- ApmTable: 00000000
|
||
- VbeControlInfo: 00000000
|
||
- VbeModeInfo: 00000000
|
||
- VbeInterfaceSeg: 0
|
||
- VbeInterfaceOff: 0
|
||
- VbeInterfaceLen: 0
|
||
|
||
Dump multiboot boot state:
|
||
- EntryPoint: 408000
|
||
- Eax: 2BADB002
|
||
- Ebx: 780D61C0
|
||
- Esi: 0
|
||
- Edi: 0
|
||
|
||
Payload normal heap: 0x4000000 (0x8AF000 used)
|
||
Payload reserved heap: 0x500000 (0x0 used)
|
||
Payload stack: 0x20000 (0xA08 used)
|
||
|
||
Jumping into ELF or Multiboot image entry point...
|
||
...
|
||
Starting MB Kernel ...
|
||
|
||
Target Name: vxTarget
|
||
Instantiating /ata1a as rawFs, device = 0x20001
|
||
Instantiating /ata1c as rawFs, device = 0x40001
|
||
Instantiating /ata1d as rawFs, device = 0x50001
|
||
|
||
_________ _________
|
||
\77777777\ /77777777/
|
||
\77777777\ /77777777/
|
||
\77777777\ /77777777/
|
||
\77777777\ /77777777/
|
||
\77777777\ \7777777/
|
||
\77777777\ \77777/ VxWorks 7 SMP 64-bit
|
||
\77777777\ \777/
|
||
\77777777\ \7/ Core Kernel version: 3.1.2.1
|
||
\77777777\ - Build date: Jul 7 2020 10:30:42
|
||
\77777777\
|
||
\7777777/ Copyright Wind River Systems, Inc.
|
||
\77777/ - 1984-2020
|
||
\777/ /7\
|
||
\7/ /777\
|
||
- -------
|
||
|
||
Board: x86 Processor (ACPI_BOOT_OP) SMP/SMT
|
||
CPU Count: 8
|
||
OS Memory Size: ~8004MB
|
||
ED&R Policy Mode: Deployed
|
||
Debug Agent: Not started
|
||
Stop Mode Agent: Not started
|
||
|
||
ERROR: ipcom_drv_eth_init: drvname:gei, drvunit: 0
|
||
|
||
Adding 13696 symbols for standalone.
|
||
|
||
->
|
||
</pre></div>
|
||
</div>
|
||
</section>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||
<a href="boot-ubuntu.html" class="btn btn-neutral float-left" title="Boot Ubuntu" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||
<a href="boot-zephyr.html" class="btn btn-neutral float-right" title="Boot Zephyr" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||
</div>
|
||
|
||
<hr/>
|
||
|
||
<div role="contentinfo">
|
||
<p>© Copyright 2018 - 2025, Intel Corporation.
|
||
<span class="lastupdated">Last updated on Jun 27, 2025.
|
||
</span></p>
|
||
</div>
|
||
|
||
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
|
||
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
|
||
provided by <a href="https://readthedocs.org">Read the Docs</a>.
|
||
|
||
|
||
</footer>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</div>
|
||
<script>
|
||
jQuery(function () {
|
||
SphinxRtdTheme.Navigation.enable(true);
|
||
});
|
||
</script>
|
||
|
||
</body>
|
||
</html> |