rio_unlock_device(9)
π rio_unlock_device(9) β the Kernel API Manual glow-up β¨
okay so bestie, we're in the Kernel API Manual today and the star of the show is rio_unlock_device(9). it's the unlock half of the lock/unlock duo, and honestly? she's giving "I just freed the device, you're welcome" energy. π
πΈ NAME πΈ
rio_unlock_device β releases the host device lock for a specified device. that's it, that's the whole job, and she does it with grace π
π¦ SYNOPSIS π¦
int rio_unlock_device (struct rio_mport *port , u16 destid , u8 hopcount
);
like, three args, one int back. no cap, it's that simple β¨
π ARGUMENTS π
portβ the master port that's gonna send the transaction π«Άdestidβ the Destination ID for the device/switch you're unlocking, iykykhopcountβ the hopcount it takes to reach the switch π§
π DESCRIPTION π
here's the tea: it returns 0 if the device lock got released, or EINVAL if it fails. that's literally the whole vibe check π no extra lore, no secret side quests β success or EINVAL, pick your fighter π₯
π SEE ALSO π
the whole rapidio squad, assembled, and yes they're all (9) pages because we roll with the kernel crowd π
the kernel file lives at ./drivers/rapidio/rio.c and it's also hanging out with:
rio_local_get_device_id(9)rio_query_mport(9)rio_alloc_net(9)rio_local_set_device_id(9)rio_add_device(9)rio_request_inb_mbox(9)rio_release_inb_mbox(9)rio_request_outb_mbox(9)rio_release_outb_mbox(9)rio_setup_inb_dbell(9)rio_request_inb_dbell(9)rio_release_inb_dbell(9)rio_request_outb_dbell(9)rio_release_outb_dbell(9)rio_add_mport_pw_handler(9)rio_del_mport_pw_handler(9)rio_request_inb_pwrite(9)rio_release_inb_pwrite(9)rio_pw_enable(9)rio_map_inb_region(9)rio_unmap_inb_region(9)rio_map_outb_region(9)rio_unmap_outb_region(9)rio_mport_get_physefb(9)rio_get_comptag(9)rio_set_port_lockout(9)rio_enable_rx_tx_port(9)rio_chk_dev_route(9)rio_mport_chk_dev_access(9)rio_chk_dev_access(9)rio_get_input_status(9)rio_clr_err_stopped(9)rio_inb_pwrite_handler(9)rio_mport_get_efb(9)rio_mport_get_feature(9)rio_std_route_add_entry(9)rio_std_route_get_entry(9)rio_std_route_clr_table(9)rio_lock_device(9)rio_route_add_entry(9)rio_route_get_entry(9)rio_route_clr_table(9)rio_request_mport_dma(9)rio_release_dma(9)rio_dma_prep_xfer(9)rio_register_scan(9)rio_mport_scan(9)
(and yes, rio_lock_device(9) is right there in the list β she's the twin, they come as a set π)
ngl if you're ever lost, just remember: lock it before you unlock it. main character behaviour only π₯
and that's the page! shipped from ./drivers/rapidio, dated October 2026 β mwah, go unlock something iconic bestie πβ¨π
π¦ 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