Multiple Logical Devices - overlapping resources

If the logical devices must share certain resources such as memory or I/O regions, one of the logical devices may claim the shared resources for the others and make them available through a private interface. This will also ensure that proper initialization and clean-up is not impacted by driver load sequence.

For example, a display adapter with built-in MPEG support will specify two logical devices. The display device will claim the frame buffer which is shared by both devices and make it available to the MPEG driver via a private interface. If the frame buffer is accessed via a dedicated port which is used only by the MPEG driver, that port should be claimed by the MPEG device. This will ensure the port is available to other devices if the MPEG device is disabled for some reason. If there are multiple drivers accessing the shared memory regions through the same ports, those ports should be claimed by the display device and made available to the other drivers through a private interface.