class DisplayEngine

Defined at line 53 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

Public Methods

void DisplayEngine (const DisplayEngine & )

Defined at line 74 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

void DisplayEngine (DisplayEngine && )

Defined at line 75 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

DisplayEngine & operator= (const DisplayEngine & )

Defined at line 76 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

DisplayEngine & operator= (DisplayEngine && )

Defined at line 77 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

const inspect::Inspector & inspector ()

Defined at line 126 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

void Dump ()

Defined at line 128 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

void SetFormatSupportCheck (fit::function<bool (display::PixelFormat)> fn)

Defined at line 130 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

void SetVoutForTesting (std::unique_ptr<Vout> vout)

Defined at line 145 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

void SetVideoInputUnitForTesting (std::unique_ptr<VideoInputUnit> video_input_unit)

Defined at line 147 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.h

zx::result<std::unique_ptr<DisplayEngine>> Create (std::shared_ptr<fdf::Namespace> incoming, display::DisplayEngineEventsInterface * engine_events, structured_config::Config structured_config)

Factory method for production use.

`incoming` must be non-null.

`engine_events` must not be null and must outlive `DisplayEngine`.

Defined at line 1268 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

void DisplayEngine (std::shared_ptr<fdf::Namespace> incoming, display::DisplayEngineEventsInterface * engine_events, structured_config::Config structured_config)

Creates an uninitialized `DisplayEngine` instance.

`incoming` must be non-null.

`engine_events` must not be null and must outlive `DisplayEngine`.

Production code should use `DisplayEngine::Create()` instead.

Defined at line 1256 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

void ~DisplayEngine ()

Defined at line 1265 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx_status_t Initialize ()

Acquires parent resources and sets up display submodules.

Must be called exactly once via the `Create()` factory method during

the DisplayEngine lifetime in production code.

TODO(https://fxbug.dev/42082357): Replace the two-step initialization with

a factory method and a constructor.

Defined at line 1159 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

void Deinitialize ()

Tears down display submodules and turns off the hardware.

Must be called before the DisplayEngine instance is destroyed in production code,

or called automatically by the destructor.

Defined at line 581 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

display::EngineInfo CompleteCoordinatorConnection ()

`display::DisplayEngineInterface`:

Defined at line 218 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<> ImportBufferCollection (display::DriverBufferCollectionId buffer_collection_id, fidl::ClientEnd<fuchsia_sysmem2::BufferCollectionToken> buffer_collection_token)

Defined at line 230 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<> ReleaseBufferCollection (display::DriverBufferCollectionId buffer_collection_id)

Defined at line 264 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<display::DriverImageId> ImportImage (const display::ImageMetadata & image_metadata, display::DriverBufferCollectionId buffer_collection_id, uint32_t buffer_index)

Defined at line 275 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<display::DriverCaptureImageId> ImportImageForCapture (display::DriverBufferCollectionId buffer_collection_id, uint32_t buffer_index)

Defined at line 774 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

void ReleaseImage (display::DriverImageId image_id)

Defined at line 430 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

display::ConfigCheckResult CheckConfiguration (display::DisplayId display_id, display::ModeId mode_id, display::ColorConversion color_conversion, std::span<const display::DriverLayer> layers)

Defined at line 436 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

void SubmitConfiguration (display::DisplayId display_id, display::ModeId mode_id, display::ColorConversion color_conversion, std::span<const display::DriverLayer> layers, display::DriverConfigStamp config_stamp)

Defined at line 531 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<> SetBufferCollectionConstraints (const display::ImageBufferUsage & image_buffer_usage, display::DriverBufferCollectionId buffer_collection_id)

Defined at line 603 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<> SetDisplayPowerMode (display::DisplayId display_id, display::PowerMode power_mode)

Defined at line 731 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<> StartCapture (display::DriverCaptureImageId capture_image_id)

Defined at line 908 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<> ReleaseCapture (display::DriverCaptureImageId capture_image_id)

Defined at line 954 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx::result<> SetMinimumRgb (uint8_t minimum_rgb)

Defined at line 178 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc

zx_status_t GetCommonProtocolsAndResources ()

Acquires the common protocols (pdev, sysmem and amlogic-canvas) and

resources (Vsync interrupts, capture interrupts and BTIs) from the parent

nodes.

Must be called once and only once per driver binding procedure, before

the protocols / resources mentioned above being used.

This is meant for private use, but is marked public because the unit test

needs to be able to call it as well to bypass the full `Initialize()` flow.

Defined at line 1091 of file ../../src/graphics/display/drivers/amlogic-display/display-engine.cc