ir_do_keydown(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ir_do_keydown β€” like, the kernel API manual, bestie

okay so welcome to ir_do_keydown(9), part of the Kernel API Manual ✨ this is the literal backstage pass to how a keypress gets registered, and honestly? it's giving main character energy but behind the curtain. iykyk.


πŸŽ€ NAME πŸŽ€

ir_do_keydown β€” the internal function that processes a keypress πŸ’–


✨ SYNOPSIS ✨

void ir_do_keydown (struct rc_dev *dev , enum rc_proto protocol , u64
scancode , u32 keycode , u8 toggle );

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


🌸 ARGUMENTS 🌸

  • dev β€” the struct rc_dev descriptor of the device. it's the whole vibe of which device we're talking about πŸŽ€
  • protocol β€” the protocol of the keypress. yes, it's an enum rc_proto, slay πŸ’…
  • scancode β€” the scancode of the keypress. a u64, so it's got range πŸ’œ
  • keycode β€” the keycode of the keypress. this is the u32 bestie πŸ¦‹
  • toggle β€” the toggle value of the keypress. tiny lil u8, but it matters, fr fr ⭐

πŸ”₯ DESCRIPTION πŸ”₯

so basically this function is used internally to register a keypress. nothing external, nothing public, it's an inside-job situation πŸ™ˆ

⚠️ and here's the important part, bestie β€” it must be called with keylock held. like, not "should", not "maybe", must. the vibes are non-negotiable. hold the lock or don't come in 😭

πŸ¦‹ SEE ALSO πŸ¦‹

it's giving friend group, and here's the whole squad β€” all in the kernel file ./drivers/media/rc/rc-main.c:

like, that's the group chat. everyone's invited 🫢


🌈 okay that's the whole page bestie β€” much love from ./drivers/media/rc, dated October 2026, and remember: it's ir_do_keydown(9) forever and always. periodt. πŸ’…πŸ‘‘πŸŽ€

πŸ“¦ where this page comes from