dm_test_lat..._dp_succeeds(9)
πΈ dm_test_late_register_non_dp_succeeds(9) πΈ
okay so bestie, quick vibe check first: this is a page out of the Kernel API Manual, section 9, and the header at the top of the page is the truncated little gremlin dm_test_lat..._dp_succeeds(9) (the full name got cut off, which is so typical π). The real full name is the one right above in the NAME section, and we're gonna get into exactly what it does. no notes, let's go π
β¨ NAME β¨
dm_test_late_register_non_dp_succeeds β a test for late_register on a plain connector. that's it, that's the whole gig π
π SYNOPSIS π
void dm_test_late_register_non_dp_succeeds (struct kunit *test );
π ARGUMENTS π
testβ the KUnit test context. it's the test's little home base, its main character prop π«Ά
π¦ DESCRIPTION π¦
so here's the situation: sysfs, backlight, and DP AUX registration are all skipped β like, every one of them, cancelled, not invited to the party π β and when all that's out of the way, late_register completes successfully.
that's the whole test. no drama, no surprises, just a clean pass. slay β¨
π SEE ALSO π
first up, the kernel file where this lives β literally right here:
./drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_connector_test.c
and now, the mother of all friend groups π β the rest of the connector test crew, all (9):
- subconnector type era:
dm_test_subconnector_type_none(9),dm_test_subconnector_type_vga(9),dm_test_subconnector_type_dvi_converter(9),dm_test_subconnector_type_dvi_dongle(9),dm_test_subconnector_type_hdmi_converter(9),dm_test_subconnector_type_hdmi_dongle(9),dm_test_subconnector_type_mismatched(9),dm_test_subconnector_type_default_unknown(9) - content type:
dm_test_content_type_no_data(9),dm_test_content_type_graphics(9),dm_test_content_type_photo(9),dm_test_content_type_cinema(9),dm_test_content_type_game(9),dm_test_content_type_unknown_defaults_no_data(9) - adjust colour depth:
dm_test_adjust_colour_depth_fits_at_888(9),dm_test_adjust_colour_depth_reduces_to_888(9),dm_test_adjust_colour_depth_10bpc_passes(9),dm_test_adjust_colour_depth_420_halves_clk(9),dm_test_adjust_colour_depth_420_reduces(9),dm_test_adjust_colour_depth_reduces_12bpc_to_10bpc(9),dm_test_adjust_colour_depth_16bpc_no_fallback(9),dm_test_adjust_colour_depth_none_fits(9),dm_test_adjust_colour_depth_invalid_depth(9) - output colour space (the big one π):
dm_test_output_color_space_default_rgb_full(9),dm_test_output_color_space_default_rgb_limited(9),dm_test_output_color_space_default_ycbcr709(9),dm_test_output_color_space_default_ycbcr601_limited(9),dm_test_output_color_space_bt601_y_only(9),dm_test_output_color_space_bt601(9),dm_test_output_color_space_bt709(9),dm_test_output_color_space_bt709_y_only(9),dm_test_output_color_space_oprgb(9),dm_test_output_color_space_bt2020_rgb(9),dm_test_output_color_space_bt2020_rgb_limited(9),dm_test_output_color_space_default_rgb_auto_hdmi_cta(9),dm_test_output_color_space_default_rgb_auto_hdmi_vga(9),dm_test_output_color_space_default_rgb_auto_dp_cta(9),dm_test_output_color_space_default_rgb_full_hdmi_cta(9),dm_test_output_color_space_bt2020_rgb_auto_hdmi_cta(9),dm_test_output_color_space_bt2020_ycc(9),dm_test_output_color_space_default_ycbcr709_y_only(9),dm_test_output_color_space_default_ycbcr601(9),dm_test_output_color_space_bt2020_ycc_rgb_encoding(9),dm_test_output_color_space_bt2020_ycc_rgb_encoding_limited(9),dm_test_output_color_space_bt2020_rgb_ycc_encoding(9) - convert colour depth:
dm_test_convert_color_depth_bpc_mappings(9),dm_test_convert_color_depth_bpc_unknown(9) - colour depth from info:
dm_test_color_depth_from_info_bpc8(9),dm_test_color_depth_from_info_bpc10(9),dm_test_color_depth_from_info_zero_bpc_defaults_888(9),dm_test_color_depth_from_info_requested_bpc_caps(9),dm_test_color_depth_from_info_y420_default(9),dm_test_color_depth_from_info_y420_10bpc(9),dm_test_color_depth_from_info_y420_12bpc(9),dm_test_color_depth_from_info_y420_16bpc(9),dm_test_color_depth_from_info_requested_odd_bpc(9),dm_test_color_depth_from_info_unsupported_bpc(9) - to connector type:
dm_test_to_connector_type_hdmi(9),dm_test_to_connector_type_edp(9),dm_test_to_connector_type_lvds(9),dm_test_to_connector_type_rgb(9),dm_test_to_connector_type_dp(9),dm_test_to_connector_type_dp_mst(9),dm_test_to_connector_type_dvi_dvii(9),dm_test_to_connector_type_dual_link_dvii(9),dm_test_to_connector_type_dvi_dvid(9),dm_test_to_connector_type_dual_link_dvid(9),dm_test_to_connector_type_virtual(9),dm_test_to_connector_type_unknown(9) - is duplicate mode:
dm_test_is_duplicate_mode_empty_list(9),dm_test_is_duplicate_mode_match(9),dm_test_is_duplicate_mode_no_match(9),dm_test_is_duplicate_mode_same_size_different_clock(9) - encoder crtc mask:
dm_test_encoder_crtc_mask_1(9),dm_test_encoder_crtc_mask_2(9),dm_test_encoder_crtc_mask_3(9),dm_test_encoder_crtc_mask_4(9),dm_test_encoder_crtc_mask_5(9),dm_test_encoder_crtc_mask_6(9),dm_test_encoder_crtc_mask_default(9) - aspect ratio:
dm_test_aspect_ratio_no_data(9),dm_test_aspect_ratio_4_3(9),dm_test_aspect_ratio_16_9(9),dm_test_aspect_ratio_64_27(9),dm_test_aspect_ratio_256_135(9) - copy crtc timing:
dm_test_copy_crtc_timing_copies_all_fields(9),dm_test_copy_crtc_timing_leaves_non_crtc_fields(9) - decide crtc timing:
dm_test_decide_crtc_timing_scale_enabled(9),dm_test_decide_crtc_timing_matching_mode(9),dm_test_decide_crtc_timing_no_copy(9),dm_test_decide_crtc_timing_no_crtc_clock(9) - funcs reset:
dm_test_funcs_reset_sets_defaults(9),dm_test_funcs_reset_edp_abm_level(9),dm_test_funcs_reset_edp_abm_disabled(9) - atomic dup state:
dm_test_atomic_dup_state_copies_fields(9) - fill hdr:
dm_test_fill_hdr_null_metadata(9),dm_test_fill_hdr_zeroes_output(9) - set property:
dm_test_set_property_scaling_center(9),dm_test_set_property_scaling_aspect(9),dm_test_set_property_scaling_fullscreen(9),dm_test_set_property_scaling_none(9),dm_test_set_property_scaling_unchanged(9),dm_test_set_property_underscan_hborder(9),dm_test_set_property_underscan_vborder(9),dm_test_set_property_underscan_enable(9),dm_test_set_property_abm_sysfs_control(9),dm_test_set_property_abm_level_off(9),dm_test_set_property_abm_level_value(9),dm_test_set_property_unknown(9) - get property:
dm_test_get_property_scaling_center(9),dm_test_get_property_scaling_aspect(9),dm_test_get_property_scaling_full(9),dm_test_get_property_scaling_off(9),dm_test_get_property_underscan_borders(9),dm_test_get_property_abm_sysfs_allowed(9),dm_test_get_property_abm_level(9),dm_test_get_property_abm_disabled_zero(9),dm_test_get_property_unknown(9) - highest refresh:
dm_test_highest_refresh_writeback_null(9),dm_test_highest_refresh_cached_base(9),dm_test_highest_refresh_preferred_mode(9) - is freesync video mode:
dm_test_is_freesync_video_mode_null_mode(9),dm_test_is_freesync_video_mode_match(9),dm_test_is_freesync_video_mode_no_match(9) - cacp caps, part one:
dm_test_cacp_caps_unsupported_ip(9),dm_test_cacp_caps_excluded_ip_316(9),dm_test_cacp_caps_edp_oled_supported(9),dm_test_cacp_caps_lvds_oled_supported(9),dm_test_cacp_caps_non_edp_signal(9),dm_test_cacp_caps_lcd_panel(9) - set panel type, part one:
dm_test_set_panel_type_vsdb_oled(9),dm_test_set_panel_type_vsdb_miniled(9),dm_test_set_panel_type_dpcd_oled(9),dm_test_set_panel_type_dpcd_miniled(9),dm_test_set_panel_type_did_oled(9),dm_test_set_panel_type_did_lcd(9),dm_test_set_panel_type_vendor_lum_heuristic(9),dm_test_set_panel_type_defaults_to_lcd(9) - update subconnector:
dm_test_update_subconnector_dp_with_sink(9),dm_test_update_subconnector_dp_no_sink(9),dm_test_update_subconnector_non_dp_noop(9) - fbc init:
dm_test_fbc_init_no_compressor(9),dm_test_fbc_init_non_edp(9),dm_test_fbc_init_already_allocated(9),dm_test_fbc_init_no_modes(9) - detect mst:
dm_test_detect_mst_no_connectors(9),dm_test_detect_mst_skips_writeback(9),dm_test_detect_mst_non_mst_link(9),dm_test_detect_mst_branch_without_aux(9) - find first crtc:
dm_test_find_first_crtc_match(9),dm_test_find_first_crtc_no_match(9),dm_test_find_first_crtc_empty_state(9),dm_test_find_first_crtc_skips_null_ptr(9),dm_test_find_first_crtc_returns_first(9) - set panel type, part two (the sequel π¬):
dm_test_set_panel_type_samsung_miniled(9),dm_test_set_panel_type_samsung_below_threshold(9),dm_test_set_panel_type_default_lcd(9) - cacp caps, part two:
dm_test_cacp_caps_edp_supported(9),dm_test_cacp_caps_lvds_supported(9),dm_test_cacp_caps_old_ip_unsupported(9),dm_test_cacp_caps_ip_3_1_6_unsupported(9),dm_test_cacp_caps_non_edp_lvds_unsupported(9),dm_test_cacp_caps_lcd_unsupported(9) - fill stream:
dm_test_fill_stream_borders_zeroed(9),dm_test_fill_stream_rgb_defaults(9),dm_test_fill_stream_sync_polarity_positive(9),dm_test_fill_stream_sync_polarity_negative(9),dm_test_fill_stream_inherits_old_stream(9),dm_test_fill_stream_timing_from_crtc(9),dm_test_fill_stream_color_depth_requested_bpc(9),dm_test_fill_stream_content_type(9),dm_test_fill_stream_aspect_ratio(9),dm_test_fill_stream_encoding_from_caller_ycbcr420(9),dm_test_fill_stream_encoding_from_caller_ycbcr422(9),dm_test_fill_stream_encoding_from_caller_ycbcr444(9),dm_test_fill_stream_hdmi_ep_clamps_depth(9),dm_test_fill_stream_non_hdmi_ep_keeps_depth(9) - create stream:
dm_test_create_stream_fake_sink_success(9),dm_test_create_stream_sets_dm_context(9),dm_test_create_stream_virtual_signal(9),dm_test_create_stream_scaling_src(9),dm_test_create_stream_existing_sink(9) - detect:
dm_test_detect_force_on(9),dm_test_detect_force_on_digital(9),dm_test_detect_force_off(9),dm_test_detect_sink_present(9),dm_test_detect_no_sink(9) - poll dac load:
dm_test_poll_dac_load_returns_cached(9) - teardown gang:
dm_test_unregister_non_dp_noop(9),dm_test_destroy_minimal(9),dm_test_destroy_releases_dc_sink(9),dm_test_destroy_releases_dc_em_sink(9),dm_test_encoder_disable_noop(9) - atomic check:
dm_test_atomic_check_edp_native_keeps_scaling(9),dm_test_atomic_check_lvds_non_native_enables_scaling(9),dm_test_atomic_check_non_mst_returns_zero(9) - edid / cec bits:
dm_test_hdmi_cec_unset_edid_no_notifier(9),dm_test_create_eml_sink_no_edid(9),dm_test_handle_edid_mgmt_dp_sets_link_caps(9),dm_test_handle_edid_mgmt_non_dp_leaves_caps(9),dm_test_funcs_force_no_edid(9) - the long tail (still iconic, don't skip π«Ά):
dm_test_validate_stream_null_stream(9),dm_test_to_encoder_no_encoder(9),dm_test_to_encoder_returns_attached(9),dm_test_native_mode_no_encoder(9),dm_test_native_mode_empty_probed_zeroes_clock(9),dm_test_native_mode_copies_preferred(9),dm_test_create_common_mode_overrides(9),dm_test_add_common_modes_non_edp_noop(9),dm_test_add_common_modes_edp_adds(9),dm_test_ddc_get_modes_null_edid(9),dm_test_add_fs_modes_no_preferred_mode(9),dm_test_add_freesync_modes_null_edid_noop(9),dm_test_i2c_func_returns_flags(9),dm_test_i2c_xfer_no_ddc_pin(9),dm_test_get_amd_vsdb_unsupported(9),dm_test_get_amd_vsdb_supported(9),dm_test_parse_hdmi_amd_vsdb_null_edid(9),dm_test_parse_hdmi_amd_vsdb_no_extensions(9),dm_test_parse_hdmi_amd_vsdb_no_cea_ext(9),dm_test_parse_displayid_vrr_null_edid(9),dm_test_parse_displayid_vrr_no_displayid(9),dm_test_parse_displayid_vrr_sets_range(9),dm_test_mode_valid_interlace_rejected(9),dm_test_mode_valid_dblscan_rejected(9),dm_test_hdmi_cec_set_edid_no_notifier(9),dm_test_s3_handle_hdmi_cec_suspend(9),dm_test_s3_handle_hdmi_cec_resume(9),dm_test_create_validate_stream_null_dm_state(9),dm_test_update_after_detect_mst_noop(9),dm_test_update_after_detect_sink_unchanged(9),dm_test_update_scaling_null_mode(9),dm_test_update_scaling_fullscreen_default(9),dm_test_update_scaling_rmx_full(9),dm_test_update_scaling_rmx_aspect_pillarbox(9),dm_test_update_scaling_rmx_aspect_letterbox(9),dm_test_update_scaling_rmx_center(9),dm_test_update_scaling_underscan(9)
and that's the whole page bestie π source is ./drivers/gpu/drm/amd/display/... and it's dated October 2026, so likeβ¦ future vibes, genuinely iconic of it. bye pookie, go pass that test π¦β¨
π¦ 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