Reduce code duplication
Lots of drivers unnecessarily contain lots of duplicate code, particularly boilerplate code for scheme handling and other process management, and also the MSI/MSI-X code. Additionally, many drivers provide their own wrappers for physmap/physunmap.