phosphor-ipmi-flash: Aspeed LPC Tested
Patrick Venture
venture at google.com
Thu Jun 27 05:54:44 AEST 2019
The following three out-of-band data mechanisms are tested and
supported by phosphor-ipmi-flash:
aspeed-p2a-ctl (PCI-to-AHB)
aspeed-lpc-ctl
nuvoton LPC
Tested configurations:
All the configurations have the cleanup blob enabled via the default
PACKAGECONFIG in the recipe.
Configuration A:
This uses a static layout image, the lpc bridge, and aspeed. Because
it's using the static layout, we enable the reboot-update*
EXTRA_OECONF_append_a = " --enable-static-layout"
EXTRA_OECONF_append_a = " --enable-lpc-bridge"
EXTRA_OECONF_append_a = " --enable-aspeed-lpc"
EXTRA_OECONF_append_a = " --enable-reboot-update"
EXTRA_OECONF_append_a = " MAPPED_ADDRESS=0x98000000"
The MAPPED_ADDRESS above is the region for lpc_ctrl in the device-tree.
Host-tool command**:
/tmp/phosphor_ipmi_flash_tool \
--command update \
--interface ipmilpc \
--image image-bmc \
--sig image-bmc.sig \
--type static \
--address 0xfedc1000 \
--length 0x1000
Sending over the firmware image.
sending writeMeta
writemeta sent
Sending over the hash file.
sending writeMeta
writemeta sent
Opening the verification file
Committing to /flash/verify to trigger service
Calling stat on /flash/verify session to check status
other
running
success
Returned success
succeeded
Opening the update file
Committing to /flash/update to trigger service
Calling stat on /flash/update session to check status
running
Opening the cleanup blob
Exception received: blob exception received: Received IPMI_CC: busy
Configuration B:
This uses a static layout image, the lpc bridge, and nuvoton. Because
it's using the static layout, we enable the reboot-update*
EXTRA_OECONF_append_b = " --enable-static-layout"
EXTRA_OECONF_append_b = " --enable-lpc-bridge"
EXTRA_OECONF_append_b = " --enable-nuvoton-lpc"
EXTRA_OECONF_append_b = " --enable-reboot-update"
EXTRA_OECONF_append_b = " MAPPED_ADDRESS=0xc0008000"
Host-tool command**:
/tmp/phosphor_ipmi_flash_tool \
--command update \
--interface ipmilpc \
--image image-bmc \
--sig image-bmc.sig \
--type static \
--address 0xfedc1000 \
--length 0x1000
Sending over the firmware image.
sending writeMeta
writemeta sent
Sending over the hash file.
sending writeMeta
writemeta sent
Opening the verification file
Committing to /flash/verify to trigger service
Calling stat on /flash/verify session to check status
other
running
success
Returned success
succeeded
Opening the update file
Committing to /flash/update to trigger service
Calling stat on /flash/update session to check status
running
Opening the cleanup blob
Exception received: blob exception received: Received IPMI_CC: busy
Configuration C:
This uses a static layout image, the pci bridge, and aspeed. Because
it's using the static layout, we enable the reboot-update*
EXTRA_OECONF_append_c = " --enable-static-layout"
EXTRA_OECONF_append_c = " --enable-pci-bridge"
EXTRA_OECONF_append_c = " --enable-aspeed-p2a"
EXTRA_OECONF_append_c = " --enable-reboot-update"
EXTRA_OECONF_append_c = " MAPPED_ADDRESS=0x47FF0000"
/tmp/phosphor_ipmi_flash_tool \
--command update \
--interface ipmipci \
--image image-bmc \
--sig image-bmc.sig \
--type static
Sending over the firmware image.
sending writeMeta
writemeta sent
Sending over the hash file.
sending writeMeta
writemeta sent
Opening the verification file
Committing to /flash/verify to trigger service
Calling stat on /flash/verify session to check status
other
running
success
Returned success
succeeded
Opening the update file
Committing to /flash/update to trigger service
Calling stat on /flash/update session to check status
running
Opening the cleanup blob
Exception received: blob exception received: Received IPMI_CC: busy
*I'm going to move this to a PACKAGECONFIG.
**Compiled to run in our environment and not the default autotools method.
I haven't tested the ipmibt interface in awhile, but I will give it a
run later. I'm looking at extending the design to support sending
down the host BIOS image.
Patrick
More information about the openbmc
mailing list