<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=big5">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div class="elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Hi Brandon and Jie,</div>
<div class="elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div class="elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span style="background-color:rgb(255, 255, 255);display:inline !important"></span>I would like to send the SMBIOS table from Host to BMC by using "smbios-ipmi-blobs" interface. And according to Jie's clue (can send the smbios tables to BMC either through LinuxBoot
or host), and then I saw both of you were contributing to the "https://github.com/u-root/u-root/blob/main/cmds/exp/smbios_transfer/smbios_transfer.go". Therefore, I have some questions about this, could you help to answer them?</div>
<div class="elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<ol>
<li>
<div><span style="background-color:rgb(255,255,255); display:inline!important">I'm assuming that </span>I can build "smbios_transfer" command and execute it on the Host-side (with installed Ubuntu 20.04), am i correct? <br>
</div>
<br>
<div>In fact, I'm not familiar with u-root and GO language. However, after referring to some websites to install GO and download u-root, I for now have built the cmd out and run it on my Host. Unfortunately, the result looks like failed.<br>
===<br>
$ sudo ./smbios_transfer
<div>2022/08/23 14:47:14 Transferring SMBIOS tables, attempt 1/2</div>
<div>2022/08/23 14:47:34 Error tranferring SMBIOS tables over IPMI: failed to write and commit blob /smbios: IPMI BlobWrite /smbios failed: failed to read rawconn: i/o timeout; IPMI BlobClose /smbios failed: failed to read rawconn: i/o timeout</div>
<div>2022/08/23 14:47:34 Transferring SMBIOS tables, attempt 2/2</div>
2022/08/23 14:47:54 Error tranferring SMBIOS tables over IPMI: failed to write and commit blob /smbios: IPMI BlobWrite /smbios failed: failed to read rawconn: i/o timeout; IPMI BlobClose /smbios failed: failed to read rawconn: i/o timeout<br>
===<br>
<br>
Do you have any suggestions on this error? <br>
<br>
ps. I'm sure the IPMI BT interface is workable.</div>
</li></ol>
<ol start="2">
<li>On the BMC-side, I just need to enable smbios-mdr package, correct? or anything else?</li></ol>
<div><br>
</div>
<div>Thanks.</div>
<div><br>
</div>
<div>Regards,</div>
<div>Chris Chen</div>
<div><br>
</div>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>寄件者:</b> Chris Chen (TPI) <Chris.Chen3@flex.com><br>
<b>寄件日期:</b> 2022年8月19日 下午 05:50<br>
<b>收件者:</b> Thang Nguyen <thang@amperemail.onmicrosoft.com>; Jie Yang <jjy@google.com><br>
<b>副本:</b> Garrett, Mike (HPE Server Firmware) <mike.garrett@hpe.com>; Andrei Kartashev <a.kartashev@yadro.com>; CS20 CHLi30 <chli30@nuvoton.com>; openbmc <openbmc@lists.ozlabs.org><br>
<b>主旨:</b> 回覆: Read smbios2 file failed</font>
<div> </div>
</div>
<div dir="ltr">
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Hello everyone,</div>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div class="x_elementToProof elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
I would like to send the SMBIOS table from Host to BMC by using "smbios-ipmi-blobs" interface. But, after reviewing all your discussions, I still have no idea how to enable the feature. Could you help to share more details with me? for example,</div>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<ol>
<li><span>How to generate a raw SMBIOS table with MDRv2 header? (like using "dmidecode --dump-bin" and what else?)</span></li><li>How do start sending SMBIOS binary file at Host-side? (As I know, the FW update mechanism through IPMI blob would need to build a host-tool, named burn-my-bmc, on the Host and then run the tool to start image data transformation. Does the "smbios-ipmi-blobs"
with the same method?)<span style="text-align:start; background-color:rgb(255,255,255); display:inline!important"><span style="background-color:rgb(255,255,255); display:inline!important"></span></span></li></ol>
<div><br>
</div>
<div>p.s. The OS running on the Host is Ubuntu 20.04.</div>
<div><br>
</div>
<div>Thanks.</div>
<div><br>
</div>
<div>Regards,</div>
<div>Chris Chen</div>
</div>
<div id="x_signature_bookmark"></div>
<div id="x_appendonsend"></div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr" class="x_elementToProof"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>寄件者:</b> openbmc <openbmc-bounces+chris.chen3=flex.com@lists.ozlabs.org> 代表 Thang Nguyen <thang@amperemail.onmicrosoft.com><br>
</font></div>
<div dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>寄件日期:</b> 2021年9月17日 下午 09:40<br>
<b>收件者:</b> Jie Yang <jjy@google.com><br>
<b>副本:</b> Garrett, Mike (HPE Server Firmware) <mike.garrett@hpe.com>; Andrei Kartashev <a.kartashev@yadro.com>; CS20 CHLi30 <chli30@nuvoton.com>; openbmc <openbmc@lists.ozlabs.org><br>
<b>主旨:</b> Re: Read smbios2 file failed</font>
<div> </div>
</div>
<div>
<p style="margin-top: 0px; margin-bottom: 0px;margin-top:0px; margin-bottom:0px">
Thanks Jia for your information<br>
</p>
<div class="x_x_moz-cite-prefix">On 17/09/2021 05:36, Jie Yang wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">Hi,
<div><br>
</div>
<div class="elementToProof">Actually I added an ipmi blob interface to smbios-mdr<a href="https://urldefense.com/v3/__https://github.com/openbmc/smbios-mdr/tree/master/src/smbios-ipmi-blobs__;!!HSntlCg!EtwhV18i5GdJ-OcUFIP0uI2ezn8lbBtTEAcWRgPad7EUuOOzOfTVuW4xtvpYjCWU$" data-auth="NotApplicable"> https://github.com/openbmc/smbios-mdr/tree/master/src/smbios-ipmi-blobs</a>.
With this interface you can send the smbios tables to BMC either through LinuxBoot or host. The LinuxBoot code <a href="https://urldefense.com/v3/__https://github.com/u-root/u-root/tree/master/cmds/exp/smbios_transfer__;!!HSntlCg!EtwhV18i5GdJ-OcUFIP0uI2ezn8lbBtTEAcWRgPad7EUuOOzOfTVuW4xtiWmoL2X$" data-auth="NotApplicable">https://github.com/u-root/u-root/tree/master/cmds/exp/smbios_transfer</a>.
Writing and committing to this blob will generate the MDR header.</div>
<div><br>
</div>
<div>-Jie</div>
</div>
<br>
<div class="x_x_gmail_quote">
<div dir="ltr" class="x_x_gmail_attr">On Thu, Sep 16, 2021 at 4:19 AM Thang Nguyen <<a href="mailto:thang@amperemail.onmicrosoft.com" data-auth="NotApplicable">thang@amperemail.onmicrosoft.com</a>> wrote:<br>
</div>
<blockquote class="x_x_gmail_quote" style="margin:0px 0px 0px
0.8ex; border-left:1px solid rgb(204,204,204); padding-left:1ex">
Thanks Tim, Mike and Andrei for very useful information. We can make it <br>
work by adding MDRv2 header.<br>
<br>
I am finding some information about the IPMI blobs commands. I can see <br>
some notes at<br>
<br>
<a href="https://urldefense.com/v3/__https://github.com/openbmc/docs/blob/master/designs/binarystore-via-blobs.md__;!!HSntlCg!EtwhV18i5GdJ-OcUFIP0uI2ezn8lbBtTEAcWRgPad7EUuOOzOfTVuW4xtoaEVKUv$" data-auth="NotApplicable">https://github.com/openbmc/docs/blob/master/designs/binarystore-via-blobs.md</a><br>
<br>
<a href="https://urldefense.com/v3/__https://github.com/openbmc/phosphor-ipmi-blobs/blob/master/README.md__;!!HSntlCg!EtwhV18i5GdJ-OcUFIP0uI2ezn8lbBtTEAcWRgPad7EUuOOzOfTVuW4xtrf-IcxD$" data-auth="NotApplicable">https://github.com/openbmc/phosphor-ipmi-blobs/blob/master/README.md</a><br>
<br>
But I have not found more description about the IPMI blob commands like <br>
NetFn, Func, ... that I can send a file from Host to BMC. Do you have <br>
any information about them?<br>
<br>
<br>
Thanks,<br>
<br>
Thang Q. Nguyen<br>
<br>
On 16/09/2021 09:40, CS20 CHLi30 wrote:<br>
> Hi Thang,<br>
> Did you try to use smbios_entry_point or DMI from host to BMC /var/lib/smbios/smbios2 for parsing?<br>
><br>
> You can refer this sysfs-firmware-dmi-tables as below:<br>
><br>
> The firmware provides DMI structures as a packed list of data referenced by a SMBIOS table entry point.<br>
> The SMBIOS entry point contains general information, like SMBIOS version, DMI table size, etc.<br>
> The structure, content and size of SMBIOS entry point is dependent on SMBIOS version.<br>
><br>
> The format of SMBIOS entry point and DMI structures can be read in SMBIOS specification.<br>
> The dmi/tables provides raw SMBIOS entry point and DMI tables through sysfs as an alternative to utilities reading them from /dev/mem.<br>
><br>
> The raw SMBIOS entry point and DMI table are presented as binary attributes and are accessible via:<br>
> /sys/firmware/dmi/tables/smbios_entry_point<br>
> /sys/firmware/dmi/tables/DMI<br>
><br>
> Best regards,<br>
> Tim<br>
><br>
> -----Original Message-----<br>
> From: openbmc [mailto:<a href="mailto:openbmc-bounces%2Bchli30" data-auth="NotApplicable">openbmc-bounces+chli30</a>=<a href="mailto:nuvoton.com@lists.ozlabs.org" data-auth="NotApplicable">nuvoton.com@lists.ozlabs.org</a>] On Behalf Of Garrett, Mike (HPE
Server Firmware)<br>
> Sent: Wednesday, September 15, 2021 9:19 PM<br>
> To: Andrei Kartashev <<a href="mailto:a.kartashev@yadro.com" data-auth="NotApplicable">a.kartashev@yadro.com</a>>; Thang Nguyen <<a href="mailto:thang@amperemail.onmicrosoft.com" data-auth="NotApplicable">thang@amperemail.onmicrosoft.com</a>>; openbmc <<a href="mailto:openbmc@lists.ozlabs.org" data-auth="NotApplicable">openbmc@lists.ozlabs.org</a>><br>
> Subject: RE: Read smbios2 file failed<br>
><br>
> We recently did the same thing and got it working. All you have to do is take the RAW smbios records blob in binary form (delivered as noted below in whatever way you choose) and prepend a specific header:
<a href="https://urldefense.com/v3/__https://apc01.safelinks.protection.outlook.com/?url=https*3A*2F*2Fgithub.com*2Fopenbmc*2Fsmbios-mdr*2Fblob*2F33c948a473bd273fea0cff82d4c99b70b7784be6*2Finclude*2Fsmbios_mdrv2.hpp*23L114&data=04*7C01*7Cchli30*40nuvoton.com*7C81a4bd29e4904bf4d84608d978510b92*7Ca3f24931d4034b4a94f17d83ac638e07*7C0*7C0*7C637673526954552742*7CUnknown*7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0*3D*7C1000&sdata=oQwcozsSoGlgSFwztPFV3FAoPpRZGYoZ7pc0*2BxDi1MA*3D&reserved=0__;JSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUl!!HSntlCg!EtwhV18i5GdJ-OcUFIP0uI2ezn8lbBtTEAcWRgPad7EUuOOzOfTVuW4xtsg8Gx_y$" data-auth="NotApplicable">
https://apc01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fopenbmc%2Fsmbios-mdr%2Fblob%2F33c948a473bd273fea0cff82d4c99b70b7784be6%2Finclude%2Fsmbios_mdrv2.hpp%23L114&data=04%7C01%7Cchli30%40nuvoton.com%7C81a4bd29e4904bf4d84608d978510b92%7Ca3f24931d4034b4a94f17d83ac638e07%7C0%7C0%7C637673526954552742%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjo
iV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=oQwcozsSoGlgSFwztPFV3FAoPpRZGYoZ7pc0%2BxDi1MA%3D&reserved=0</a><br>
><br>
> It is a little bit fragile as it introduces a dependency on the file download logic to write a non-standard header defined in another service that could potentially change.<br>
><br>
> Mike<br>
><br>
>> -----Original Message-----<br>
>> From: openbmc <openbmc-<br>
>> bounces+mike.garrett=<a href="mailto:hpe.com@lists.ozlabs.org" data-auth="NotApplicable">hpe.com@lists.ozlabs.org</a>> On Behalf Of Andrei<br>
>> Kartashev<br>
>> Sent: Wednesday, September 15, 2021 3:17 AM<br>
>> To: Thang Nguyen <<a href="mailto:thang@amperemail.onmicrosoft.com" data-auth="NotApplicable">thang@amperemail.onmicrosoft.com</a>>; openbmc<br>
>> <<a href="mailto:openbmc@lists.ozlabs.org" data-auth="NotApplicable">openbmc@lists.ozlabs.org</a>><br>
>> Subject: Re: Read smbios2 file failed<br>
>><br>
>> I don't know what is format of "dmidecode --dump-bin", but if it just<br>
>> raw dump of smbios then you only need to add mdr header.<br>
>><br>
>> See answer for the same question here:<br>
>> INVALID URI REMOVED<br>
>> 021-July/026882.html__;!!NpxR!2w0FkPs2KyaB6XOvB8et52bWKqAMLImmL-<br>
>> iUk9A_zZbJ8WLhMeXdvRAp-pcxt8Q$<br>
>><br>
>> On Wed, 2021-09-15 at 12:41 +0700, Thang Nguyen wrote:<br>
>>> Hi Andrei,<br>
>>><br>
>>> I see output of "dmidecode --dump-bin" follows SMBIOS specification.<br>
>>> As<br>
>>> the data for smbios-mdr does not follow this, do you know about the<br>
>>> document or any information I can reference to prepare data to send<br>
>>> to BMC??<br>
>>><br>
>>><br>
>>> Best Regards,<br>
>>><br>
>>> Thang Q. Nguyen<br>
>>><br>
>>> On 14/09/2021 15:51, Andrei Kartashev wrote:<br>
>>>> No, it is not same as "dmidecode --dump-bin".<br>
>>>><br>
>>>> On Tue, 2021-09-14 at 13:46 +0700, Thang Nguyen wrote:<br>
>>>>> On 13/09/2021 23:56, Andrei Kartashev wrote:<br>
>>>>>> You need to somehow deliver smbios data image to BMC. This<br>
>>>>>> means, your BIOS should implementat some logic to transfer<br>
>>>>>> this data.<br>
>>>>>> For BMC side see example here:<br>
>>>>>> <a href="https://urldefense.com/v3/__https://apc01.safelinks.protection.outlook.com/?url=https*3A*2__;JSU!!HSntlCg!EtwhV18i5GdJ-OcUFIP0uI2ezn8lbBtTEAcWRgPad7EUuOOzOfTVuW4xtgGDlRqi$" data-auth="NotApplicable">
https://apc01.safelinks.protection.outlook.com/?url=https%3A%2</a><br>
>>>>>> F%2Fgithub.com%2Fopenbmc%2Fintel-ipmi-&data=04%7C01%7Cchli<br>
>>>>>> 30%<a href="https://urldefense.com/v3/__http://40nuvoton.com__;!!HSntlCg!EtwhV18i5GdJ-OcUFIP0uI2ezn8lbBtTEAcWRgPad7EUuOOzOfTVuW4xthWsemHr$" data-auth="NotApplicable">40nuvoton.com</a>%7C81a4bd29e4904bf4d84608d978510b92%7Ca3f24931<br>
>>>>>> d4034b4a94f17d83ac638e07%7C0%7C0%7C637673526954552742%7CUnknow<br>
>>>>>> n%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik<br>
>>>>>> 1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=cG6ZZzOSXkuUtcQuuoymsRdP<br>
>>>>>> p24mINa%2FhCy%2BYhe%2FNmk%3D&reserved=0<br>
>> oem/blob/master/src/smbios<br>
>>>>>> mdrv2handler.cpp<br>
>>>>> Hi Andrei,<br>
>>>>><br>
>>>>> What is the format of smbios data to transfer to BMC? Is it the<br>
>>>>> same content of "dmidecode --dump-bin" command from Host Linux?<br>
>> or<br>
>>>>> anything special in formatting the content to send?<br>
>>>>><br>
>>>>>> On Mon, 2021-09-13 at 17:40 +0300, Alexander Raih wrote:<br>
>>>>>>> Hi guys, I am beginner in openbmc I build openbmc with<br>
>>>>>>> smbios-mdr repository and I have error:<br>
>>>>>>><br>
>>>>>>> Read data from flash error - Open MDRV2 table file failure<br>
>>>>>>><br>
>>>>>>> There isnt file in /var/lib/smbios/smbios2<br>
>>>>>>><br>
>>>>>>> How I can resolve this problem?<br>
>>>>>>> Help me please!!!<br>
>><br>
>> --<br>
>> Best regards,<br>
>> Andrei Kartashev<br>
>><br>
> ________________________________<br>
> ________________________________<br>
> 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.<br>
</blockquote>
</div>
</blockquote>
</div>
</div>
<DIV>
Legal Disclaimer :<BR>
The information contained in this message may be privileged and confidential. <BR>
It is intended to be read only by the individual or entity to whom it is addressed <BR>
or by their designee. If the reader of this message is not the intended recipient, <BR>
you are on notice that any distribution of this message, in any form, <BR>
is strictly prohibited. If you have received this message in error, <BR>
please immediately notify the sender and delete or destroy any copy of this message!<BR>
</DIV></body>
</html>