VirtualBox

source: vbox/trunk/src/VBox/Devices/build/VBoxDD.h@ 90946

Last change on this file since 90946 was 90946, checked in by vboxsync, 3 years ago

Security: Start implementing a driver for passing through a host TPM, bugref:10075

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 6.7 KB
Line 
1/* $Id: VBoxDD.h 90946 2021-08-27 10:55:25Z vboxsync $ */
2/** @file
3 * Built-in drivers & devices (part 1) header.
4 */
5
6/*
7 * Copyright (C) 2006-2020 Oracle Corporation
8 *
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License (GPL) as published by the Free Software
13 * Foundation, in version 2 as it comes in the "COPYING" file of the
14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16 */
17
18#ifndef VBOX_INCLUDED_SRC_build_VBoxDD_h
19#define VBOX_INCLUDED_SRC_build_VBoxDD_h
20#ifndef RT_WITHOUT_PRAGMA_ONCE
21# pragma once
22#endif
23
24#include <VBox/vmm/pdm.h>
25
26RT_C_DECLS_BEGIN
27
28/** The default BIOS logo data. */
29extern const unsigned char g_abVgaDefBiosLogo[];
30extern const unsigned char g_abVgaDefBiosLogoNY[];
31/** The size of the default BIOS logo data. */
32extern const unsigned g_cbVgaDefBiosLogo;
33extern const unsigned g_cbVgaDefBiosLogoNY;
34
35
36extern const PDMDEVREG g_DevicePCI;
37extern const PDMDEVREG g_DevicePciIch9;
38extern const PDMDEVREG g_DevicePcArch;
39extern const PDMDEVREG g_DevicePcBios;
40extern const PDMDEVREG g_DeviceIOAPIC;
41extern const PDMDEVREG g_DevicePS2KeyboardMouse;
42extern const PDMDEVREG g_DeviceI8254;
43extern const PDMDEVREG g_DeviceI8259;
44extern const PDMDEVREG g_DeviceHPET;
45extern const PDMDEVREG g_DeviceSmc;
46extern const PDMDEVREG g_DeviceFlash;
47extern const PDMDEVREG g_DeviceMC146818;
48extern const PDMDEVREG g_DevicePIIX3IDE;
49extern const PDMDEVREG g_DeviceFloppyController;
50extern const PDMDEVREG g_DeviceVga;
51extern const PDMDEVREG g_DeviceVMMDev;
52extern const PDMDEVREG g_DevicePCNet;
53#ifdef VBOX_WITH_E1000
54extern const PDMDEVREG g_DeviceE1000;
55#endif
56#ifdef VBOX_WITH_VIRTIO
57extern const PDMDEVREG g_DeviceVirtioNet;
58#endif
59#ifdef VBOX_WITH_VIRTIO_NET_1_0
60extern const PDMDEVREG g_DeviceVirtioNet_1_0;
61#endif
62#ifdef VBOX_WITH_INIP
63extern const PDMDEVREG g_DeviceINIP;
64#endif
65extern const PDMDEVREG g_DeviceICHAC97;
66extern const PDMDEVREG g_DeviceSB16;
67extern const PDMDEVREG g_DeviceHDA;
68extern const PDMDEVREG g_DeviceOHCI;
69extern const PDMDEVREG g_DeviceEHCI;
70extern const PDMDEVREG g_DeviceXHCI;
71extern const PDMDEVREG g_DeviceACPI;
72extern const PDMDEVREG g_DeviceDMA;
73extern const PDMDEVREG g_DeviceFloppyController;
74extern const PDMDEVREG g_DeviceSerialPort;
75extern const PDMDEVREG g_DeviceOxPcie958;
76extern const PDMDEVREG g_DeviceParallelPort;
77#ifdef VBOX_WITH_AHCI
78extern const PDMDEVREG g_DeviceAHCI;
79#endif
80#ifdef VBOX_WITH_BUSLOGIC
81extern const PDMDEVREG g_DeviceBusLogic;
82#endif
83extern const PDMDEVREG g_DevicePCIBridge;
84extern const PDMDEVREG g_DevicePciIch9Bridge;
85#ifdef VBOX_WITH_LSILOGIC
86extern const PDMDEVREG g_DeviceLsiLogicSCSI;
87extern const PDMDEVREG g_DeviceLsiLogicSAS;
88#endif
89#ifdef VBOX_WITH_NVME_IMPL
90extern const PDMDEVREG g_DeviceNVMe;
91#endif
92#ifdef VBOX_WITH_VIRTIO_SCSI
93extern const PDMDEVREG g_DeviceVirtioSCSI;
94#endif
95#ifdef VBOX_WITH_EFI
96extern const PDMDEVREG g_DeviceEFI;
97#endif
98#ifdef VBOX_WITH_PCI_PASSTHROUGH_IMPL
99extern const PDMDEVREG g_DevicePciRaw;
100#endif
101extern const PDMDEVREG g_DeviceGIMDev;
102extern const PDMDEVREG g_DeviceLPC;
103#ifdef VBOX_WITH_VIRTUALKD
104extern const PDMDEVREG g_DeviceVirtualKD;
105#endif
106extern const PDMDEVREG g_DeviceQemuFwCfg;
107#ifdef VBOX_WITH_TPM
108extern const PDMDEVREG g_DeviceTpm;
109#endif
110
111extern const PDMDRVREG g_DrvMouseQueue;
112extern const PDMDRVREG g_DrvKeyboardQueue;
113extern const PDMDRVREG g_DrvVBoxHDD;
114extern const PDMDRVREG g_DrvVD;
115extern const PDMDRVREG g_DrvHostDVD;
116extern const PDMDRVREG g_DrvHostFloppy;
117extern const PDMDRVREG g_DrvISCSI;
118extern const PDMDRVREG g_DrvISCSITransportTcp;
119#if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)
120extern const PDMDRVREG g_DrvHostInterface;
121#endif
122#ifdef VBOX_WITH_UDPTUNNEL
123extern const PDMDRVREG g_DrvUDPTunnel;
124#endif
125#ifdef VBOX_WITH_VDE
126extern const PDMDRVREG g_DrvVDE;
127#endif
128extern const PDMDRVREG g_DrvIntNet;
129extern const PDMDRVREG g_DrvDedicatedNic;
130extern const PDMDRVREG g_DrvNAT;
131#ifdef VBOX_WITH_NETSHAPER
132extern const PDMDRVREG g_DrvNetShaper;
133#endif /* VBOX_WITH_NETSHAPER */
134extern const PDMDRVREG g_DrvNetSniffer;
135extern const PDMDRVREG g_DrvAUDIO;
136#ifdef VBOX_WITH_AUDIO_DEBUG
137extern const PDMDRVREG g_DrvHostDebugAudio;
138#endif
139#ifdef VBOX_WITH_AUDIO_VALIDATIONKIT
140extern const PDMDRVREG g_DrvHostValidationKitAudio;
141#endif
142extern const PDMDRVREG g_DrvHostNullAudio;
143extern DECL_HIDDEN_DATA(struct PDMIHOSTAUDIO) const g_DrvHostAudioNull;
144#if defined(RT_OS_WINDOWS)
145extern const PDMDRVREG g_DrvHostDSound;
146extern const PDMDRVREG g_DrvHostAudioWas;
147#endif
148#if defined(RT_OS_DARWIN)
149extern const PDMDRVREG g_DrvHostCoreAudio;
150#endif
151#ifdef VBOX_WITH_AUDIO_OSS
152extern const PDMDRVREG g_DrvHostOSSAudio;
153#endif
154#ifdef VBOX_WITH_AUDIO_ALSA
155extern const PDMDRVREG g_DrvHostALSAAudio;
156#endif
157#ifdef VBOX_WITH_AUDIO_PULSE
158extern const PDMDRVREG g_DrvHostPulseAudio;
159#endif
160extern const PDMDRVREG g_DrvACPI;
161extern const PDMDRVREG g_DrvAcpiCpu;
162extern const PDMDRVREG g_DrvVUSBRootHub;
163#ifdef VBOX_WITH_USB_VIDEO_IMPL
164extern const PDMDRVREG g_DrvHostWebcam;
165#endif
166extern const PDMDRVREG g_DrvChar;
167extern const PDMDRVREG g_DrvNamedPipe;
168extern const PDMDRVREG g_DrvTCP;
169extern const PDMDRVREG g_DrvUDP;
170extern const PDMDRVREG g_DrvRawFile;
171extern const PDMDRVREG g_DrvHostParallel;
172extern const PDMDRVREG g_DrvHostSerial;
173#ifdef VBOX_WITH_DRV_DISK_INTEGRITY
174extern const PDMDRVREG g_DrvDiskIntegrity;
175extern const PDMDRVREG g_DrvRamDisk;
176#endif
177#ifdef VBOX_WITH_PCI_PASSTHROUGH_IMPL
178extern const PDMDRVREG g_DrvPciRaw;
179#endif
180
181#ifdef VBOX_WITH_USB
182extern const PDMUSBREG g_UsbDevProxy;
183extern const PDMUSBREG g_UsbMsd;
184#endif
185#ifdef VBOX_WITH_VUSB
186extern const PDMUSBREG g_UsbHid;
187extern const PDMUSBREG g_UsbHidKbd;
188extern const PDMUSBREG g_UsbHidMou;
189#endif
190#ifdef VBOX_WITH_USB_VIDEO_IMPL
191extern const PDMUSBREG g_DevWebcam;
192#endif
193
194#ifdef VBOX_WITH_SCSI
195extern const PDMDRVREG g_DrvSCSI;
196#endif
197
198extern const PDMDRVREG g_DrvIfTrace;
199#ifdef VBOX_WITH_TPM
200extern const PDMDRVREG g_DrvTpmEmu;
201# ifdef RT_OS_LINUX
202extern const PDMDRVREG g_DrvTpmHost;
203# endif
204#endif
205
206#ifdef VBOX_WITH_IOMMU_AMD
207extern const PDMDEVREG g_DeviceIommuAmd;
208#endif
209#ifdef VBOX_WITH_IOMMU_INTEL
210extern const PDMDEVREG g_DeviceIommuIntel;
211#endif
212
213/* VBoxAcpi.cpp */
214int acpiPrepareDsdt(PPDMDEVINS pDevIns, void **ppvPtr, size_t *pcbDsdt);
215int acpiCleanupDsdt(PPDMDEVINS pDevIns, void *pvPtr);
216int acpiPrepareSsdt(PPDMDEVINS pDevIns, void **ppvPtr, size_t *pcbSsdt);
217int acpiCleanupSsdt(PPDMDEVINS pDevIns, void *pvPtr);
218
219#ifdef VBOX_WITH_TPM
220int acpiPrepareTpmSsdt(PPDMDEVINS pDevIns, void **ppvPtr, size_t *pcbSsdt);
221int acpiCleanupTpmSsdt(PPDMDEVINS pDevIns, void *pvPtr);
222#endif
223
224RT_C_DECLS_END
225
226#endif /* !VBOX_INCLUDED_SRC_build_VBoxDD_h */
227
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette