Project: /_project.yaml Book: /_book.yaml

fuchsia.hardware.display

PROTOCOLS

Provider {:#Provider}

Defined in fuchsia.hardware.display/display-controller.fidl

Provider for display controllers.

The driver supports two simultaneous clients - a primary client and a virtcon client.

OpenVirtconController {:#OpenVirtconController}

Open a virtcon client. device should be a handle to one endpoint of a channel that (on success) will become an open connection to a new instance of a display client device. A protocol request controller provides an interface to the Controller for the new device. Closing the connection to device will also close the controller interface. If the display device already has a virtcon controller then this method will return ZX_ERR_ALREADY_BOUND.

Request

Response

OpenController {:#OpenController}

Open a primary client. device should be a handle to one endpoint of a channel that (on success) will become an open connection to a new instance of a display client device. A protocol request controller provides an interface to the Controller for the new device. Closing the connection to device will also close the controller interface. If the display device already has a primary controller then this method will return ZX_ERR_ALREADY_BOUND.

Request

Response

Controller {:#Controller}

Defined in fuchsia.hardware.display/display-controller.fidl

Interface for accessing the display hardware.

A display configuration can be separated into two parts: the layer layout and the layer contents. The layout includes all parts of a configuration other than the image handles. The active configuration is composed of the most recently applied layout and an active image from each layer - see SetLayerImage for details on how the active image is defined. Note the requirement that each layer has an active image. Whenever a new active configuration is available, it is immediately given to the hardware. This allows the layout and each layer's contents to advance independently when possible.

Performing illegal actions on the interface will result in the interface being closed.

DisplaysChanged {:#DisplaysChanged}

Response

ImportVmoImage {:#ImportVmoImage}

Request

Response

ImportImage {:#ImportImage}

Request

Response

ReleaseImage {:#ReleaseImage}

Request

ImportEvent {:#ImportEvent}

Request

ReleaseEvent {:#ReleaseEvent}

Request

CreateLayer {:#CreateLayer}

Request

Response

DestroyLayer {:#DestroyLayer}

Request

SetDisplayMode {:#SetDisplayMode}

Request

SetDisplayColorConversion {:#SetDisplayColorConversion}

Request

SetDisplayLayers {:#SetDisplayLayers}

Request

SetLayerPrimaryConfig {:#SetLayerPrimaryConfig}

Request

SetLayerPrimaryPosition {:#SetLayerPrimaryPosition}

Request

SetLayerPrimaryAlpha {:#SetLayerPrimaryAlpha}

Request

SetLayerCursorConfig {:#SetLayerCursorConfig}

Request

SetLayerCursorPosition {:#SetLayerCursorPosition}

Request

SetLayerColorConfig {:#SetLayerColorConfig}

Request

SetLayerImage {:#SetLayerImage}

Request

CheckConfig {:#CheckConfig}

Request

Response

ApplyConfig {:#ApplyConfig}

Request

EnableVsync {:#EnableVsync}

Request

Vsync {:#Vsync}

Response

SetVirtconMode {:#SetVirtconMode}

Request

ClientOwnershipChange {:#ClientOwnershipChange}

Response

ComputeLinearImageStride {:#ComputeLinearImageStride}

Request

Response

AllocateVmo {:#AllocateVmo}

Request

Response

ImportBufferCollection {:#ImportBufferCollection}

Request

Response

ReleaseBufferCollection {:#ReleaseBufferCollection}

Request

SetBufferCollectionConstraints {:#SetBufferCollectionConstraints}

Request

Response

GetSingleBufferFramebuffer {:#GetSingleBufferFramebuffer}

Request

Response

ImportImageForCapture {:#ImportImageForCapture}

Imports a buffer collection backed VMO into the display controller. The VMO will be used by display controller to capture the image being displayed. Returns ZX_OK along with an image_id. image_id must be used by the client to start capture and/or release resources allocated for capture. Returns ZX_ERR_NOT_SUPPORTED if controller does not support capture

Request

Response

StartCapture {:#StartCapture}

Starts capture. Client must provide a valid signal_event_id and image_id. signal_event_id must have been imported into the driver using ImportEvent FIDL API. Image_id is the id from ImportImageForCapture. The client will get notified once capture is complete via signal_event_id. Returns ZX_ERR_NOT_SUPPORTED if controller does not support capture

Request

Response

ReleaseCapture {:#ReleaseCapture}

Releases resources allocated for capture. Returns ZX_ERR_NOT_SUPPORTED if controller does not support capture

Request

Response

STRUCTS

Controller_ImportImageForCapture_Response {:#Controller_ImportImageForCapture_Response}

Defined in fuchsia.hardware.display/generated

Controller_StartCapture_Response {:#Controller_StartCapture_Response}

Defined in fuchsia.hardware.display/generated

Controller_ReleaseCapture_Response {:#Controller_ReleaseCapture_Response}

Defined in fuchsia.hardware.display/generated

Mode {:#Mode}

Defined in fuchsia.hardware.display/display-controller.fidl

CursorInfo {:#CursorInfo}

Defined in fuchsia.hardware.display/display-controller.fidl

Info {:#Info}

Defined in fuchsia.hardware.display/display-controller.fidl

ImagePlane {:#ImagePlane}

Defined in fuchsia.hardware.display/display-controller.fidl

ImageConfig {:#ImageConfig}

Defined in fuchsia.hardware.display/display-controller.fidl

Frame {:#Frame}

Defined in fuchsia.hardware.display/display-controller.fidl

ClientCompositionOp {:#ClientCompositionOp}

Defined in fuchsia.hardware.display/display-controller.fidl

ENUMS

VirtconMode {:#VirtconMode}

Type: uint8

Defined in fuchsia.hardware.display/display-controller.fidl

Transform {:#Transform}

Type: uint8

Defined in fuchsia.hardware.display/display-controller.fidl

AlphaMode {:#AlphaMode}

Type: uint8

Defined in fuchsia.hardware.display/display-controller.fidl

ClientCompositionOpcode {:#ClientCompositionOpcode}

Type: uint8

Defined in fuchsia.hardware.display/display-controller.fidl

ConfigResult {:#ConfigResult}

Type: uint32

Defined in fuchsia.hardware.display/display-controller.fidl

UNIONS

Controller_ImportImageForCapture_Result {:#Controller_ImportImageForCapture_Result}

Defined in fuchsia.hardware.display/generated

Controller_StartCapture_Result {:#Controller_StartCapture_Result}

Defined in fuchsia.hardware.display/generated

Controller_ReleaseCapture_Result {:#Controller_ReleaseCapture_Result}

Defined in fuchsia.hardware.display/generated

CONSTANTS