class HdmiHost

Defined at line 58 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.h

HdmiHost has access to the amlogic/designware HDMI block and controls its

operation. It also handles functions and keeps track of data that the

amlogic/designware block does not need to know about, including clock

calculations (which may move out of the host after https://fxbug.dev/42148166 is resolved),

VPU and HHI register handling, HDMI parameters, etc.

Public Methods

void HdmiHost (const HdmiHost & )

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

void HdmiHost (HdmiHost && )

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

HdmiHost & operator= (const HdmiHost & )

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

HdmiHost & operator= (HdmiHost && )

Defined at line 78 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.h

void HdmiHost (std::unique_ptr<HdmiTransmitter> hdmi_transmitter, fdf::MmioBuffer vpu_mmio, fdf::MmioBuffer hhi_mmio, fdf::MmioBuffer gpio_mux_mmio)

`hdmi_transmitter` must not be null.

`vpu_mmio` is the VPU MMIO register region. It must be a valid MMIO buffer.

`hhi_mmio` is the HHI (HIU) MMIO register region. It must be a valid MMIO

buffer.

`gpio_mux_mmio` is the GPIO Multiplexer (PERIPHS_REGS) MMIO register

region. It must be a valid MMIO buffer.

The VPU, HIU and PERIPHS_REGS register regions are defined in Section 8.1

"Memory Map" of the AMLogic A311D datasheet.

Defined at line 175 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.cc

zx::result<std::unique_ptr<HdmiHost>> Create (fdf::Namespace & incoming)

static

Defined at line 185 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.cc

zx_status_t HostOn ()

Defined at line 236 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.cc

void HostOff ()

Defined at line 289 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.cc

zx_status_t ModeSet (const display::DisplayTiming & timing)

Configures the HDMI clock, encoder and physical layer to given `timing`.

Returns ZX_OK and configures the video output module iff the display

timing and clock of `timing` is supported.

Defined at line 302 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.cc

zx::result<fbl::Vector<uint8_t>> ReadExtendedEdid ()

Defined at line 394 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.cc

bool IsDisplayTimingSupported (const display::DisplayTiming & timing)

Returns true iff a display timing is supported by the display engine driver

and can be used in a display configuration.

Defined at line 453 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.cc

void ReplaceEncoderPixelColorWithColor (bool enabled, YCbCrColor color)

Configures the video encoder to replace the output pixels of the Video

Input Unit (VIU) with the given `color` iff `enabled` is true.

Defined at line 487 of file ../../src/graphics/display/drivers/amlogic-display/hdmi-host.cc