Lines Matching defs:link_service
99 struct link_service { struct
101 struct dc_link *(*create_link)(
103 void (*destroy_link)(struct dc_link **link);
107 bool (*detect_link)(struct dc_link *link, enum dc_detect_reason reason);
108 bool (*detect_connection_type)(struct dc_link *link,
110 struct dc_sink *(*add_remote_sink)(
115 void (*remove_remote_sink)(struct dc_link *link, struct dc_sink *sink);
116 bool (*get_hpd_state)(struct dc_link *link);
117 struct gpio *(*get_hpd_gpio)(struct dc_bios *dcb,
120 void (*enable_hpd)(const struct dc_link *link);
121 void (*disable_hpd)(const struct dc_link *link);
122 void (*enable_hpd_filter)(struct dc_link *link, bool enable);
123 bool (*reset_cur_dp_mst_topology)(struct dc_link *link);
124 const struct dc_link_status *(*get_status)(const struct dc_link *link);
125 bool (*is_hdcp1x_supported)(struct dc_link *link,
127 bool (*is_hdcp2x_supported)(struct dc_link *link,
129 void (*clear_dprx_states)(struct dc_link *link);
133 void (*get_cur_res_map)(const struct dc *dc, uint32_t *map);
134 void (*restore_res_map)(const struct dc *dc, uint32_t *map);
135 void (*get_cur_link_res)(const struct dc_link *link,
140 enum dc_status (*validate_mode_timing)(
144 uint32_t (*dp_link_bandwidth_kbps)(
147 bool (*validate_dpia_bandwidth)(
153 void (*set_dpms_on)(struct dc_state *state, struct pipe_ctx *pipe_ctx);
154 void (*set_dpms_off)(struct pipe_ctx *pipe_ctx);
155 void (*resume)(struct dc_link *link);
156 void (*blank_all_dp_displays)(struct dc *dc);
157 void (*blank_all_edp_displays)(struct dc *dc);
158 void (*blank_dp_stream)(struct dc_link *link, bool hw_init);
159 enum dc_status (*increase_mst_payload)(
161 enum dc_status (*reduce_mst_payload)(
163 void (*set_dsc_on_stream)(struct pipe_ctx *pipe_ctx, bool enable);
164 bool (*set_dsc_enable)(struct pipe_ctx *pipe_ctx, bool enable);
165 bool (*update_dsc_config)(struct pipe_ctx *pipe_ctx);
169 struct ddc_service *(*create_ddc_service)(
171 void (*destroy_ddc_service)(struct ddc_service **ddc);
172 bool (*query_ddc_data)(
179 int (*aux_transfer_raw)(struct ddc_service *ddc,
182 bool (*configure_fixed_vs_pe_retimer)(
186 bool (*aux_transfer_with_retries_no_mutex)(struct ddc_service *ddc,
188 bool (*is_in_aux_transaction_mode)(struct ddc_service *ddc);
189 uint32_t (*get_aux_defer_delay)(struct ddc_service *ddc);
193 bool (*dp_is_sink_present)(struct dc_link *link);
194 bool (*dp_is_fec_supported)(const struct dc_link *link);
195 bool (*dp_is_128b_132b_signal)(struct pipe_ctx *pipe_ctx);
196 bool (*dp_get_max_link_enc_cap)(const struct dc_link *link,
198 const struct dc_link_settings *(*dp_get_verified_link_cap)(
200 enum dp_link_encoding (*dp_get_encoding_format)(
202 bool (*dp_should_enable_fec)(const struct dc_link *link);
203 bool (*dp_decide_link_settings)(
206 enum dp_link_encoding (*mst_decide_link_encoding_format)(
208 bool (*edp_decide_link_settings)(struct dc_link *link,
210 uint32_t (*bw_kbps_from_raw_frl_link_rate_data)(uint8_t bw);
211 bool (*dp_overwrite_extended_receiver_cap)(struct dc_link *link);
212 enum lttpr_mode (*dp_decide_lttpr_mode)(struct dc_link *link,
217 int (*dpia_handle_usb4_bandwidth_allocation_for_link)(
219 void (*dpia_handle_bw_alloc_response)(
221 void (*dp_set_drive_settings)(
225 void (*dpcd_write_rx_power_ctrl)(struct dc_link *link, bool on);
229 bool (*dp_parse_link_loss_status)(
232 bool (*dp_should_allow_hpd_rx_irq)(const struct dc_link *link);
233 void (*dp_handle_link_loss)(struct dc_link *link);
234 enum dc_status (*dp_read_hpd_rx_irq_data)(
237 bool (*dp_handle_hpd_rx_irq)(struct dc_link *link,
244 void (*edp_panel_backlight_power_on)(
246 int (*edp_get_backlight_level)(const struct dc_link *link);
247 bool (*edp_get_backlight_level_nits)(struct dc_link *link,
250 bool (*edp_set_backlight_level)(const struct dc_link *link,
253 bool (*edp_set_backlight_level_nits)(struct dc_link *link,
257 int (*edp_get_target_backlight_pwm)(const struct dc_link *link);
258 bool (*edp_get_psr_state)(
260 bool (*edp_set_psr_allow_active)(
266 bool (*edp_setup_psr)(struct dc_link *link,
270 bool (*edp_set_sink_vtotal_in_psr_active)(
274 void (*edp_get_psr_residency)(
277 bool (*edp_get_replay_state)(
279 bool (*edp_set_replay_allow_active)(struct dc_link *dc_link,
282 bool (*edp_setup_replay)(struct dc_link *link,
284 bool (*edp_set_coasting_vtotal)(
286 bool (*edp_replay_residency)(const struct dc_link *link,
290 bool (*edp_wait_for_t12)(struct dc_link *link);
291 bool (*edp_is_ilr_optimization_required)(struct dc_link *link,
293 bool (*edp_backlight_enable_aux)(struct dc_link *link, bool enable);
294 void (*edp_add_delay_for_T9)(struct dc_link *link);
295 bool (*edp_receiver_ready_T9)(struct dc_link *link);
296 bool (*edp_receiver_ready_T7)(struct dc_link *link);
297 bool (*edp_power_alpm_dpcd_enable)(struct dc_link *link, bool enable);
298 void (*edp_set_panel_power)(struct dc_link *link, bool powerOn);
302 void (*dp_handle_automated_test)(struct dc_link *link);
303 bool (*dp_set_test_pattern)(
310 void (*dp_set_preferred_link_settings)(struct dc *dc,
313 void (*dp_set_preferred_training_settings)(struct dc *dc,
321 bool (*dp_trace_is_initialized)(struct dc_link *link);
322 void (*dp_trace_set_is_logged_flag)(struct dc_link *link,
325 bool (*dp_trace_is_logged)(struct dc_link *link, bool in_detection);
326 unsigned long long (*dp_trace_get_lt_end_timestamp)(
328 const struct dp_trace_lt_counts *(*dp_trace_get_lt_counts)(
330 unsigned int (*dp_trace_get_link_loss_count)(struct dc_link *link);
331 void (*dp_trace_set_edp_power_timestamp)(struct dc_link *link,
333 uint64_t (*dp_trace_get_edp_poweron_timestamp)(struct dc_link *link);
334 uint64_t (*dp_trace_get_edp_poweroff_timestamp)(struct dc_link *link);
335 void (*dp_trace_source_sequence)(