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