132 lines
3.7 KiB
ReStructuredText
132 lines
3.7 KiB
ReStructuredText
.. _gpmrb:
|
|
|
|
Gordon Peak MRB
|
|
###############
|
|
|
|
Overview
|
|
********
|
|
|
|
The Intel Gordon Peak Module Reference Board (GP MRB) is used in
|
|
the automotive industry for the development of in-vehicle applications
|
|
such as heads-up displays and entertainment systems.
|
|
|
|
.. figure:: img/gpmrb.jpg
|
|
:width: 500px
|
|
:align: center
|
|
:alt: Gordon Peak MRB
|
|
|
|
Gordon Peak MRB
|
|
|
|
Hardware
|
|
********
|
|
|
|
.. include:: ../../../../soc/x86/apollo_lake/doc/supported_features.txt
|
|
|
|
Building and Running Zephyr
|
|
***************************
|
|
|
|
Use the following procedure to boot a Zephyr application on the Gordon Peak
|
|
MRB.
|
|
|
|
Build Zephyr Application
|
|
========================
|
|
|
|
Build a Zephyr application; for instance, to build the ``hello_world``
|
|
application for the GP MRB:
|
|
|
|
.. zephyr-app-commands::
|
|
:zephyr-app: samples/hello_world
|
|
:board: gpmrb
|
|
:goals: build
|
|
|
|
This will create a standard ELF binary application file named
|
|
:file:`zephyr.elf`, and the same binary with debugging information
|
|
removed named :file:`zephyr.strip`. Because of the limited firmware
|
|
flash area on board, we'll use the smaller, stripped version.
|
|
|
|
Move the stripped application to your home directory for use
|
|
in the next steps:
|
|
|
|
.. code-block:: console
|
|
|
|
$ cp zephyr/zephyr.strip ~
|
|
|
|
Get the Leaf Hill Firmware Files
|
|
================================
|
|
|
|
The Slim Bootloader (see the next step) requires binary firmware images
|
|
specific to the GP MRB: in this instance, the "Leaf Hill" firmware.
|
|
This can be downloaded from Intel:
|
|
|
|
.. code-block:: console
|
|
|
|
$ cd
|
|
$ wget https://firmware.intel.com/sites/default/files/leafhill-0.70-firmwareimages.zip
|
|
$ unzip leafhill-0.70-firmwareimages.zip
|
|
|
|
There will now be two files named :file:`LEAFHILD.X64.0070.D01.1805070344.bin`
|
|
and :file:`LEAFHILD.X64.0070.R01.1805070352.bin` or similar in your home
|
|
directory, which are the debug (``D``) and release (``R``) versions of the
|
|
binary packages, respectively. Make note of the release (:file:`*R01*`)
|
|
file name for the next step.
|
|
|
|
Build Slim Bootloader
|
|
=====================
|
|
|
|
Zephyr runs as a direct payload of the Slim Bootloader (SBL). For more
|
|
complete information on SBL, including comprehensive build instructions,
|
|
see the `Slim Bootloader <https://slimbootloader.github.io/>`_ site.
|
|
|
|
.. code-block:: console
|
|
|
|
$ cd
|
|
$ git clone https://github.com/slimbootloader/slimbootloader.git
|
|
$ cd slimbootloader
|
|
$ python BuildLoader.py clean
|
|
$ python BuildLoader.py build apl -p ~/zephyr.strip
|
|
|
|
Now that the SBL has been built with the Zephyr application as the direct
|
|
payload, we need to "stitch" together SBL with the board firmware package.
|
|
Be sure to replace the release filename with the one noted in the previous
|
|
step:
|
|
|
|
.. code-block:: console
|
|
|
|
$ python Platform/ApollolakeBoardPkg/Script/StitchLoader.py \
|
|
-i ~/LEAFHILD.X64.0070.R01.1805070352.bin \
|
|
-s Outputs/apl/Stitch_Components.zip \
|
|
-o ~/sbl.bin
|
|
|
|
Now the file :file:`sbl.bin` in your home directory contains a firmware
|
|
image with SBL and the Zephyr application, ready to flash to the GP MRB.
|
|
|
|
Flash the Image
|
|
===============
|
|
|
|
Connect the IOC to the GP MRB and connect the USB cable to your development
|
|
machine. Then, using the Intel Platform Flash tools supplied with your
|
|
board, flash the firmware:
|
|
|
|
.. code-block:: console
|
|
|
|
$ sudo /opt/intel/platformflashtool/bin/ias-spi-programmer --write ~/sbl.bin
|
|
|
|
.. note::
|
|
|
|
Refer to the instructions with the IOC and/or GP MRB for further
|
|
information on flashing the firmware.
|
|
|
|
Launch Zephyr
|
|
=============
|
|
|
|
Connect to UART 2 on the GP MRB and press the "ignition" button. After
|
|
initialization messages, you will see the Zephyr banner:
|
|
|
|
.. code-block:: console
|
|
|
|
***** Booting Zephyr OS v1.14.0-rc3-1254-g2a086e4c13ef *****
|
|
Hello World! gpmrb
|
|
|
|
|
|
You are running a Zephyr application on your Gordon Peak MRB.
|