Namespaces

Enumerations

enum class PanelType : uint32_t
Name Value Comments
kBoeTv070wsmFitipowerJd9364Astro 0x00

Panel: BOE TV070WSM-TG1
DDIC: Fitipower JD9364
Board: Astro
Touch IC: FocalTech FT3x27 (Astro)

kInnoluxP070acbFitipowerJd9364 0x01

Panel: Innolux P070ACB-DB0
DDIC: Fitipower JD9364
Board: Astro
Touch IC: Goodix GT9293

kBoeTv101wxmFitipowerJd9364 0x02

Panel: BOE TV101WXM-AG0
DDIC: Fitipower JD9364
Board: Sherlock
Touch IC: FocalTech FT5726

kInnoluxP101dezFitipowerJd9364 0x03

Panel: Innolux P101DEZ-DD0
DDIC: Fitipower JD9364
Board: Sherlock
Touch IC: FocalTech FT5726

kBoeTv101wxmFitipowerJd9365 0x07

Panel: BOE TV101WXM-AG0
DDIC: Fitipower JD9365
Board: Sherlock
Touch IC: FocalTech FT5726

kBoeTv070wsmFitipowerJd9365 0x08

Panel: BOE TV070WSM-TG1
DDIC: Fitipower JD9365
Board: Nelson
Touch IC: Goodix GT6853 (Nelson)

kKdKd070d82FitipowerJd9364 0x09

Panel: K
&D
KD070D82-39TI-A010
DDIC: Fitipower JD9364
Board: Nelson
Touch IC: Goodix GT6853

kKdKd070d82FitipowerJd9365 0x0a

Panel: K
&D
KD070D82-39TI-A010
DDIC: Fitipower JD9365
Board: Nelson
Touch IC: Goodix GT6853

kMicrotechMtf050fhdi03NovatekNt35596 0x0c

Khadas TS-050
Panel: Microtech MTF050FHDI-03
DDIC: Novatek NT35596
Board: VIM3
Touch IC: FocalTech FT5336

kBoeTv070wsmFitipowerJd9364Nelson 0x0d

Panel: BOE TV070WSM-TG1
DDIC: Fitipower JD9364
Board: Nelson
Touch IC: Goodix GT6853 (Nelson)

kUnknown 0xff

TODO(https://fxbug.dev/425473640): Remove `kUnknown`.

Display devices supported by Fuchsia platform.

Defined at line 12 of file ../../src/graphics/display/lib/device-protocol-display/include/lib/device-protocol/display-panel.h

enum class SyncPolarity : uint8_t
Name Value Comments
kNegative 0

The sync signal is active-low. The pulse is low (logic 0).

kPositive 1

The sync signal is active-high. The pulse is high (logic 1).

Describes how a logic signal represents a sync pulse.

The DMT standard Sections 3.1 to 3.4 have figures that illustrate

both polarities for horizontal and vertical sync signals.

Defined at line 39 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

enum class FieldsPerFrame : uint8_t
Name Value Comments
kProgressive 0

Each frame is composed of only one field. The frame is scanned all at once.

kInterlaced 1

Each frame is composed of two fields interlaced line by line. The odd-
numbered lines are scanned the first and the even-numbered lines are
scanned the second.

Describes how a display frame is composed of and scanned.

Defined at line 48 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

Records

Functions

  • bool ImportBufferCollection (allocation::GlobalBufferCollectionId buffer_collection_id, const fidl::WireSharedClient<fuchsia_hardware_display::Coordinator> & display_coordinator, fidl::ClientEnd<fuchsia_sysmem2::BufferCollectionToken> token, const fuchsia_hardware_display_types::wire::ImageBufferUsage & image_buffer_usage)

    Imports a sysmem buffer collection token to a display controller, and sets the constraints.

    A successful import will return true, otherwise it will return false.

    Defined at line 21 of file ../../src/ui/scenic/lib/display/util.cc

  • fpromise::promise<CoordinatorClientChannels, zx_status_t> GetCoordinator (fidl::ClientEnd<fuchsia_hardware_display::Provider> provider, async_dispatcher_t * dispatcher)

    Connects to the [`fuchsia.hardware.display/Coordinator`] protocol using the

    `provider` client. The FIDL connection is asynchronously performed on

    `dispatcher`.

    Returns a promise which will be resolved when the display coordinator is

    obtained on success, if the display provider service is available and can

    be connected; otherwise returns a fpromise::error.

    TODO(https://fxbug.dev/500852294): Add ClientPriority argument.

    Defined at line 23 of file ../../src/graphics/display/lib/coordinator-getter/client.cc

  • template <typename Lambda>
    bool PollUntil (Lambda predicate, zx::duration poll_interval, int max_intervals)

    Polls a predicate periodically, until it becomes true or we time out.

    Returns true for success, meaning the predicate was true last time it was

    polled. Returns false for failure, meaning the predicate did not become true

    within the timeout.

    `poll_interval` is time interval between polls. Popular values are zx::nsec(1)

    and zx::usec(1).

    `max_intervals` is the number of intervals to wait before timing out. If

    `predicate` is not true after this many intervals, the function returns

    false.

    Defined at line 26 of file ../../src/graphics/display/lib/driver-utils/poll-until.h

  • WireBufferCollectionId ToDisplayFidlBufferCollectionId (allocation::GlobalBufferCollectionId global_buffer_collection_id)

    Defined at line 56 of file ../../src/ui/scenic/lib/display/util.h

  • EventId ImportEventForTest (const fidl::WireSharedClient<fuchsia_hardware_display::Coordinator> & display_coordinator, const zx::event & event)

    Imports a zx::event to the provided display controller. The return value is an ID to

    reference that event on other display controller functions that take an event as an

    argument. On failure, the return value will be fuchsia_hardware_display_types::kInvalidDispId.

    Deprecated. Prefer to use `CoordinatorProxy::ImportEvent()`.

    Defined at line 68 of file ../../src/ui/scenic/lib/display/util.cc

  • bool operator== (const ImageBufferUsage & lhs, const ImageBufferUsage & rhs)

    Defined at line 57 of file ../../src/graphics/display/lib/api-types/cpp/image-buffer-usage.h

  • fpromise::promise<CoordinatorClientChannels, zx_status_t> GetCoordinator (fidl::ClientEnd<fuchsia_hardware_display::Provider> provider)

    Same as `GetCoordinator(provider, dispatcher)`,

    but the FIDL connection is asynchronously performed on the default async

    dispatcher.

    TODO(https://fxbug.dev/500852294): Add ClientPriority argument.

    Defined at line 74 of file ../../src/graphics/display/lib/coordinator-getter/client.cc

  • bool operator!= (const ImageBufferUsage & lhs, const ImageBufferUsage & rhs)

    Defined at line 61 of file ../../src/graphics/display/lib/api-types/cpp/image-buffer-usage.h

  • bool operator== (const ModeAndId & lhs, const ModeAndId & rhs)

    Defined at line 57 of file ../../src/graphics/display/lib/api-types/cpp/mode-and-id.h

  • bool operator!= (const ModeAndId & lhs, const ModeAndId & rhs)

    Defined at line 61 of file ../../src/graphics/display/lib/api-types/cpp/mode-and-id.h

  • bool IsCaptureSupported (const fidl::WireSharedClient<fuchsia_hardware_display::Coordinator> & display_coordinator)

    Returns true if the display controller backend is capable of image capture (i.e.

    screenshotting).

    Defined at line 98 of file ../../src/ui/scenic/lib/display/util.cc

  • bool operator== (const DriverLayer & lhs, const DriverLayer & rhs)

    Defined at line 179 of file ../../src/graphics/display/lib/api-types/cpp/driver-layer.h

  • bool operator!= (const DriverLayer & lhs, const DriverLayer & rhs)

    Defined at line 187 of file ../../src/graphics/display/lib/api-types/cpp/driver-layer.h

  • bool operator== (const ImageMetadata & lhs, const ImageMetadata & rhs)

    Defined at line 87 of file ../../src/graphics/display/lib/api-types/cpp/image-metadata.h

  • zx_status_t ImportImageForCapture (CoordinatorProxy & display_coordinator, const WireImageMetadata & image_metadata, allocation::GlobalBufferCollectionId buffer_collection_id, uint32_t vmo_idx, allocation::GlobalImageId capture_image_id)

    Imports an image to be used for capture (i.e. screenshotting) of the display

    controller, associated with `capture_image_id`.

    `capture_image_id` must not be used for any images, including images

    imported for display.

    On failure, this function returns the error value.

    TODO(https://fxbug.dev/42080575): Unify this method with ImportBufferImage().

    Defined at line 113 of file ../../src/ui/scenic/lib/display/util.cc

  • bool operator!= (const ImageMetadata & lhs, const ImageMetadata & rhs)

    Defined at line 91 of file ../../src/graphics/display/lib/api-types/cpp/image-metadata.h

  • bool operator== (const ColorConversion & lhs, const ColorConversion & rhs)

    Defined at line 134 of file ../../src/graphics/display/lib/api-types/cpp/color-conversion.h

  • bool operator!= (const ColorConversion & lhs, const ColorConversion & rhs)

    Defined at line 147 of file ../../src/graphics/display/lib/api-types/cpp/color-conversion.h

  • bool operator== (const ImageTilingType & lhs, const ImageTilingType & rhs)

    Defined at line 66 of file ../../src/graphics/display/lib/api-types/cpp/image-tiling-type.h

  • bool operator!= (const ImageTilingType & lhs, const ImageTilingType & rhs)

    Defined at line 70 of file ../../src/graphics/display/lib/api-types/cpp/image-tiling-type.h

  • bool operator== (const EngineInfo & lhs, const EngineInfo & rhs)

    Defined at line 134 of file ../../src/graphics/display/lib/api-types/cpp/engine-info.h

  • bool operator!= (const EngineInfo & lhs, const EngineInfo & rhs)

    Defined at line 140 of file ../../src/graphics/display/lib/api-types/cpp/engine-info.h

  • bool operator== (const PowerMode & lhs, const PowerMode & rhs)

    Defined at line 85 of file ../../src/graphics/display/lib/api-types/cpp/power-mode.h

  • template <size_t inline_target_size = fit::default_inline_target_size>
    zx::result<> PostTask (async_dispatcher_t & dispatcher, fit::inline_callback<void (), inline_target_size> callback)

    Arranges for `callback` to run on `dispatcher` as a posted task.

    This overload only performs checked dynamic memory allocation. All memory

    allocation errors will be reported via the PostTask() returned result. So,

    once PostTask() succeeds, no further dynamic memory allocation will be

    performed.

    `inline_target_size` is the capacity for storing `callback`'s captures. A

    compilation error will occur when attempting to use a callback whose captured

    state size exceeds this capacity.

    `callback` must be callable until it is called, or until `dispatcher` is shut

    down, whichever comes first. This implies that `callback` must be non-null.

    `callback` will be run when `dispatcher` invokes the posted task. So,

    `callback` will always be executed from one of the dispatcher's threads. The

    state captured in `callback` will be destroyed right after `callback` is run,

    on the same thread.

    `callback` must be moveable (implying that the captured context must be

    moveable) while it is callable. The move operators may be called on the

    thread used to call `PostTask()`, or on any of the dispatcher's threads.

    `callback` will not be run if `dispatcher` is shut down before it processes

    the posted task. In that case, the state captured in `callback` will be

    destroyed while the dispatcher is shutting down. The captured state will

    either be destroyed synchronously in PostTask() or on a dispatcher thread,

    depending on the relative timing of PostTask() and the dispatcher shutdown.

    Returns ZX_ERR_NO_MEMORY if dynamic memory allocation fails. Also exhibits

    all failure modes of the underlying C API `async_post_task()`.

    Defined at line 212 of file ../../src/graphics/display/lib/driver-utils/post-task.h

  • bool operator== (const AlphaMode & lhs, const AlphaMode & rhs)

    Defined at line 83 of file ../../src/graphics/display/lib/api-types/cpp/alpha-mode.h

  • bool operator!= (const PowerMode & lhs, const PowerMode & rhs)

    Defined at line 89 of file ../../src/graphics/display/lib/api-types/cpp/power-mode.h

  • bool operator!= (const AlphaMode & lhs, const AlphaMode & rhs)

    Defined at line 87 of file ../../src/graphics/display/lib/api-types/cpp/alpha-mode.h

  • bool operator== (const Mode & lhs, const Mode & rhs)

    Defined at line 134 of file ../../src/graphics/display/lib/api-types/cpp/mode.h

  • bool operator== (const Rectangle & lhs, const Rectangle & rhs)

    Defined at line 143 of file ../../src/graphics/display/lib/api-types/cpp/rectangle.h

  • bool operator== (const BacklightState & lhs, const BacklightState & rhs)

    Defined at line 159 of file ../../src/graphics/display/lib/api-types/cpp/backlight-state.h

  • bool operator== (const ConfigCheckResult & lhs, const ConfigCheckResult & rhs)

    Defined at line 90 of file ../../src/graphics/display/lib/api-types/cpp/config-check-result.h

  • bool operator!= (const Mode & lhs, const Mode & rhs)

    Defined at line 139 of file ../../src/graphics/display/lib/api-types/cpp/mode.h

  • bool operator!= (const Rectangle & lhs, const Rectangle & rhs)

    Defined at line 147 of file ../../src/graphics/display/lib/api-types/cpp/rectangle.h

  • bool operator!= (const BacklightState & lhs, const BacklightState & rhs)

    Defined at line 164 of file ../../src/graphics/display/lib/api-types/cpp/backlight-state.h

  • bool operator!= (const ConfigCheckResult & lhs, const ConfigCheckResult & rhs)

    Defined at line 94 of file ../../src/graphics/display/lib/api-types/cpp/config-check-result.h

  • bool operator== (const Dimensions & lhs, const Dimensions & rhs)

    Defined at line 129 of file ../../src/graphics/display/lib/api-types/cpp/dimensions.h

  • bool operator== (const CoordinateTransformation & lhs, const CoordinateTransformation & rhs)

    Defined at line 96 of file ../../src/graphics/display/lib/api-types/cpp/coordinate-transformation.h

  • bool operator!= (const Dimensions & lhs, const Dimensions & rhs)

    Defined at line 133 of file ../../src/graphics/display/lib/api-types/cpp/dimensions.h

  • bool operator!= (const CoordinateTransformation & lhs, const CoordinateTransformation & rhs)

    Defined at line 101 of file ../../src/graphics/display/lib/api-types/cpp/coordinate-transformation.h

  • bool operator== (const PixelFormat & lhs, const PixelFormat & rhs)

    Defined at line 119 of file ../../src/graphics/display/lib/api-types/cpp/pixel-format.h

  • bool operator!= (const PixelFormat & lhs, const PixelFormat & rhs)

    Defined at line 123 of file ../../src/graphics/display/lib/api-types/cpp/pixel-format.h

  • template <size_t inline_target_size>
    zx::result<> PostTask (std::unique_ptr<PostTaskState<inline_target_size>> post_task_state, async_dispatcher_t & dispatcher, fit::inline_callback<void (), inline_target_size> task_callback)

    Arranges for `callback` to run on `dispatcher` as a posted task.

    This overload does not perform any dynamic memory allocation. The consumed

    `post_task_state` is used instead. The caller must not attempt to access

    `post_task_state` in any way (such as a stashed raw pointer) after passing it

    into this call.

    `inline_target_size` is the capacity for storing `callback`'s captures. The

    compiler can infer this argument from the type of `post_task_state`. A

    compilation error will occur when attempting to use a callback whose captured

    state size exceeds this capacity.

    `callback` must be callable until it is called, or until `dispatcher` is shut

    down, whichever comes first. This implies that `callback` must be non-null.

    `callback` will be run when `dispatcher` invokes the posted task. So,

    `callback` will always be executed from one of the dispatcher's threads. The

    state captured in `callback` will be destroyed right after `callback` is run,

    on the same thread.

    `callback` must be moveable (implying that the captured context must be

    moveable) while it is callable. The move operators may be called on the

    thread used to call `PostTask()`, or on any of the dispatcher's threads.

    `callback` will not be run if `dispatcher` is shut down before it processes

    the posted task. In that case, the state captured in `callback` will be

    destroyed while the dispatcher is shutting down. The captured state will

    either be destroyed synchronously in PostTask() or on a dispatcher thread,

    depending on the relative timing of PostTask() and the dispatcher shutdown.

    Returns any error produced by the underlying C API `async_post_task()`.

    Defined at line 201 of file ../../src/graphics/display/lib/driver-utils/post-task.h

  • bool operator== (const DisplayTiming & lhs, const DisplayTiming & rhs)

    Defined at line 411 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h

  • bool operator!= (const DisplayTiming & lhs, const DisplayTiming & rhs)

    Defined at line 427 of file ../../src/graphics/display/lib/api-types/cpp/display-timing.h