sdw_nwrite(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’« sdw_nwrite β€” the kernel API manual, but make it make sense πŸ’«

okay so bestie, welcome to sdw_nwrite(9) from the Kernel API Manual β€” this is the one that writes "n" contiguous SDW Slave registers ✨


🌸 NAME 🌸

sdw_nwrite β€” write "n" contiguous SDW Slave registers πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

int sdw_nwrite (struct sdw_slave *slave , u32 addr , size_t count ,
const u8 *val );

like, that's the whole signature, no cap 🫢


πŸ¦‹ ARGUMENTS πŸ¦‹

  • slave β€” the SDW Slave, obviously πŸ’β€β™€οΈ
  • addr β€” the register address, as in where we're writing
  • count β€” length, aka how many of the things
  • val β€” the buffer holding the values you wanna write

✨ DESCRIPTION ✨

so here's the tea β˜• β€” this version of the function will take a PM reference to the slave device. literally grabbing that reference before it does anything else, periodt.

πŸ’€ fair warning bestie: if the message crosses a page boundary, each page will be transferred under a separate invocation of the msg_lock. not one big lock, not two pages for the price of one β€” separate invocations. that's just how it is πŸ™ˆ

🌈 SEE ALSO 🌈

all the sibling functions, iykyk 🧚 β€” and the kernel file you'll find them hanging out in:


okay that's the whole page, mwah πŸ’‹ β€” this iconic little number lives in ./drivers/soundwire, dated October 2026, and it's sdw_nwrite(9) forever and ever πŸŽ€πŸ’–β­

πŸ“¦ where this page comes from