Hi,

> > The third one is messy. It relies on SMI_EN, which is an ioport at
> > PMBA+0x30. It requires a configured PMBA.

Isn't that initialized early anyway, because the pm timer lives there?
It's not a regular pci bar exactly to allow early init, so the full pci
bus scan + bar allocation done later will not mess up things.

[ just a question, could very well be that even when initialized early
  it isn't early enough because you need to know the memory layout
  before uncompressing the firmware modules ]

> There's another problem with basing this decision in OVMF on
> SMI_EN.APMC_EN: it is not an idempotent check. At some point the
> firmware itself has to set SMI_EN.APMC_EN.

Yep, you'll need some variable saying whenever smm is there or not and
check that.  Because of this.  Or (in case we are going for the fw_cfg
file) because you don't want dig into fw_cfg each time you need to know
this.

cheers,
  Gerd



Reply via email to