dcn35_hw_block_power_down(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… dcn35_hw_block_power_down β€” the "okay everybody go night-night" era

So this is a page from the Kernel API Manual, and bestie, it's a whole function about putting hardware blocks to sleep in a very specific order. Let's get into it ✨


✨ NAME ✨

dcn35_hw_block_power_down β€” the power down sequence. That's it, that's the whole vibe. It turns things off. In order. Respect the order. πŸŽ€


🌸 SYNOPSIS 🌸

void dcn35_hw_block_power_down (struct dc *dc, struct pg_block_update *update_state);

Returns void, so like… no return value, no feedback, no "did I do a good job?" It just does the thing. Iconic, honestly. πŸ’…


πŸ¦‹ ARGUMENTS πŸ¦‹

  • dc β€” the current DC state. Like, the whole situation right now. Current. DC. State. 🫢
  • update_state β€” this one updates the PG sequence states for the HW block. That's literally the job description, no cap.

πŸ”₯ DESCRIPTION πŸ”₯

Okay so here's the tea: this function runs the ON-OFF (ONO) sequence for power down. The order is not a suggestion, it's the itinerary, and everyone hits their stop in the right order, periodt.

Here's the itinerary, exactly as written:

  • ONO Region 3, DCPG 25: hpo β€” SKIPPED
  • ONO Region 4, DCPG 0: dchubp0, dpp0
  • ONO Region 6, DCPG 1: dchubp1, dpp1
  • ONO Region 8, DCPG 2: dchubp2, dpp2
  • ONO Region 10, DCPG 3: dchubp3, dpp3
  • ONO Region 1, DCPG 23: dchubbub, dchvm, dchubbubmem β€” SKIPPED. Why? Because PMFW will pwr dwn at IPS2 entry. Not our problem, they got it πŸ’€
  • ONO Region 5, DCPG 16: dsc0
  • ONO Region 7, DCPG 17: dsc1
  • ONO Region 9, DCPG 18: dsc2
  • ONO Region 11, DCPG 19: dsc3
  • ONO Region 2, DCPG 24: mpc, opp, optc, dwb
  • ONO Region 0, DCPG 22: dccg, dio, dcio β€” SKIPPED. Because it'll be pwr dwn after the lono timer is armed. Timing queen behavior ⏰
And here's the plot twist, bestie: if sequential ONO is specified, the order gets modified. It goes from ONO Region 11 β†’ ONO Region 0 descending. So the whole middle section flips around. Don't say I didn't warn you πŸ™ˆ

πŸ’œ SEE ALSO πŸ’œ

  • Kernel file ./drivers/gpu/drm/amd/display/dc/hwss/dcn35/dcn35_hwseq.c β€” go read the source, iykyk 🧚
  • dcn35_hw_block_power_up(9) β€” the sequel. The glow-up. The "we're so back" to this page's "it's over" 🌈

Okay that's the whole page, you ate it up fr fr πŸ“ This was the Kernel API Manual energy, sourced from ./drivers/gpu/drm/amd/display/..., dated October 2026 β€” love that for us. Go forth and power down responsibly, bestie πŸ’–βœ¨πŸ‘‘

πŸ“¦ where this page comes from