ufshcd_find_...ve_icc_level(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 ufshcd_find_max_sup_active_icc_level(9) β€” your new fave kernel function πŸŽ€

okay so real talk, bestie: this page is from the Kernel API Manual (the header's a little shy and truncates it to ufshcd_find_...ve_icc_level(9), we love a mysterious queen πŸ’…), and the whole vibe is "how do I figure out the biggest ICC level this thing can handle?" Spoiler: it's giving power descriptor energy and I'm obsessed.


✨ NAME ✨

ufshcd_find_max_sup_active_icc_level β€” calculate the max ICC level</p> πŸ’– and fr fr, here's the tea: in case regulators are not initialized, we'll return 0. That's it, that's the whole personality. 🫢


🌈 SYNOPSIS 🌈

u32 ufshcd_find_max_sup_active_icc_level (struct ufs_hba *hba , const u8
*desc_buf );

look at that signature. u32 return type, struct ufs_hba *hba, const u8 *desc_buf β€” no cap, it's iconic. ✨


πŸ¦‹ ARGUMENTS πŸ¦‹

  • hba β€” the per-adapter instance πŸ’« (your one special hba, main character energy)
  • desc_buf β€” the power descriptor buffer we're pulling the ICC levels out of πŸ“ like, that's literally where the ICC levels live

πŸ‘‘ RETURN πŸ‘‘

the calculated ICC level β€” that's the whole answer, bestie. no drama, just a u32 of vibes and numbers. ⭐

⚠️ reminder bestie: if the regulators aren't initialized, it returns 0. don't come for me when you get a zero, that's the documented behaviour, not a bug πŸ’€

πŸ’œ SEE ALSO πŸ’œ

okay this is the part where the manpage goes absolutely feral with the cross-references, and honestly? we respect the hustle. the kernel file is ./drivers/ufs/core/ufshcd.c β€” that's the mothership πŸš€ β€” and everything else lives right here:

interrupts & friends 🧚

printing / debug royalty πŸŽ€

register & version reading 🌸

the transfer request list cleanup crew 🧹

run-stop & hba start πŸ”₯

pm qos (the whole trilogy, slay) 🌈

clocks, gears & devfreq scaling ⚑

command processing pause/resume ⏸️

sending commands & copying stuff πŸ“¬

UIC command pipeline (a whole saga) πŸ’«

SG mapping & UPIU composing 🧩

queuecommand & device commands 🎯

queries (flags, attrs, descriptors β€” the whole menu) πŸ“‹

memory allocation 🧠

DME / link startup crew πŸ”—

power mode switching (very demure, very mindful) πŸŒ™

device init & hba operational 🚦

scsi device land 🐚

completions (one cqe at a time bestie) βœ…

exception events & bkops 🚨

error handling (the dramatic arc) 😭

task management, abort & reset πŸ’€

icc levels (yes, our girl has siblings) πŸ‘―

quirks, tune-ups & LUs πŸŽ›οΈ

probe & async scan πŸ”

suspend / resume (the nap era) 😴

teardown & lifecycle 🧼

and finally, the mothership herself πŸ‘‘


that's the whole list, every single cross-reference, not one skipped β€” we ate and left no crumbs 🍽️✨


sign-off time, bestie πŸ’– this little masterpiece lives in ./drivers/ufs/core and it's dated October 2026 β€” so like, future iconic. go forth and calculate those ICC levels, you've got this πŸ«ΆπŸŽ€πŸŒΈ

πŸ“¦ where this page comes from