summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Venture <venture@google.com>2019-01-15 09:20:23 -0800
committerGunnar Mills <gmills@us.ibm.com>2019-01-25 14:21:52 +0000
commit1b56459b545bb860321da9a70db275cde2eb3850 (patch)
treef6085441cb5a9c349c5b6e9e11b85faabf5ac547
parent64e272ddb59ff3cfca15801fec71c970d2fb36ae (diff)
downloadopenbmc-docs-1b56459b545bb860321da9a70db275cde2eb3850.tar.gz
openbmc-docs-1b56459b545bb860321da9a70db275cde2eb3850.zip
designs: firmware_update_via_blobs: add configuration details
Add the details on how one has to configure a platform to use it. Although these details are less about the design, they are becoming relevant. Change-Id: I11ee48dc768aa424fe6fb5886e030ee172a5c8de Signed-off-by: Patrick Venture <venture@google.com>
-rw-r--r--designs/firmware_update_via_blobs.md56
1 files changed, 56 insertions, 0 deletions
diff --git a/designs/firmware_update_via_blobs.md b/designs/firmware_update_via_blobs.md
index d587d61..4ef91ef 100644
--- a/designs/firmware_update_via_blobs.md
+++ b/designs/firmware_update_via_blobs.md
@@ -425,3 +425,59 @@ BMC without user intervention.
A required functional test is one whereby an image is sent down to the BMC with
a valid signature. The expected result is that the verification step will return
success.
+
+## Configuration
+
+To use `phosphor-ipmi-flash` a platform must provide a configuration. A
+platform can configure multiple interfaces, such as both lpc and pci. However,
+a platform should only configure either static layout updates, or ubi. If
+enabling lpc, the platform must specify either aspeed or nuvoton.
+
+The following are the two primary configuration options, which control how the
+update is treated.
+
+Option | Meaning
+------------------------ | -------
+`--enable-static-layout` | Enable treating the update as a static layout update.
+`--enable-tarball-ubi` | Enable treating the update as a tarball for UBI update.
+
+The following are configuration options for how the host and BMC are meant to
+transfer the data. By default, the data-in-IPMI mechanism is enabled.
+
+There are two configurable data transport mechanisms, either staging the bytes
+via the LPC memory region, or the PCI-to-AHB memory region. Because there is
+only one `MAPPED_ADDRESS` variable at present, a platform should only configure
+one. The platform's device-tree may have the region locked to a specific
+driver (lpc-aspeed-ctrl), preventing the region from other use.
+
+***NOTE:*** It will likely be possible to configure both in the near future.
+
+Variable | Default | Meaning
+--------------------- | ------- | -------
+`MAPPED_ADDRESS` | 0 | The address used for mapping P2A or LPC into the BMC's memory-space.
+
+Option | Meaning
+--------------------- | -------
+`--enable-pci-bridge` | Enable the PCI-to-AHB transport option.
+`--enable-lpc-bridge` | Enable the LPC-to-AHB transport option.
+
+If a platform enables lpc as the transport mechanism, a specific vendor must be
+selected via the following configuration option. Currently, only two are
+supported.
+
+Option | Meaning
+---------------------- | -------
+`--enable-aspeed-lpc` | Use with ASPEED parts.
+`--enable-nuvoton-lpc` | Use with Nuvoton parts.
+
+### Internal Configuration Details
+
+The following variables can be set to whatever you wish, however they have
+usable default values.
+
+Variable | Default | Meaning
+---------------------------- | -------------------------- | -------------------------------------------------------------------------
+`STATIC_HANDLER_STAGED_NAME` | `/run/initramfs/bmc-image` | The filename where to write the staged firmware image for static updates.
+`TARBALL_STAGED_NAME` | `/tmp/image-update.tar` | The filename where to write the UBI update tarball.
+`HASH_FILENAME` | `/tmp/bmc.sig` | The file to use for the hash provided.
+
OpenPOWER on IntegriCloud