TargetLun[0],\r
TargetLun[1]\r
);\r
+ } else if (NumNodes >= 3 &&\r
+ SubstringEq (OfwNode[1].DriverName, "ethernet") &&\r
+ SubstringEq (OfwNode[2].DriverName, "ethernet-phy")\r
+ ) {\r
+ //\r
+ // OpenFirmware device path (Ethernet NIC):\r
+ //\r
+ // /pci@i0cf8/ethernet@3[,2]/ethernet-phy@0\r
+ // ^ ^ ^\r
+ // | | fixed\r
+ // | PCI slot[, function] holding Ethernet card\r
+ // PCI root at system bus port, PIO\r
+ //\r
+ // UEFI device path prefix (dependent on presence of nonzero PCI function):\r
+ //\r
+ // PciRoot(0x0)/Pci(0x3,0x0)/MAC(525400E15EEF,0x1)\r
+ // PciRoot(0x0)/Pci(0x3,0x2)/MAC(525400E15EEF,0x1)\r
+ // ^ ^\r
+ // MAC address IfType (1 == Ethernet)\r
+ //\r
+ // (Some UEFI NIC drivers don't set 0x1 for IfType.)\r
+ //\r
+ Written = UnicodeSPrintAsciiFormat (\r
+ Translated,\r
+ *TranslatedSize * sizeof (*Translated), // BufferSize in bytes\r
+ "PciRoot(0x0)/Pci(0x%x,0x%x)/MAC",\r
+ PciDevFun[0],\r
+ PciDevFun[1]\r
+ );\r
} else {\r
return RETURN_UNSUPPORTED;\r
}\r