iosf_mbi_read(9)
π iosf_mbi_read β MailBox Interface read command
okay so bestie, welcome to the Kernel API Manual (section 9, very demure, very kernel) π this one's all about iosf_mbi_read, the little function that goes and reads stuff over the MailBox Interface. yes it's giving "grab the data, no drama". let's get into it π
β¨ SYNOPSIS β¨
int iosf_mbi_read (u8 port , u8 opcode , u32 offset , u32 *mdr );
that's the whole vibe, literally one line π
πΈ ARGUMENTS πΈ
portβ the port, aka which subunit we're poking at rn π«Ά this is the "where am I" of it allopcodeβ a port-specific read or write opcode. yes, port-specific, so don't be out here assuming a universal one, iykyk πoffsetβ the register address offset. this is the exact spot in the register we're looking at βmdrβ the register data that's gonna get read into this. it's au32 *, so it's a pointer, so be normal about it π
π¦ DESCRIPTION π¦
so like, the big thing here: locking is handled by spinlock β which means it cannot sleep. NOT even a little. not a nap, not a lil blink. don't you dare call this from a context where sleeping is allowed, because the spinlock said no π that's the entire description bestie, it's short but it ate π₯
fr fr, "cannot sleep" is the whole personality of this function β treat it with main character respect π
π RETURN π
Nonzero on error β¨ so like, if it's nonzero, something went sideways, and zero means we're slaying π
π§ SEE ALSO π§
Kernel file ./arch/x86/include/asm/iosf_mbi.h β go read it, it's right there, no cap π
iosf_mbi_write(9)iosf_mbi_modify(9)iosf_mbi_punit_acquire(9)iosf_mbi_punit_release(9)iosf_mbi_block_punit_i2c_access(9)iosf_mbi_register_pmic_bus_access_notifier(9)iosf_mbi_unregister_pmic_bus_access_notifier_unlocked(9)iosf_mbi_assert_punit_acquired(9)
the whole little iosf_mbi friend group, obsessed with them honestly π«Άβ¨
and that's the page, bestie π sourced straight from ./arch/x86/include/asm, dated October 2026 β mwah, go read some registers responsibly, ily ππΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms