phosphor-ipmi-flash: Aspeed LPC Tested

Patrick Venture venture at google.com
Tue Jul 16 00:14:55 AEST 2019


On Fri, Jul 12, 2019 at 1:32 AM CS20 CTCchien <CTCCHIEN at nuvoton.com> wrote:
>
> Hi Patrick,
>
> I follow your instructions in Configuration B to build host tool and lib for BMC.
> But after I run
> ./burn_my_bmc  \
>   --command update \
>   --interface ipmilpc \
>   --image image-u-boot \
>   --sig image-u-boot.sig \
>   --type static \
>   --address 0xfedc1000 \
>   --length 0x1000
> , it will show
> /flash/image not found
> Exception received: Goal firmware or interface not supported

That's telling me that the BMC library compiled isn't configured for
this, or that something has failed at run-time on the BMC.  It's more
likely that the BMC library doesn't have all the flags set to do what
it needs configuration-wise, but that's just speculation.

Can you provide the configuration you're using?
Can you check the journalctl log to see if there are any messages from
the library?

>
> Please advise.
> Thanks a lot
>
> B.R.
> Medad
>
> -----Original Message-----
> From: CS20 CTCchien
> Sent: Tuesday, July 9, 2019 5:55 PM
> To: Patrick Venture <venture at google.com>
> Subject: RE: phosphor-ipmi-flash: Aspeed LPC Tested
>
> Hi Patrick,
>
> I have few questions about Configuration B( nuvoton LPC)
>
> How do you know what value the MAPPED_ADDRESS should be?
> EXTRA_OECONF_append_b = " MAPPED_ADDRESS=0xc0008000"
>
> These parameters are the input of running an application , but why can you just assign a address and length before allocating?
> --address 0xfedc1000
> --length 0x1000
>
>
> Thanks
>
> B.R.
> Medad
> -----Original Message-----
> From: openbmc <openbmc-bounces+george.hung=quantatw.com at lists.ozlabs.org> On Behalf Of Patrick Venture
> Sent: Thursday, June 27, 2019 3:55 AM
> To: OpenBMC Maillist <openbmc at lists.ozlabs.org>; Adriana Kobylak <anoo at us.ibm.com>
> Subject: phosphor-ipmi-flash: Aspeed LPC Tested
>
> 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
> ________________________________
> ________________________________
>  The privileged confidential information contained in this email is intended for use only by the addressees as indicated by the original sender of this email. If you are not the addressee indicated in this email or are not responsible for delivery of the email to such a person, please kindly reply to the sender indicating this fact and delete all copies of it from your computer and network server immediately. Your cooperation is highly appreciated. It is advised that any unauthorized use of confidential information of Nuvoton is strictly prohibited; and any information in this email irrelevant to the official business of Nuvoton shall be deemed as neither given nor endorsed by Nuvoton.


More information about the openbmc mailing list