dm_test_ato...eeps_scaling(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 dm_test_ato...eeps_scaling(9) β€” Kernel API Manual 🌸

okay bestie, so this is a page from the Kernel API Manual, and the title got absolutely mutilated by the man page formatter β€” the real name is dm_test_atomic_check_edp_native_keeps_scaling(9), it just got squished in the header. anyway. it's a KUnit test page. let's go πŸ’…


✨ NAME ✨

dm_test_atomic_check_edp_native_keeps_scaling β€” the test that makes sure a native eDP mode gets left alone. like, hands off, no cap πŸ™…β€β™€οΈ


πŸŽ€ SYNOPSIS πŸŽ€

void dm_test_atomic_check_edp_native_keeps_scaling (struct kunit *test
);

yes it's a void function, yes it takes exactly one argument, yes the closing paren is on its own line like that. that's just how the synopsis is printed, don't come for me 😭


πŸ¦‹ ARGUMENTS πŸ¦‹

  • test β€” the KUnit test context πŸ’– that's it, that's the whole argument. it's the little context object the whole KUnit framework hands you so the test can do test things. iconic.

🌈 DESCRIPTION 🌈

okay so here's the vibe πŸ‘‘ β€” you've got yourself an eDP connector, right? and when its adjusted mode matches up with the panel's native mode, then drm_crtc_helper_mode_valid_fixed comes back with MODE_OK πŸŽ‰

and because it returns MODE_OK, the scaling is untouched. literally no scaling applied. left completely alone. that's the whole thing this test is checking for β€” that the native mode gets the respect it deserves and nobody goes in there resizing stuff behind its back πŸ’…βœ¨

so like, yes, it's a real test, and yes, it's obsessed with making sure the "don't touch it" path stays a "don't touch it" path 🫢

✨ SEE ALSO ✨

okay so before we get into the friend list, there's literally a Kernel file you should go look at, bestie β€” it's all of these tests living in one place:

./drivers/gpu/drm/amd/display/amdgpu_dm/tests/amdgpu_dm_connector_test.c

and like… the rest of the guest list is huge, so I grouped them so you don't get lost. every single one is a real page, no cap πŸ’…


🫢 the subconnector-type girlies

πŸŽ€ content type, the whole mood board

πŸ’œ adjust colour depth (the 888 girlies ate)

🌈 output color space β€” yes there are 22 of them, obsessed actually

πŸ¦‹ bit depth conversion + depth-from-info

🧚 to_connector_type β€” every cable gets a moment

πŸ“ duplicate modes + crtc masks

🌸 aspect ratio, the ratios of it all

πŸ‘‘ crtc timing: copy it, decide it

πŸ’– funcs reset, atomic dup, hdr fills

✨ set_property β€” she sets, she slays

πŸ’… get_property β€” she gets it back, obviously

⭐ highest refresh + freesync video mode

πŸ”₯ cacp caps, round one

πŸŽ€ set_panel_type β€” panel girlies rise

πŸ¦‹ subconnector updates + fbc_init

πŸ’œ detect_mst + find_first_crtc

🌈 samsung panels + the default lcd lore

🌸 cacp caps, round two (she came back)

πŸ“ fill_stream β€” fourteen of them, main character energy

πŸ‘‘ create_stream

πŸ’– detect / poll / register / destroy / disable

✨ atomic check / cec unset / eml sink / edid mgmt

πŸ’… validate_stream / to_encoder / native_mode

🧚 common modes / ddc / freesync modes

πŸ”₯ i2c / amd vsdb / displayid vrr / mode_valid

🌈 cec set edid / s3 / validate stream / update-after-detect / update_scaling


and that's the whole group chat, bestie πŸ’– every one of those links back to its own page, so go click around, iykyk πŸ¦‹

tiny housekeeping note: this page came from the kernel source tree at ./drivers/gpu/drm/amd/display/..., it's the version dated October 2026, and the page itself is dm_test_ato...eeps_scaling(9). that's the tea, go touch grass now 🫢✨
πŸ“¦ where this page comes from