i3c_dev_enable_ibi_locked(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… i3c_dev_enable_ibi_locked(9) πŸ’…

okay so bestie, welcome to the Kernel API Manual, section 9 β€” this is the page for i3c_dev_enable_ibi_locked, and yes she's a locked-variant girlie, we'll get to that πŸŽ€


✨ NAME ✨

i3c_dev_enable_ibi_locked β€” turn on IBIs from one specific device, and you gotta be holding the lock already, no cap πŸ”’

πŸ¦‹ SYNOPSIS πŸ¦‹

int i3c_dev_enable_ibi_locked (struct i3c_dev_desc *dev );

🌸 ARGUMENTS 🌸

  • dev β€” the device on which IBIs should be enabled. that's the one, the main character of this call πŸ‘‘

πŸ’– DESCRIPTION πŸ’–

okay so here's the vibe: this function enables IBIs coming from a specific device, and then it waits for all pending IBIs to be processed before it dips. so it's not just flipping a switch and running away, it's actually sticking around to make sure the queue is handled. iconic behavior honestly 🫢

fr fr though, you should call this on a device where i3c_device_request_ibi has already succeeded. like, that's the prerequisite, don't skip it πŸ’€

⚠️ heads up bestie: IBIs from this device might be received before this function returns to its caller. so don't be shocked if stuff starts arriving while you're still inside the call β€” that's just how she is 😭

πŸ”₯ CONTEXT πŸ”₯

must be called with mutex_lock(dev->desc->ibi_lock) held. that's the whole reason for the _locked in her name, iykyk πŸ’…

⭐ RETURN ⭐

0 on success, or a negative error code on failure. simple as that bestie 🌈

πŸ‘‘ SEE ALSO πŸ‘‘

kernel file ./drivers/i3c/master.c, plus the whole friend group of related functions:


and that's the tea, bestie πŸ“ this page lives in ./drivers/i3c, stamped October 2026, and it's filed under i3c_dev_enable_ibi_locked(9) forever and ever. go hold that lock and slay πŸ’œπŸŽ€βœ¨

πŸ“¦ where this page comes from