iosf_mbi_bl...t_i2c_access(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… iosf_mbi_block_punit_i2c_access(9) β€” from the Kernel API Manual, bestie ✨

okay so real talk, this one is a function from the Kernel API Manual and it's literally the bouncer for a shared bus. let's get into it 🫢


✨ NAME ✨

iosf_mbi_block_punit_i2c_access β€” blocks P-Unit accesses to the PMIC bus, no cap 🚫🚌


🌸 SYNOPSIS 🌸

int iosf_mbi_block_punit_i2c_access (void );

πŸŽ€ ARGUMENTS πŸŽ€

  • void β€” no arguments. nothing. zero. empty set. she takes nothing and she delivers πŸ’…

πŸ¦‹ DESCRIPTION πŸ¦‹

call this function to block P-Unit access to the PMIC I2C bus, so that the kernel can safely access the PMIC over the shared I2C bus. it's giving "excuse me, we need the room" energy πŸ™ˆ

this function acquires the P-Unit bus semaphore and notifies pmic_bus_access_notifier listeners that they may no longer access the P-Unit in a way which may cause it to access the shared I2C bus. so it's like, two things at once β€” semaphore acquired, besties notified. iconic. πŸ‘‘

note this function may be called multiple times and the bus will not be released until iosf_mbi_unblock_punit_i2c_access has been called the same amount of times. so like, it's counting. keep track fr fr πŸ”₯

⭐ RETURN ⭐

nonzero on error 😭 β€” so 0 means you're chilling, anything else means something went sideways.


🌈 SEE ALSO 🌈

kernel file ./arch/x86/include/asm/iosf_mbi.h and its whole friend group:


that's the whole vibe bestie πŸ§šπŸ’– this one lives in ./arch/x86/include/asm and the page is dated October 2026 β€” go read the header file, iykyk πŸ’œ

mwah πŸ’‹ slay safely out there, and remember: every block needs its unblock 🫢✨
πŸ“¦ where this page comes from