[vbox-dev] How add device or driver (PDM) to VirtualBox

Klaus Espenlaub klaus.espenlaub at oracle.com
Fri Jun 26 13:22:17 GMT 2015


On 25.06.2015 10:57, Marcin K wrote:
> Hi,
> I ask about this before but don't get any answer...

yes, sorry about that, but right now everyone in the dev team is booked 
out with super urgent things which have to be finished before 5.0 is 
released. There's simply not enough time right now for bigger explanations.

> How add new device/driver to Virtualbox?
> Is there a someone who understand how PDM works?
> I compile VBoxSampleDevice.cpp and add it to VirtualBox but
> system(ubunutu 14) don't show any new device.
> To add dll to Virtualbox I use:
> VBoxManage setextradata global VBoxInternal/PDM/Devices/[[1]]/Path
> g:\VirtualBox\out\win.amd64\release\obj\testingDevice\VBoxSampleDevice.dll

VBoxSampleDevice.cpp is a totally empty piece of code. It compiles, it 
loads, but doesn't expose ANY functionality to the VM.

> Also I try to add device using copy of Virtio device. I copy code
> of DevVirtioNet.cpp modify it (change some names), build dll and add to
> VirtualBox:
> VBoxManage setextradata global VBoxInternal/PDM/Devices/[[3]]/Path
> g:\VirtualBox\out\win.amd64\release\obj\testingDevice\testingDevice.dll
> But still nothing change in guest system.
> In DevVirtioNet.cpp I found a lot of code which set a lot of parameters
> connected with PCI. I try understand this code but this take, a lot of time.
> I also found that I have to set which driver will be use in system also
> in configuration of virtual machine.
> I try to set net ethernet cart type but in VBoxManage I found code which
> allow using only build in drivers so I can't set "My" modified Virtio
> driver.
> There is really no instruction or documentation how it's works?

There are lots of examples, in the form of the various device 
implementations :)


> I will be really gratefull for any help or instruction how add new
> device to VirtualBox.
> Best regards,
> Marcin

More information about the vbox-dev mailing list