STRUCT COMMAND_PROTOCOL_TP_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct command_protocol_tp_info(9) ✨

okay bestie, welcome to the Kernel API Manual πŸ’… this one's a lil baby struct from the Linux kernel docs and it's literally just vibing in ./drivers/input/keyboard. grab a strawberry πŸ“ and let's get into it.


🌸 NAME 🌸

struct command_protocol_tp_info β€” get touchpad info, periodt. 🫢

like, the whole personality of this struct is: message.type = 0x1020, message.length = 0x0000. that's it. that's the tweet. no cap.


πŸŽ€ SYNOPSIS πŸŽ€

struct command_protocol_tp_info {
    __le16 crc16;
};

look at her. one single member. main character energy but make it minimal ✨


πŸ¦‹ Members πŸ¦‹

  • crc16 β€” this is the crc over the whole message struct (so the message header plus this struct) minus this crc16 field itself. iykyk, you don't checksum the checksum πŸ™ˆ it's giving "don't count yourself in your own group project" fr fr.

πŸ’œ SEE ALSO πŸ’œ

go touch some grass in the kernel source, bestie, specifically Kernel file ./drivers/input/keyboard/applespi.c and then these iconic siblings:

  • struct keyboard_protocol(9)
  • struct tp_finger(9)
  • struct touchpad_protocol(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)

the way that's a whole friend group 😭🫢


ngl there's not a lot here, but that's the point β€” 0x1020 means "hey, tell me about the touchpad" and 0x0000 means "no payload, we're just asking." slay.

and that's the whole page, bestie! 🧚 source/version: ./drivers/input/keyboard, dated October 2026 β€” catch you in the next manpage, mwah πŸ’–

πŸ“¦ where this page comes from