class DpCapabilities

Defined at line 27 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

DpCapabilities is a utility for reading and storing DisplayPort capabilities

supported by the display based on a copy of read-only DPCD capability

registers. Drivers can also use PublishToInspect() to publish the data to

inspect.

Public Methods

void DpCapabilities (const DpCapabilities & )

Allow copy.

Defined at line 34 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

DpCapabilities & operator= (const DpCapabilities & )

Defined at line 35 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

void DpCapabilities (DpCapabilities && )

Allow move.

Defined at line 38 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

DpCapabilities & operator= (DpCapabilities && )

Defined at line 39 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

uint8_t dpcd_at (dpcd::Register address)

Get the cached value of a DPCD register using its DPCD address.

Defined at line 48 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

uint8_t edp_dpcd_at (dpcd::EdpRegister address)

Get the cached value of a EDP DPCD register using its address. Asserts if the eDP capabilities

are not available.

Defined at line 55 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

void DpCapabilities ()

Initializes the DPCD capability array with all zeros and the EDP DPCD capabilities as

non-present.

Defined at line 57 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.cc

fpromise::result<DpCapabilities> Read (DpAuxChannel * dp_aux_channel)

Read and parse DPCD capabilities. Clears any previously initialized content

Defined at line 62 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.cc

template <typename T, dpcd::Register A>
T dpcd_reg ()

Defined at line 63 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

template <typename T, dpcd::EdpRegister A>
T edp_dpcd_reg ()

Asserts if eDP capabilities are not available.

Defined at line 71 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

dpcd::Revision dpcd_revision ()

Defined at line 77 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

std::optional<dpcd::EdpRevision> edp_revision ()

Defined at line 81 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

size_t sink_count ()

Total number of stream sinks within this Sink device.

Defined at line 89 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

uint8_t max_lane_count ()

Maximum number of DisplayPort lanes.

Defined at line 92 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

bool enhanced_frame_capability ()

True for SST mode displays that support the Enhanced Framing symbol sequence (see DP v1.4a

Section 2.2.1.2).

Defined at line 96 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

bool backlight_aux_power ()

True for eDP displays that support the `backlight_enable` bit in the

dpcd::DPCD_EDP_DISPLAY_CTRL register (see dpcd.h).

Defined at line 100 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

bool backlight_aux_brightness ()

True for eDP displays that support backlight adjustment through the

dpcd::DPCD_EDP_BACKLIGHT_BRIGHTNESS_[MSB|LSB] registers.

Defined at line 104 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

const std::vector<uint32_t> & supported_link_rates_mbps ()

The list of supported link rates in ascending order, measured in units of Mbps/lane.

Defined at line 107 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

bool use_link_rate_table ()

True if the contents of vector returned by `supported_link_rates_mbps()` was populated using

the "Link Rate Table" method. If true, the link rate must be selected by writing the vector

index to the DPCD LINK_RATE_SET register. Otherwise, the selected link rate must be programmed

using the DPCD LINK_BW_SET register.

Defined at line 115 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.h

void PublishToInspect (inspect::Node * caps_node)

Publish the capabilities fields to inspect node `caps_node`.

Defined at line 196 of file ../../src/graphics/display/drivers/intel-display/dp-capabilities.cc