I'm writing a pseudo-driver to emulate a piece of hardware that does not yet exist. The pseudo driver will emulate some of the functionality of the hardware (obviously lying about actual underlying data). This is to test other parts of the system while waiting on hardware.
Obviously the actual hardware will have a valid parent device (it will be on a PCI bus, or USB, or something else), but my emulated device isn't hosted by any of these. However, I am not writing a top level device.
Driver registration requires a pointer to a struct device *parent. How do I get this information for a virtual driver?