rio_register_scan(9)
π rio_register_scan(9) β Kernel API Manual π
Okay bestie, welcome to the Kernel API Manual page for rio_register_scan(9). This is the enumeration/discovery method registration interface, and it's giving βlet me introduce your fabric scan routine to the right mportβ energy. Iconic.
π NAME π
rio_register_scan β the enumeration/discovery method registration interface. No cap, that's the whole name-vibe: you're registering how discovery gets done, and that's main character energy.
β¨ SYNOPSIS β¨
int rio_register_scan (int mport_id , struct rio_scan *scan_ops );
π ARGUMENTS π
mport_idβ the mport device ID for which the fabric scan routine has to be set. Special bestie alert:RIO_MPORT_ANY= set for all available mports.scan_opsβ the enumeration/discovery operations structure. Literally the ops struct you're handing over.
πΈ DESCRIPTION πΈ
So what does it do? It registers enumeration/discovery operations with the RapidIO subsystem and attaches them to the specified mport device. If you passed RIO_MPORT_ANY, it attaches to all available mports instead. Slay, fr fr.
Vibe check: it returns an error if the mport already has an enumerator attached to it. No double-dipping, bestie β that mport is taken.
Plot twist: in the RIO_MPORT_ANY case, it skips mports with valid scan routines, and that skip is not an error. Lowkey polite, highkey convenient. Periodt.
π₯ SEE ALSO π₯
Kernel file ./drivers/rapidio/rio.c β and the whole RapidIO extended universe, iykyk:
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_unlock_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_mport_scan(9)
Source/version vibe: ./drivers/rapidio; date stamp: October 2026; page title: rio_register_scan(9). Stay fabulous, kernel 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