mpi3mr_repo...as_transport(9)
π mpi3mr_repo...as_transport(9) π
okay bestie, welcome to the Kernel API Manual page for mpi3mr_repo...as_transport(9) β yes the truncated name is giving chaos but we move π
it's the kernel API world, we don't question the naming, we just vibe.
β¨ NAME β¨
mpi3mr_report_tgtdev_to_sas_transport β the function that literally exposes your dev to the SAS TL. main character behaviour fr fr π
π¦ SYNOPSIS π¦
int mpi3mr_report_tgtdev_to_sas_transport (struct mpi3mr_ioc *mrioc ,
struct mpi3mr_tgt_dev *tgtdev );
that's the whole signature, no cap β¨
π ARGUMENTS π
mriocβ the adapter instance reference πtgtdevβ the target device π
both of them? iconic. both required? also yes π
πΈ DESCRIPTION πΈ
so what does this function actually do? it exposes the target device to SAS transport β but not before doing its little prep ritual β¨ it sets up host_phy, gets the link rate sorted etc. etc., and then shows the device off to SAS TL. it's giving getting-ready-with-the-girls energy, but for phy setup π
host_phy prepared β link rate set β target device exposed β β slay.
π₯ RETURN π₯
0on success π«Ά- non-zero for failure π
like every good upstanding kernel function. ground rules periodt.
π SEE ALSO π
the kernel file itself lives at ./drivers/scsi/mpi3mr/mpi3mr_transport.c β go read the source babes π
and here's the whole friend group, all 52 of them, no skips, no cap:
mpi3mr_post_transport_req(9)mpi3mr_report_manufacture(9)__mpi3mr_expander_find_by_handle(9)mpi3mr_is_expander_device(9)mpi3mr_get_sas_address(9)__mpi3mr_get_tgtdev_by_addr(9)mpi3mr_get_tgtdev_by_addr(9)mpi3mr_remove_device_by_sas_address(9)__mpi3mr_get_tgtdev_by_addr_and_rphy(9)mpi3mr_expander_find_by_sas_address(9)__mpi3mr_sas_node_find_by_sas_address(9)mpi3mr_parent_present(9)mpi3mr_convert_phy_link_rate(9)mpi3mr_delete_sas_phy(9)mpi3mr_add_sas_phy(9)mpi3mr_add_phy_to_an_existing_port(9)mpi3mr_delete_sas_port(9)mpi3mr_del_phy_from_an_existing_port(9)mpi3mr_sas_port_sanity_check(9)mpi3mr_set_identify(9)mpi3mr_add_host_phy(9)mpi3mr_add_expander_phy(9)mpi3mr_alloc_hba_port(9)mpi3mr_get_hba_port_by_id(9)mpi3mr_update_links(9)mpi3mr_sas_host_refresh(9)mpi3mr_sas_host_add(9)mpi3mr_sas_port_add(9)mpi3mr_sas_port_remove(9)struct host_port(9)mpi3mr_update_mr_sas_port(9)mpi3mr_refresh_sas_ports(9)mpi3mr_refresh_expanders(9)mpi3mr_expander_node_add(9)mpi3mr_expander_add(9)mpi3mr_expander_node_remove(9)mpi3mr_expander_remove(9)mpi3mr_get_sas_negotiated_logical_linkrate(9)mpi3mr_remove_tgtdev_from_sas_transport(9)mpi3mr_get_port_id_by_sas_phy(9)mpi3mr_get_port_id_by_rphy(9)mpi3mr_get_expander_phy_error_log(9)mpi3mr_transport_get_linkerrors(9)mpi3mr_transport_get_enclosure_identifier(9)mpi3mr_transport_get_bay_identifier(9)mpi3mr_expander_phy_control(9)mpi3mr_transport_phy_reset(9)mpi3mr_transport_phy_enable(9)mpi3mr_transport_phy_speed(9)mpi3mr_map_smp_buffer(9)mpi3mr_unmap_smp_buffer(9)mpi3mr_transport_smp_handler(9)
ngl that's a long list but every single one is here, bestie β I counted, and I would not do you dirty like that π
and that's the whole page!! π§ thanks for reading, mwah π
cute little sign-off: this one's sourced from ./drivers/scsi/mpi3mr and it's dated October 2026 β so yeah, living in the future a lil bit β bye bestie, go expose some target devices to SAS TL, iykyk π
π¦ 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