Skip to content

Commit 8d3b5f2

Browse files
Build: Add drivers for QEMU virtio devices into build
These drivers are required for the devices (PCI, network, etc.) while we booting OpenDuet inside QEMU emulator with seabios.
1 parent dc1812a commit 8d3b5f2

File tree

4 files changed

+189
-0
lines changed

4 files changed

+189
-0
lines changed

Docs/Sample.plist

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1531,6 +1531,78 @@
15311531
<key>Path</key>
15321532
<string>OpenRuntime.efi</string>
15331533
</dict>
1534+
<dict>
1535+
<key>Arguments</key>
1536+
<string></string>
1537+
<key>Comment</key>
1538+
<string></string>
1539+
<key>Enabled</key>
1540+
<false/>
1541+
<key>LoadEarly</key>
1542+
<false/>
1543+
<key>Path</key>
1544+
<string>VirtioPciDeviceDxe.efi</string>
1545+
</dict>
1546+
<dict>
1547+
<key>Arguments</key>
1548+
<string></string>
1549+
<key>Comment</key>
1550+
<string></string>
1551+
<key>Enabled</key>
1552+
<false/>
1553+
<key>LoadEarly</key>
1554+
<false/>
1555+
<key>Path</key>
1556+
<string>Virtio10.efi</string>
1557+
</dict>
1558+
<dict>
1559+
<key>Arguments</key>
1560+
<string></string>
1561+
<key>Comment</key>
1562+
<string></string>
1563+
<key>Enabled</key>
1564+
<false/>
1565+
<key>LoadEarly</key>
1566+
<false/>
1567+
<key>Path</key>
1568+
<string>VirtioSerialDxe.efi</string>
1569+
</dict>
1570+
<dict>
1571+
<key>Arguments</key>
1572+
<string></string>
1573+
<key>Comment</key>
1574+
<string></string>
1575+
<key>Enabled</key>
1576+
<false/>
1577+
<key>LoadEarly</key>
1578+
<false/>
1579+
<key>Path</key>
1580+
<string>VirtioScsiDxe.efi</string>
1581+
</dict>
1582+
<dict>
1583+
<key>Arguments</key>
1584+
<string></string>
1585+
<key>Comment</key>
1586+
<string></string>
1587+
<key>Enabled</key>
1588+
<false/>
1589+
<key>LoadEarly</key>
1590+
<false/>
1591+
<key>Path</key>
1592+
<string>VirtioBlkDxe.efi</string>
1593+
</dict>
1594+
<dict>
1595+
<key>Arguments</key>
1596+
<string></string>
1597+
<key>Comment</key>
1598+
<string></string>
1599+
<key>Enabled</key>
1600+
<false/>
1601+
<key>LoadEarly</key>
1602+
<false/>
1603+
<key>Path</key>
1604+
<string>VirtioGpuDxe.efi</string>
1605+
</dict>
15341606
<dict>
15351607
<key>Arguments</key>
15361608
<string></string>
@@ -1963,6 +2035,18 @@
19632035
<key>Path</key>
19642036
<string>RamDiskDxe.efi</string>
19652037
</dict>
2038+
<dict>
2039+
<key>Arguments</key>
2040+
<string></string>
2041+
<key>Comment</key>
2042+
<string></string>
2043+
<key>Enabled</key>
2044+
<false/>
2045+
<key>LoadEarly</key>
2046+
<false/>
2047+
<key>Path</key>
2048+
<string>VirtioNetDxe.efi</string>
2049+
</dict>
19662050
<dict>
19672051
<key>Arguments</key>
19682052
<string></string>

Docs/SampleCustom.plist

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1899,6 +1899,78 @@
18991899
<key>Path</key>
19001900
<string>OpenRuntime.efi</string>
19011901
</dict>
1902+
<dict>
1903+
<key>Arguments</key>
1904+
<string></string>
1905+
<key>Comment</key>
1906+
<string></string>
1907+
<key>Enabled</key>
1908+
<false/>
1909+
<key>LoadEarly</key>
1910+
<false/>
1911+
<key>Path</key>
1912+
<string>VirtioPciDeviceDxe.efi</string>
1913+
</dict>
1914+
<dict>
1915+
<key>Arguments</key>
1916+
<string></string>
1917+
<key>Comment</key>
1918+
<string></string>
1919+
<key>Enabled</key>
1920+
<false/>
1921+
<key>LoadEarly</key>
1922+
<false/>
1923+
<key>Path</key>
1924+
<string>Virtio10.efi</string>
1925+
</dict>
1926+
<dict>
1927+
<key>Arguments</key>
1928+
<string></string>
1929+
<key>Comment</key>
1930+
<string></string>
1931+
<key>Enabled</key>
1932+
<false/>
1933+
<key>LoadEarly</key>
1934+
<false/>
1935+
<key>Path</key>
1936+
<string>VirtioSerialDxe.efi</string>
1937+
</dict>
1938+
<dict>
1939+
<key>Arguments</key>
1940+
<string></string>
1941+
<key>Comment</key>
1942+
<string></string>
1943+
<key>Enabled</key>
1944+
<false/>
1945+
<key>LoadEarly</key>
1946+
<false/>
1947+
<key>Path</key>
1948+
<string>VirtioScsiDxe.efi</string>
1949+
</dict>
1950+
<dict>
1951+
<key>Arguments</key>
1952+
<string></string>
1953+
<key>Comment</key>
1954+
<string></string>
1955+
<key>Enabled</key>
1956+
<false/>
1957+
<key>LoadEarly</key>
1958+
<false/>
1959+
<key>Path</key>
1960+
<string>VirtioBlkDxe.efi</string>
1961+
</dict>
1962+
<dict>
1963+
<key>Arguments</key>
1964+
<string></string>
1965+
<key>Comment</key>
1966+
<string></string>
1967+
<key>Enabled</key>
1968+
<false/>
1969+
<key>LoadEarly</key>
1970+
<false/>
1971+
<key>Path</key>
1972+
<string>VirtioGpuDxe.efi</string>
1973+
</dict>
19021974
<dict>
19031975
<key>Arguments</key>
19041976
<string></string>
@@ -2331,6 +2403,18 @@
23312403
<key>Path</key>
23322404
<string>RamDiskDxe.efi</string>
23332405
</dict>
2406+
<dict>
2407+
<key>Arguments</key>
2408+
<string></string>
2409+
<key>Comment</key>
2410+
<string></string>
2411+
<key>Enabled</key>
2412+
<false/>
2413+
<key>LoadEarly</key>
2414+
<false/>
2415+
<key>Path</key>
2416+
<string>VirtioNetDxe.efi</string>
2417+
</dict>
23342418
<dict>
23352419
<key>Arguments</key>
23362420
<string></string>

OpenCorePkg.dsc

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@
6464
DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
6565
DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
6666
FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
67+
VirtioLib|OvmfPkg/Library/VirtioLib/VirtioLib.inf
6768
FrameBufferBltLib|MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
6869
HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
6970
OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
@@ -145,6 +146,8 @@
145146
OcVariableRuntimeLib|OpenCorePkg/Library/OcVariableRuntimeLib/OcVariableRuntimeLib.inf
146147
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
147148
PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
149+
PciCapLib|OvmfPkg/Library/BasePciCapLib/BasePciCapLib.inf
150+
PciCapPciIoLib|OvmfPkg/Library/UefiPciCapPciIoLib/UefiPciCapPciIoLib.inf
148151
PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
149152
PeCoffLib2|MdePkg/Library/BasePeCoffLib2/BasePeCoffLib2.inf
150153
PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
@@ -398,6 +401,17 @@
398401
#
399402
MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
400403

404+
#
405+
# QEMU Virtio devices support
406+
#
407+
OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
408+
OvmfPkg/Virtio10Dxe/Virtio10.inf
409+
OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
410+
OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
411+
OvmfPkg/VirtioSerialDxe/VirtioSerial.inf
412+
OvmfPkg/VirtioGpuDxe/VirtioGpu.inf
413+
OvmfPkg/VirtioNetDxe/VirtioNet.inf
414+
401415
[LibraryClasses]
402416
NULL|MdePkg/Library/IntrinsicLib/IntrinsicLib.inf
403417

build_oc.tool

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,13 @@ package() {
225225
"Udp6Dxe.efi"
226226
"UefiPxeBcDxe.efi"
227227
"UsbMouseDxe.efi"
228+
"Virtio10.efi"
229+
"VirtioBlkDxe.efi"
230+
"VirtioGpuDxe.efi"
231+
"VirtioNetDxe.efi"
232+
"VirtioPciDeviceDxe.efi"
233+
"VirtioScsiDxe.efi"
234+
"VirtioSerialDxe.efi"
228235
"XhciDxe.efi"
229236
)
230237
for efiDriver in "${efiDrivers[@]}"; do

0 commit comments

Comments
 (0)