Damage Rectangle Interface Proposed For Atomic DRM Drivers
DisplayLink developers in cooperation with interest from VMware's virtual graphics driver team have sent out a draft proposal for adding a damage interface to the Direct Rendering Manager drivers.
This is a proof-of-concept code for allowing "dirty rectangles" to be sent to the DRM drivers, a.k.a. areas of the screen where the contents have changed and need to be updated. Rather than submitting the entire screen contents each time to the DRM driver for re-processing, the damaged regions could be passed onto the DRM kernel drivers as hints/properties. In the case of DisplayLink where they are focused on their USB-based display adapters, this would be bandwidth savings. Similarly, VMware has been interested in such an interface for their VMWgfx stack for virtual devices in a VM. There's also obvious savings as well for remote desktops.
DisplayLink has been testing their damage rectangles interface on Chromium OS whereby only changed regions are passed onto their atomic EVDI (Extensible Virtual Display Interface) driver. Most compositors/X already do damage tracking for reduced bandwidth/latency while this is about a standardized interface for passing on that information to the atomic DRM drivers.
There are still some portions of the design that will likely be changed, but their in-progress interface can be found on dri-devel.
This is a proof-of-concept code for allowing "dirty rectangles" to be sent to the DRM drivers, a.k.a. areas of the screen where the contents have changed and need to be updated. Rather than submitting the entire screen contents each time to the DRM driver for re-processing, the damaged regions could be passed onto the DRM kernel drivers as hints/properties. In the case of DisplayLink where they are focused on their USB-based display adapters, this would be bandwidth savings. Similarly, VMware has been interested in such an interface for their VMWgfx stack for virtual devices in a VM. There's also obvious savings as well for remote desktops.
DisplayLink has been testing their damage rectangles interface on Chromium OS whereby only changed regions are passed onto their atomic EVDI (Extensible Virtual Display Interface) driver. Most compositors/X already do damage tracking for reduced bandwidth/latency while this is about a standardized interface for passing on that information to the atomic DRM drivers.
There are still some portions of the design that will likely be changed, but their in-progress interface can be found on dri-devel.
16 Comments