> +typedef
> +EFI_STATUS
> +(EFIAPI *EDKII_PEI_SHADOW_MICROCODE) (
> +  IN  EDKII_PEI_SHADOW_MICROCODE_PPI        *This,
> +  IN  UINTN                                 CpuIdCount,
> +  IN  EDKII_PEI_CPU_MICROCODE_ID            *MicrocodeCpuId,

1. How about CpuMicrocodeId or EDKII_PEI_MICROCODE_CPU_ID?
I'd like to keep the name and type be matched.


> +  OUT UINTN                                 *BufferSize,
> +  OUT VOID                                  **Buffer
2. I remember that we offline discussed that Buffer/BufferSize are not needed
to be part of the parameters. It can provide better flexibility that doesn't 
require
the microcode in memory is in continuous memory.
Why are they still in the parameters?

OK. I see now. Because EDKII_MICROCODE_PATCH_HOB contains below fields:
typedef struct {
  UINT64    MicrocodePatchAddress;
  UINT64    MicrocodePatchRegionSize; 
  ...
} EDKII_MICROCODE_PATCH_HOB;
which already restricts that the microcode in memory is in continuous memory.

I'm ok with this.

> +EFI_STATUS
> +PlatformShadowMicrocode (
> +  IN OUT CPU_MP_DATA             *CpuMpData
> +  )
> +{
> +  return EFI_NOT_FOUND;

3. Can you add comments to say that microcode shadow
in DXE only supports the location identified by PCD?
4. How about returning EFI_UNSUPPORTED?


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#54195): https://edk2.groups.io/g/devel/message/54195
Mute This Topic: https://groups.io/mt/71134279/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to