Module drm::control

source ·
Expand description

Modesetting operations that the DRM subsystem exposes.

§Summary

The DRM subsystem provides Kernel Modesetting (KMS) functionality by exposing the following resource types:

  • FrameBuffer - Specific to an individual process, these wrap around generic GPU buffers so that they can be attached to a Plane.

  • Planes - Dedicated memory objects which contain a buffer that can then be scanned out by a CRTC. There exist a few different types of planes depending on the use case.

  • CRTC - Scanout engines that read pixel data from a Plane and sends it to a Connector. Each CRTC has at least one Primary Plane.

  • Connector - Represents the physical output, such as a DisplayPort or VGA connector.

  • Encoder - Encodes pixel data from a CRTC into something a Connector can understand.

Further details on each resource can be found in their respective modules.

§Usage

To begin using modesetting functionality, the Device trait must be implemented on top of the basic super::Device trait.

Modules§

Structs§

Enums§

Traits§

  • This trait should be implemented by any object that acts as a DRM device and provides modesetting functionality.
  • Handle for a drm resource

Functions§

  • Convert from a raw drm object value to a typed Handle
  • Query lease resources

Type Aliases§