VirtualBox

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

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

Added emulation of several classic Ethernet adapters.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 6.9 KB
Line 
1/* $Id: VBoxDD.h 93560 2022-02-03 06:37:40Z vboxsync $ */
2/** @file
3 * Built-in drivers & devices (part 1) header.
4 */
5
6/*
7 * Copyright (C) 2006-2022 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
59extern const PDMDEVREG g_DeviceDP8390;
60extern const PDMDEVREG g_Device3C501;
61#ifdef VBOX_WITH_INIP
62extern const PDMDEVREG g_DeviceINIP;
63#endif
64extern const PDMDEVREG g_DeviceICHAC97;
65extern const PDMDEVREG g_DeviceSB16;
66extern const PDMDEVREG g_DeviceHDA;
67extern const PDMDEVREG g_DeviceOHCI;
68extern const PDMDEVREG g_DeviceEHCI;
69extern const PDMDEVREG g_DeviceXHCI;
70extern const PDMDEVREG g_DeviceACPI;
71extern const PDMDEVREG g_DeviceDMA;
72extern const PDMDEVREG g_DeviceFloppyController;
73extern const PDMDEVREG g_DeviceSerialPort;
74extern const PDMDEVREG g_DeviceOxPcie958;
75extern const PDMDEVREG g_DeviceParallelPort;
76#ifdef VBOX_WITH_AHCI
77extern const PDMDEVREG g_DeviceAHCI;
78#endif
79#ifdef VBOX_WITH_BUSLOGIC
80extern const PDMDEVREG g_DeviceBusLogic;
81#endif
82extern const PDMDEVREG g_DevicePCIBridge;
83extern const PDMDEVREG g_DevicePciIch9Bridge;
84#ifdef VBOX_WITH_LSILOGIC
85extern const PDMDEVREG g_DeviceLsiLogicSCSI;
86extern const PDMDEVREG g_DeviceLsiLogicSAS;
87#endif
88#ifdef VBOX_WITH_NVME_IMPL
89extern const PDMDEVREG g_DeviceNVMe;
90#endif
91#ifdef VBOX_WITH_VIRTIO_SCSI
92extern const PDMDEVREG g_DeviceVirtioSCSI;
93#endif
94#ifdef VBOX_WITH_EFI
95extern const PDMDEVREG g_DeviceEFI;
96#endif
97#ifdef VBOX_WITH_PCI_PASSTHROUGH_IMPL
98extern const PDMDEVREG g_DevicePciRaw;
99#endif
100extern const PDMDEVREG g_DeviceGIMDev;
101extern const PDMDEVREG g_DeviceLPC;
102#ifdef VBOX_WITH_VIRTUALKD
103extern const PDMDEVREG g_DeviceVirtualKD;
104#endif
105extern const PDMDEVREG g_DeviceQemuFwCfg;
106#ifdef VBOX_WITH_TPM
107extern const PDMDEVREG g_DeviceTpm;
108#endif
109
110extern const PDMDRVREG g_DrvMouseQueue;
111extern const PDMDRVREG g_DrvKeyboardQueue;
112extern const PDMDRVREG g_DrvVBoxHDD;
113extern const PDMDRVREG g_DrvVD;
114extern const PDMDRVREG g_DrvHostDVD;
115extern const PDMDRVREG g_DrvHostFloppy;
116extern const PDMDRVREG g_DrvISCSI;
117extern const PDMDRVREG g_DrvISCSITransportTcp;
118#if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)
119extern const PDMDRVREG g_DrvHostInterface;
120#endif
121#ifdef VBOX_WITH_UDPTUNNEL
122extern const PDMDRVREG g_DrvUDPTunnel;
123#endif
124#ifdef VBOX_WITH_VDE
125extern const PDMDRVREG g_DrvVDE;
126#endif
127extern const PDMDRVREG g_DrvIntNet;
128extern const PDMDRVREG g_DrvDedicatedNic;
129extern const PDMDRVREG g_DrvNAT;
130#ifdef VBOX_WITH_NETSHAPER
131extern const PDMDRVREG g_DrvNetShaper;
132#endif /* VBOX_WITH_NETSHAPER */
133#ifdef VBOX_WITH_VMNET
134extern const PDMDRVREG g_DrvVMNet;
135#endif /* VBOX_WITH_VMNET */
136extern const PDMDRVREG g_DrvNetSniffer;
137extern const PDMDRVREG g_DrvAUDIO;
138#ifdef VBOX_WITH_AUDIO_DEBUG
139extern const PDMDRVREG g_DrvHostDebugAudio;
140#endif
141#ifdef VBOX_WITH_AUDIO_VALIDATIONKIT
142extern const PDMDRVREG g_DrvHostValidationKitAudio;
143#endif
144extern const PDMDRVREG g_DrvHostNullAudio;
145extern DECL_HIDDEN_DATA(struct PDMIHOSTAUDIO) const g_DrvHostAudioNull;
146#if defined(RT_OS_WINDOWS)
147extern const PDMDRVREG g_DrvHostDSound;
148extern const PDMDRVREG g_DrvHostAudioWas;
149#endif
150#if defined(RT_OS_DARWIN)
151extern const PDMDRVREG g_DrvHostCoreAudio;
152#endif
153#ifdef VBOX_WITH_AUDIO_OSS
154extern const PDMDRVREG g_DrvHostOSSAudio;
155#endif
156#ifdef VBOX_WITH_AUDIO_ALSA
157extern const PDMDRVREG g_DrvHostALSAAudio;
158#endif
159#ifdef VBOX_WITH_AUDIO_PULSE
160extern const PDMDRVREG g_DrvHostPulseAudio;
161#endif
162extern const PDMDRVREG g_DrvACPI;
163extern const PDMDRVREG g_DrvAcpiCpu;
164extern const PDMDRVREG g_DrvVUSBRootHub;
165#ifdef VBOX_WITH_USB_VIDEO_IMPL
166extern const PDMDRVREG g_DrvHostWebcam;
167#endif
168extern const PDMDRVREG g_DrvChar;
169extern const PDMDRVREG g_DrvNamedPipe;
170extern const PDMDRVREG g_DrvTCP;
171extern const PDMDRVREG g_DrvUDP;
172extern const PDMDRVREG g_DrvRawFile;
173extern const PDMDRVREG g_DrvHostParallel;
174extern const PDMDRVREG g_DrvHostSerial;
175#ifdef VBOX_WITH_DRV_DISK_INTEGRITY
176extern const PDMDRVREG g_DrvDiskIntegrity;
177extern const PDMDRVREG g_DrvRamDisk;
178#endif
179#ifdef VBOX_WITH_PCI_PASSTHROUGH_IMPL
180extern const PDMDRVREG g_DrvPciRaw;
181#endif
182
183#ifdef VBOX_WITH_USB
184extern const PDMUSBREG g_UsbDevProxy;
185extern const PDMUSBREG g_UsbMsd;
186#endif
187#ifdef VBOX_WITH_VUSB
188extern const PDMUSBREG g_UsbHid;
189extern const PDMUSBREG g_UsbHidKbd;
190extern const PDMUSBREG g_UsbHidMou;
191#endif
192#ifdef VBOX_WITH_USB_VIDEO_IMPL
193extern const PDMUSBREG g_DevWebcam;
194#endif
195
196#ifdef VBOX_WITH_SCSI
197extern const PDMDRVREG g_DrvSCSI;
198#endif
199
200extern const PDMDRVREG g_DrvIfTrace;
201#ifdef VBOX_WITH_TPM
202extern const PDMDRVREG g_DrvTpmEmu;
203# ifdef RT_OS_LINUX
204extern const PDMDRVREG g_DrvTpmHost;
205# endif
206# ifdef VBOX_WITH_LIBTPMS
207extern const PDMDRVREG g_DrvTpmEmuTpms;
208# endif
209# ifdef VBOX_WITH_CLOUD_NET
210extern const PDMDRVREG g_DrvCloudTunnel;
211# endif
212#endif
213
214#ifdef VBOX_WITH_IOMMU_AMD
215extern const PDMDEVREG g_DeviceIommuAmd;
216#endif
217#ifdef VBOX_WITH_IOMMU_INTEL
218extern const PDMDEVREG g_DeviceIommuIntel;
219#endif
220
221/* VBoxAcpi.cpp */
222int acpiPrepareDsdt(PPDMDEVINS pDevIns, void **ppvPtr, size_t *pcbDsdt);
223int acpiCleanupDsdt(PPDMDEVINS pDevIns, void *pvPtr);
224int acpiPrepareSsdt(PPDMDEVINS pDevIns, void **ppvPtr, size_t *pcbSsdt);
225int acpiCleanupSsdt(PPDMDEVINS pDevIns, void *pvPtr);
226
227#ifdef VBOX_WITH_TPM
228int acpiPrepareTpmSsdt(PPDMDEVINS pDevIns, void **ppvPtr, size_t *pcbSsdt);
229int acpiCleanupTpmSsdt(PPDMDEVINS pDevIns, void *pvPtr);
230#endif
231
232RT_C_DECLS_END
233
234#endif /* !VBOX_INCLUDED_SRC_build_VBoxDD_h */
235
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