Skip to content

Manual override of SBE side #3

@hanetzer

Description

@hanetzer

So, I'm beginning work on porting coreboot to power9, specifically the Talos II family of boards.
In part of this, I'll be altering the hostboot bootloader to kickstart the coreboot way of doing things, and as such will need to alter the seeproms.

I had the idea to use the RebootAttempts variable to force it one way or the other, keeping a
'normal' seeprom image on one side and working on the other, so as to have a safe fallback
(the way the talos machines are wired up one can easily read/write one seeprom side via i2c,
and not the other). However, using busctl set-property for it resets it to 3.

So, I had an idea based on the cfam override file; what if we took the code below

if (getBootCount() > 0)
{
sbeSide = 0;
log<level::INFO>("Setting SBE seeprom side to 0",
entry("SBE_SIDE_SELECT=%d", 0));
}
else
{
sbeSide = 0x00004000;
log<level::INFO>("Setting SBE seeprom side to 1",
entry("SBE_SIDE_SELECT=%d", 1));
}

and altered it to first check for some override file to determine which seeprom side to boot,
then doing the normal RebootAttempts manner? It would keep current behavior, and allow a
bit of flex when doing sbe work.

Do you think this would be a good option for 'everyone' or should it just be a local hack I use
indev?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions