Request to create ampere-platform-mgmt and ampere-ipmi-oem repos

Thang Nguyen thang at os.amperecomputing.com
Tue May 11 19:00:12 AEST 2021


On 04/05/2021 08:47, Thang Nguyen wrote:
>
> On 30/04/2021 21:25, Patrick Williams wrote:
>> On Sat, Apr 24, 2021 at 07:48:14PM +0700, Thang Nguyen wrote:
>>> I intend to push Ampere specific features, you can find current 
>>> codes at
>>> https://github.com/ampere-openbmc/ampere-platform-mgmt.
>> It seems to me like all of the functional areas you mentioned we already
>> have some sort of implementation.  It would be better if you could work
>> with the maintainers on these repositories to see how it can be enhanced
>> to support your use case.  As I mentioned in another email thread today,
>> I really don't want to see catch-all repositories being created.
>>
>> If you have specific features that aren't covered by an existing
>> repository or you feel like you've ran into a roadblock coming to
>> consensus with the developers already working in those areas, we should
>> revisit making repositories for those specific functional areas.
>>
>>> It is good to have any of below can be implemented with current 
>>> existing
>>> repositories:
>>>
>>> - utilities to flash Ampere Host firmware and NVPARM: Boot EEPROM,
>>> UEFI/ATF firmware, ...
>> Are these extra utilities or the firmware update procedures themselves?
>> Have you already implemented support in phosphor-bmc-code-mgmt? There
>> are other systems that have BIOS update for x86 done in that repository.

I use the repo also. And I extend the firmware update (by patches) to 
support flashing Boot EEPROM.

I use flashcp to write the firmware into Host SPI-NOR. But the command 
does not support to skip an offset. For example, I want to skip first 
4MB so that the current BIOS setting is not cleared. Any other tool to 
support it?

>>
>>> - Control boot EEPROM based on current input GPIO and log the
>>> information into Redfish
>>> (https://github.com/ampere-openbmc/ampere-platform-mgmt/tree/ampere/altra/host-control/scp-failover) 
>>>
>> This looks like something that could be implemented with
>> phosphor-gpio-monitor.  Have you looked at that?
Yes, I think it is feasible to use phosphor-gpio-monitor to monitor the 
GPIO and switch the Boot EEPROM. And use logger-systemd to log Redfish 
events.
>>
>>> - Handle boot progress from Ampere's Altra SMpro, log the progress into
>>> Redfish and update dbus. Note that the boot progress is based on
>>> information from EDK2 and other firmware like ATF and SMpro.
>> You can probably fit this into the existing post-code repositories:
>>      - phosphor-host-postd
>>      - phosphor-post-code-manager
>>
>> We recently did similar for a system where we get the post codes over
>> IPMB rather than GPIOs.
I read the design document at 
https://github.com/openbmc/docs/blob/master/designs/multi-host-postcode.md. 
As I understand, it is for POST (Power On Self Test) but I want to 
monitor boot progress and log events. I have boot-progress information 
from the hwmon misc device. It is on the SoC sideband interface.
> Thanks Patrick for the information. Let me investigate more on these 
> repositories to see if I can use them for Ampere specific requirements.
>>> - Handle events from Ampere Altra's SMpro (like Sideband controller) 
>>> and
>>> log to IPMI SEL and Redfish.
>> This sounds like it should go into ampere-ipmi-oem?  I'm making an
>> assumption that the SMpro is an IPMB path, which might be wrong.
Yes, it is on the SoC sideband interface to monitor and report RAS 
errors. We implemented smpro-errmon driver that expose RAS error 
information over /sys/class/hwmon. IPMI OEM seems not match this case.


More information about the openbmc mailing list