Hi,

> +    case CLOUDHV_DEVICE_ID: // Cloud Hypervisor host bridge

No need for the comment ...

> +++ b/OvmfPkg/Include/IndustryStandard/CloudHv.h
> @@ -0,0 +1,35 @@
> +/** @file
> +  Various defines related to Cloud Hypervisor
> +
> +  SPDX-License-Identifier: BSD-2-Clause-Patent
> +
> +**/
> +#ifndef __CLOUDHV_H__
> +#define __CLOUDHV_H__
> +
> +//
> +// Host Bridge Device ID
> +//
> +#define CLOUDHV_DEVICE_ID 0x0d57

... this is enough documentation IMHO.

> +  if (mAcpiPmBaseAddress == 0) {
> +    IoWrite8 (CLOUDHV_ACPI_SHUTDOWN_IO_ADDRESS, 5 << 2 | 1 << 5);

This looks like the sleep control register of the hw-reduced acpi pm
profile.  I'd suggest to use a new variable then, for example use

    mAcpiHwReducedSleepCtl = CLOUDHV_ACPI_SHUTDOWN_IO_ADDRESS

> +    case 0xffff: /* microvm */
> +      return;

Huh?

> @@ -778,21 +782,22 @@ QemuInitializeRam (
>    if (IsMtrrSupported ()) {
>      MtrrGetAllMtrrs (&MtrrSettings);
>  
> -    //
> -    // MTRRs disabled, fixed MTRRs disabled, default type is uncached
> -    //
> -    ASSERT ((MtrrSettings.MtrrDefType & BIT11) == 0);
> -    ASSERT ((MtrrSettings.MtrrDefType & BIT10) == 0);
> -    ASSERT ((MtrrSettings.MtrrDefType & 0xFF) == 0);
> -
> -    //
> -    // flip default type to writeback
> -    //
> -    SetMem (&MtrrSettings.Fixed, sizeof MtrrSettings.Fixed, 0x06);
> -    ZeroMem (&MtrrSettings.Variables, sizeof MtrrSettings.Variables);
> -    MtrrSettings.MtrrDefType |= BIT11 | BIT10 | 6;
> -    MtrrSetAllMtrrs (&MtrrSettings);
> +    if (mHostBridgeDevId != CLOUDHV_DEVICE_ID) {

Do you need the MtrrGetAllMtrrs() call?  If not you can just use this:

   if (IsMtrrSupported () && mHostBridgeDevId != CLOUDHV_DEVICE_ID) 


> @@ -372,14 +375,18 @@ MiscInitialization (
>                               MICROVM_PSEUDO_DEVICE_ID);
>        ASSERT_RETURN_ERROR (PcdStatus);
>        return;
> +    case CLOUDHV_DEVICE_ID:
> +      DEBUG ((DEBUG_INFO, "%a: Cloud Hypervisor host bridge\n", 
> __FUNCTION__));
> +      PcdStatus = PcdSet16S (PcdOvmfHostBridgePciDevId,
> +                             CLOUDHV_DEVICE_ID);
> +      ASSERT_RETURN_ERROR (PcdStatus);
> +      return;
>      default:
>        DEBUG ((DEBUG_ERROR, "%a: Unknown Host Bridge Device ID: 0x%04x\n",
>          __FUNCTION__, mHostBridgeDevId));
>        ASSERT (FALSE);
>        return;
>    }
> -  PcdStatus = PcdSet16S (PcdOvmfHostBridgePciDevId, mHostBridgeDevId);
> -  ASSERT_RETURN_ERROR (PcdStatus);

Removing this check looks suspicious.

If it is not needed here for some reason move that change to a separate
patch with a commit message explaining things.

take care,
  Gerd



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#84204): https://edk2.groups.io/g/devel/message/84204
Mute This Topic: https://groups.io/mt/87428911/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to