drivers/gpu/drm/amd/display/dc/dio/virtual/virtual_link_encoder.c

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/amd/display/dc/dio/virtual/virtual_link_encoder.c

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/amd/display/dc/dio/virtual/virtual_link_encoder.c
Extension
.c
Size
5070 bytes
Lines
172
Domain
Driver Families
Bucket
drivers/gpu
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

#include "dm_services.h"
#include "dm_services_types.h"

#include "virtual_link_encoder.h"

static bool virtual_link_encoder_validate_output_with_stream(
	struct link_encoder *enc,
	const struct dc_stream_state *stream) {
		(void)enc;
		(void)stream;
		return true;
	}

static void virtual_link_encoder_hw_init(struct link_encoder *enc)
{
	(void)enc;
}

static void virtual_link_encoder_setup(
	struct link_encoder *enc, enum signal_type signal) {
		(void)enc;
		(void)signal;
	}

static void virtual_link_encoder_enable_tmds_output(
	struct link_encoder *enc,
	enum clock_source_id clock_source,
	enum dc_color_depth color_depth,
	enum signal_type signal,
	uint32_t pixel_clock) {
		(void)enc;
		(void)clock_source;
		(void)color_depth;
		(void)signal;
		(void)pixel_clock;
	}

static void virtual_link_encoder_enable_dp_output(
	struct link_encoder *enc,
	const struct dc_link_settings *link_settings,
	enum clock_source_id clock_source) {
		(void)enc;
		(void)link_settings;
		(void)clock_source;
	}

static void virtual_link_encoder_enable_dp_mst_output(
	struct link_encoder *enc,
	const struct dc_link_settings *link_settings,
	enum clock_source_id clock_source) {
		(void)enc;
		(void)link_settings;
		(void)clock_source;
	}

static void virtual_link_encoder_disable_output(
	struct link_encoder *link_enc,
	enum signal_type signal) {
		(void)link_enc;
		(void)signal;
	}

static void virtual_link_encoder_dp_set_lane_settings(
	struct link_encoder *enc,
	const struct dc_link_settings *link_settings,
	const struct dc_lane_settings lane_settings[LANE_COUNT_DP_MAX]) {
		(void)enc;
		(void)link_settings;
		(void)lane_settings;
	}

static void virtual_link_encoder_dp_set_phy_pattern(
	struct link_encoder *enc,
	const struct encoder_set_dp_phy_pattern_param *param) {
		(void)enc;
		(void)param;
	}

static void virtual_link_encoder_update_mst_stream_allocation_table(
	struct link_encoder *enc,
	const struct link_mst_stream_allocation_table *table) {
		(void)enc;
		(void)table;
	}

static void virtual_link_encoder_connect_dig_be_to_fe(
	struct link_encoder *enc,
	enum engine_id engine,
	bool connect) {
		(void)enc;

Annotation

Implementation Notes