/* Translate an array of OpenFirmware device nodes to a UEFI device path fragment. */
STATIC RETURN_STATUS TranslateOfwNodes(IN CONST OFW_NODE *OfwNode, IN UINTN NumNodes, IN CONST EXTRA_ROOT_BUS_MAP *ExtraPciRoots, OUT CHAR16 *Translated, IN OUT UINTN *TranslatedSize)
/* Translate an array of OpenFirmware device nodes to a UEFI device path fragment. */
STATIC RETURN_STATUS TranslateOfwNodes(IN CONST OFW_NODE *OfwNode, IN UINTN NumNodes, IN CONST EXTRA_ROOT_BUS_MAP *ExtraPciRoots, OUT CHAR16 *Translated, IN OUT UINTN *TranslatedSize)
{
  RETURN_STATUS  Status;
  Status = RETURN_UNSUPPORTED;
  if (FeaturePcdGet (PcdQemuBootOrderPciTranslation)) {
    Status = TranslatePciOfwNodes (
               OfwNode,
               NumNodes,
               ExtraPciRoots,
               Translated,
               TranslatedSize
               );
  }
  if ((Status == RETURN_UNSUPPORTED) &&
      FeaturePcdGet (PcdQemuBootOrderMmioTranslation))
  {
    Status = TranslateMmioOfwNodes (
               OfwNode,
               NumNodes,
               Translated,
               TranslatedSize
               );
  }
  return Status;
}