omnia_mask_interleave(9)
π omnia_mask_interleave(9) β the kernel API glow-up π
okay bestie, welcome to the omnia_mask_interleave(9) page, aka the group chat where rising and falling finally learn to share the spotlight β¨
πΈ NAME πΈ
omnia_mask_interleave β literally interleaves the bytes from @rising and @falling, no cap π
π SYNOPSIS π
void omnia_mask_interleave (u8 *dst , unsigned long rising , unsigned long falling );
π¦ ARGUMENTS π¦
dstβ the destinationu8array that ends up holding all the interleaved bytes, it's giving output-array main character energy πrisingβ the rising mask, iconic π«Άfallingβ the falling mask, equally iconic π«Ά
β¨ DESCRIPTION β¨
Okay so here's the vibe: this function interleaves the little-endian bytes from the rising and falling words. That's it, that's the whole flex πββοΈ
So if rising = (r0, r1, r2, r3) and falling = (f0, f1, f2, f3), then the result is literally:
dst = (r0, f0, r1, f1, r2, f2, r3, f3)
one from rising, one from falling, alternating like the world's most organized friendship bracelet πβ¨
Why does anyone even want this?? So the MCU receives an interrupt mask and reports a pending interrupt bitmap in this interleaved format. The rationale is lowkey genius: the low-indexed bits are more important β in many cases the user will be interested only in interrupts with indexes 0 to 7 β so the system can stop reading after the first 2 bytes (r0, f0) to save time on the slow I2C bus. efficiency queen behavior, honestly β‘π
ok but bestie, the source says it itself: feel free to remove this function and its inverse,omnia_mask_deinterleave, and use an appropriatebitmap_*()function once such a function exists. so this whole thing is kinda a placeholder, iykyk π«£
π SEE ALSO π
- Kernel file
./drivers/platform/cznic/turris-omnia-mcu-gpio.c omnia_mask_deinterleave(9)
and that's the whole page, bestie!! this one comes straight from ./drivers/platform/cznic, dated October 2026, and it's the omnia_mask_interleave(9) manual page β slay, go interleave some bytes, periodt π
πβ¨
π¦ 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