<div dir="ltr">Hello,<br><br>My name is Vivek Gani and I’m representing the Power Management Bus (PMBus(r)) Forum (<a href="https://PMBus.org">https://PMBus.org</a>), part of the System Management Interface Forum (SMIF), Inc (<a href="http://smiforum.org/">http://smiforum.org/</a>). Our group is composed of both power supply vendors and chip/system manufacturers. Together we create digital power protocols (PMBus, AVSBus(tm)) supported by a number of power supplies on the market.<br><br>Lately we have been discussing how to define a standard file format for digital power supplies. Currently each power supply vendor has their own format. This causes a burden for the system designer and manufacturer using a mixture of power supplies from different vendors. On the power supply vendor (and procurement manager) end this has also led to more logistics in order to ship power supplies 'preconfigured' when in many cases an 'off-the-shelf' product could have been used then configured during system board manufacture or even in-system.<br><br>Our focus is currently around power supply configuration and updates over PMBus, though we want it to be open-ended to support other usecases too. As far as stakeholders, initially this started out within the PMBus Standards Working Group where power supply vendors were focused on board bringup scenarios but thanks to people like Mike Jones (Analog Devices) and Mariusz Oriol (Intel) we’re now realizing such an effort will make more sense if done while keeping in mind the needs of groups like OpenBMC & Redfish.

Specifically we want to try and create a configuration format and toolchain that will find a balance between:<br><br>- Being human editable.<br>In theory files could be generated in syntactically verbose formats like XML, but in practice as an applications engineer being able to easily edit configuration files by hand has proven very helpful in resolving customer issues.<br><br>
- Protocol generic enough to support minimum data to perform a PMBus transaction.<br>Specifically, one can use just address, command code, data (in hex/binary), and PMBus transaction type data to configure a device. Additional specifiers such as numeric format & named bitfields are optional.<br>
<br>- Facilitates conditional/stateful aspects in the configuration process.<br>While in theory things would be purely declarative in practice most power supply devices may be in certain states (that change as commands are sent) that necessitate management of state, dependencies, and ordering.<br>
<br>- Having a verification mechanism with common format for ‘proof of content’.<br>Format could be something standard like sha1/md5 sum though the instructions to perform verification may be vendor-specific. May be limited to RAM-only though some vendors may offer non-volatile memory verification methods.<br><br><div>Here’s a high-level graphic of what we have in mind: <a href="https://www.dropbox.com/s/8ey0errn7fe9gc0/2020-09-11%20-%20standard%20config%20groups%20and%20collateral.png">https://www.dropbox.com/s/8ey0errn7fe9gc0/2020-09-11%20-%20standard%20config%20groups%20and%20collateral.png</a><br></div><div><br></div><div>We want to first present the idea here and see what the OpenBMC community thinks about this effort. Is power supply configuration and updates something of interest to this community? Have there been any pain points experienced so far from the system engineering side you could see solved through collaboration on a common format?<br><br>Regards,<br><br>Vivek</div></div>