STRUCT KEYBOARD_PROTOCOL(9)
π struct keyboard_protocol(9) π
hiii bestie!! welcome to the Kernel API Manual β todayβs main character is struct keyboard_protocol, and honestly itβs giving keyboard-message excellence π
β¨
πΈ NAME πΈ
struct keyboard_protocol β the keyboard message, periodt. This message has message.type = 0x0110 and message.length = 0x000a π
π¦ SYNOPSIS π¦
okay so hereβs the exact struct, bestie β no edits, no vibes-based changes, literally character for character:
struct keyboard_protocol {
u8 unknown1;
u8 modifiers;
u8 unknown2;
u8 keys_pressed[MAX_ROLLOVER];
u8 fn_pressed;
__le16 crc16;
};
π§ Members π§
okay letβs do the member-by-member vibe check π
unknown1β unknown. The mystery is literally part of the lore πmodifiersβ bit-set of modifier/control keys pressed ποΈunknown2β unknown. Another mystery box, bestie πkeys_pressedβ the (non-modifier) keys currently pressed β¨οΈfn_pressedβ whether thefnkey is currently pressed β¨crc16β thecrcover the whole message struct (message header + this struct) minus thiscrc16field π«Ά
π SEE ALSO π
go be nosy in these, bestie ππ
- Kernel file
./drivers/input/keyboard/applespi.c struct tp_finger(9)struct touchpad_protocol(9)struct command_protocol_tp_info(9)struct touchpad_info_protocol(9)struct command_protocol_mt_init(9)struct command_protocol_capsl(9)struct command_protocol_bl(9)struct message(9)struct spi_packet(9)
thatβs the whole page, bestie π
β¨ β with love from ./drivers/input/keyboard, October 2026 π«Ά
π¦ 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