dm_mst_test...best_encoder(9)
π dm_mst_test_atomic_best_encoder β Kernel API Manual (9) β¨
okay so bestie, we're in the Kernel API Manual today and this page is all about one very specific lil KUnit test. she's niche, she's structural, she's iconic. let's get into it π«Ά
πΈ NAME πΈ
dm_mst_test_atomic_best_encoder β literally just Test MST encoder selection. that's the whole vibe check. π
β¨ SYNOPSIS β¨
void dm_mst_test_atomic_best_encoder (struct kunit *test );
no cap, that's the whole signature. one arg, no return, she's a void girlie π
π¦ ARGUMENTS π¦
testβ the KUnit test context π this is the lil handle the test framework hands over, and yes you pass it straight through, that's her whole job.
π DESCRIPTION π
so here's the tea π this test verifies that dm_mst_atomic_best_encoder picks the MST encoder indexed by the CRTC ID in the connector's new atomic state. like, the CRTC ID is the key, and the encoder lookup better be matching it. main character indexing behaviour fr fr.
and the way it pulls this off? structural DRM mocks only π ngl that's the best part β you do not need to register connector/CRTC objects for this helper. registering stuff would be extra, and she is simply not doing extra. lowkey efficient, highkey slay. β¨
π reminder bestie: the mocks here are structural β that's the whole point of the test setup, don't go registering connectors and CRTCs thinking you're helping, you're not, the test literally says it's unnecessary.
π₯ SEE ALSO π₯
the whole friend group, in order, no skipping π
- Kernel file
./drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_mst_types_test.cdm_mst_test_needs_dsc_aux_workaround_match(9)dm_mst_test_needs_dsc_aux_workaround_rev12(9)dm_mst_test_needs_dsc_aux_workaround_wrong_dev_id(9)dm_mst_test_needs_dsc_aux_workaround_wrong_rev(9)dm_mst_test_needs_dsc_aux_workaround_low_sink_count(9)dm_mst_test_needs_dsc_aux_workaround_zero_sink_count(9)dm_mst_test_pbn_divider_null_link(9)dm_mst_test_pbn_divider_uses_link_bandwidth(9)dm_mst_test_reset_connector_setting(9)dm_mst_test_retrieve_downstream_no_aux(9)dm_mst_test_retrieve_downstream_present(9)dm_mst_test_retrieve_downstream_aux_error(9)dm_mst_test_retrieve_branch_no_parent(9)dm_mst_test_retrieve_branch_reads_oui(9)dm_mst_test_aux_result_success(9)dm_mst_test_aux_result_eio(9)dm_mst_test_aux_result_ebusy(9)dm_mst_test_aux_result_timeout(9)dm_mst_test_aux_transfer_native_read(9)dm_mst_test_aux_transfer_native_write(9)dm_mst_test_aux_transfer_partial_write(9)dm_mst_test_aux_transfer_error_result(9)dm_mst_test_aux_transfer_hpd_discon_quirk(9)dm_mst_test_aux_transfer_non_ack_reply(9)dm_mst_test_fill_payload_flags_native_write(9)dm_mst_test_fill_payload_flags_native_read(9)dm_mst_test_fill_payload_flags_i2c_read_mot(9)dm_mst_test_fill_payload_flags_write_status(9)dm_mst_test_msg_ready_mask(9)dm_mst_test_select_esi_dpcd_legacy(9)dm_mst_test_select_esi_dpcd_esi(9)dm_mst_test_sideband_msg_ready_no_ready_bits(9)dm_mst_test_sideband_msg_ready_read_error(9)dm_mst_test_sideband_msg_ready_without_mst_state(9)dm_mst_test_down_rep_msg_ready_wrapper(9)dm_mst_test_initialize_dp_connector_edp(9)dm_mst_test_initialize_dp_connector_mst(9)dm_mst_test_create_fake_mst_encoders(9)dm_mst_test_atomic_check_no_old_crtc(9)dm_mst_test_detect_unregistered(9)dm_mst_test_fp_guarded_public_stubs(9)
okay that's the page!! π she lives over in ./drivers/gpu/drm/amd/display/... and this edition is dated October 2026, part of the Kernel API Manual β go read her sisters, they ate too π
β¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms