
Runtime Primary Display and Secondary Display Swap via Escape Function Call.
Intel® EMGD provides an option to swap the primary and secondary displays at runtime through an escape function call INTEL_ESCAPE_SWAPDC. This feature provides the capability to swap the framebuffer and the video plane. The escape API acts as a toggle switch; toggling twice un-swaps the display.
Note: This feature is enabled only when the display configuration is in VEXT mode. Do not perform any display mode changes, for example, changing resolution, rotation, etc., while in the display swap state.
In the situation when freeze display (framebuffer) is enabled, every swap API call would forcibly unfreeze the display. In the situation when display is in clone or reverse clone mode, a swap API call will switch the display mode back to VEXT mode followed by swapping the display. Similarly when the swap state is set in VEXT mode, a function call to change the display to clone or reverse clone mode would first unswap the display before putting it in clone or reverse clone mode.
Refer to the Intel® Embedded Graphics Drivers, Intel® Embedded Media and Graphics Driver, EFI Video Driver, and Video BIOS API Reference Manual for a description of the Display swap INTEL_ESCAPE_SWAPDC function call.