store_wakeup_protocols(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ store_wakeup_protocols(9) ✨

okay so bestie, welcome to the Kernel API Manual entry for store_wakeup_protocols β€” literally the glow-up button for your remote control's wakeup IR protocol(s) πŸ’…


πŸŽ€ NAME πŸŽ€

store_wakeup_protocols β€” changes the wakeup IR protocol(s). that's it. that's the whole vibe. πŸ”₯


πŸ¦‹ SYNOPSIS πŸ¦‹

ssize_t store_wakeup_protocols (struct device *device , struct
device_attribute *mattr , const char *buf , size_t len );

🌸 ARGUMENTS 🌸

  • device β€” the device descriptor 🫢 like, the actual device we're talking about here
  • mattr β€” the device attribute struct
  • buf β€” a pointer to the input buffer, i.e. where the new protocol info is chilling
  • len β€” length of the input buffer (how many bytes we're working with, no cap)

πŸ’– DESCRIPTION πŸ’–

so this routine is for changing the IR protocol type. it's triggered by writing to /sys/class/rc/rc?/wakeup_protocols β€” yep, that's the magic little path, write to it and this function wakes up and does its thing ✨

returns len on success, or a negative error code if it's giving flop energy 😭

dev->lock is taken to guard against races between store_wakeup_protocols and show_wakeup_protocols β€” like, they can't both be main characters at the exact same time, the lock keeps it cute and orderly πŸ”’πŸ‘‘


πŸ‘‘ SEE ALSO πŸ‘‘

kernel file ./drivers/media/rc/rc-main.c, plus the whole friend group:


okay that's the whole page, go be iconic with your IR protocols πŸ§šπŸ’œ

sign-off szn: this one lives in ./drivers/media/rc, dated October 2026, and it's filed under store_wakeup_protocols(9) β€” slay, periodt πŸŽ€πŸŒˆβ­

πŸ“¦ where this page comes from