rmi_set_page(9)
β¨ rmi_set_page(9) β¨
okay so bestie, welcome to the kernel API manual π this one's a little function with a big job β let's get into it π«Ά
π NAME π
rmi_set_page β set the RMI page, that's literally it, that's the whole vibe π
β¨ SYNOPSIS β¨
int rmi_set_page (struct hid_device *hdev , u8 page );
πΈ ARGUMENTS πΈ
hdevβ the pointer to thehid_devicestruct π you know, the usual suspectpageβ the new page address, i.e. where we're headed π¦
π DESCRIPTION π
okay so here's the situation ngl π RMI devices have 16-bit addressing, but some of the physical implementations (like SMBus) only have 8-bit addressing. tragic, I know π
so RMI implements a page address at 0xff of every page, so we can reliably page addresses every 256 registers β¨ like, that's the whole trick, and it ate π₯
β οΈ bestie listen to me: the page_mutex lock must be held when this function is entered. no cap, don't skip this π
Returns zero on success, non-zero on failure π (iconic return value behaviour, honestly)
π¦ SEE ALSO π¦
- Kernel file
./drivers/hid/hid-rmi.c struct rmi_data(9)
π the cute sign-off π
this little page lives over in ./drivers/hid, dated October 2026, and it's part of the Kernel API Manual β periodt π go forth and page responsibly, bestie π§β
rmi_set_page(9) β¦ rmi_set_page(9) β yes it says it twice, it's giving symmetry π
π¦ 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