i3c_dev_request_ibi_locked(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… i3c_dev_request_ibi_locked(9) πŸ’…

okay so bestie, welcome to the Kernel API Manual β€” this one's about i3c_dev_request_ibi_locked, and it's genuinely such a vibe once you get it. let's go πŸŽ€


✨ NAME ✨

i3c_dev_request_ibi_locked β€” request an IBI πŸ¦‹


🌸 SYNOPSIS 🌸

int i3c_dev_request_ibi_locked (struct i3c_dev_desc *dev , const struct
       i3c_ibi_setup *req );

like, that's the whole signature, no notes πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • dev β€” the device we should enable IBIs for, bestie. that's the main character of this whole function ngl.
  • req β€” the setup requested for this IBI. it's giving "here's my whole plan" energy ✨

πŸ’– DESCRIPTION πŸ’–

okay so this function is literally responsible for pre-allocating all the resources you'll need to process IBIs coming from dev. it's doing the prep work so future-you doesn't have to 😭🫢

but listen β€” and this is the important part β€” when this function returns, the IBI is not enabled yet. it stays un-enabled until you call i3c_device_enable_ibi. so like... don't be out here acting surprised that nothing's firing yet, that's literally the deal, no cap πŸ”₯


⭐ CONTEXT ⭐

must be called with mutex_lock(dev->desc->ibi_lock) held. periodt. πŸ”’ like if you're not holding that lock, you're not doing this, that's the vibe check πŸ’€


🌈 RETURN 🌈

returns 0 in case of success, and a negative error core otherwise (yes, core β€” that's what it says, i'm just the messenger bestie πŸ˜­πŸ™ˆ β€” obviously it means error code, but we keep it 100% accurate here).


πŸ¦‹ SEE ALSO πŸ¦‹

the whole squad, and i mean the whole squad πŸ‘‘ β€” plus the kernel file ./drivers/i3c/master.c:


ngl that's a lot of friends but every single one of them earned their spot πŸ’…

and that's the page!! mwah 🫢 from ./drivers/i3c, dated October 2026 β€” go forth and lock your mutex, bestie πŸŒΈβœ¨πŸ¦‹

πŸ“¦ where this page comes from