STRUCT TGT_DEV_SAS_SATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

Okay bestie, welcome to the struct tgt_dev_sas_sata(9) page in the Kernel API Manual. This struct is your SAS/SATA device-specific info stash, cached from data the firmware gave over. Very β€œthe firmware said it, so we keep it” energy. πŸ’…

✨ SYNOPSIS ✨

Here’s the exact shape, no cap β€” do not freestyle the fields:

       struct tgt_dev_sas_sata {
           u64 sas_address;
           u64 sas_address_parent;
           u16 dev_info;
           u8 phy_id;
           u8 attached_phy_id;
           u8 negotiated_link_rate;
           u8 sas_transport_attached;
           u8 pend_sas_rphy_add;
           struct mpi3mr_hba_port *hba_port;
           struct sas_rphy *rphy;
        };

🫢 Members 🫢

Let’s go member by member, because every field is literally doing a job:

  • sas_address β€” the world wide unique SAS address. Iconic identifier behavior.
  • sas_address_parent β€” the Sas address of the parent expander or host. Family tree vibes.
  • dev_info β€” the device information bits. Tiny but important.
  • phy_id β€” the phy identifier provided in device page 0.
  • attached_phy_id β€” the attached phy identifier provided in device page 0.
  • negotiated_link_rate β€” the negotiated link rate from device page 0.
  • sas_transport_attached β€” tells you: is this device exposed to transport? Important question, honestly.
  • pend_sas_rphy_add β€” a flag to check whether the device is in the process of add.
  • hba_port β€” the HBA port entry. The main character port energy.
  • rphy β€” the SAS transport layer rphy object. Slay.

🌈 SEE ALSO 🌈

Kernel file: ./drivers/scsi/mpi3mr/mpi3mr.h β€” and then the whole squad of related pages:

  • struct mpi3mr_nvme_pt_sge(9)
  • struct mpi3mr_buf_map(9)
  • struct mpi3mr_compimg_ver(9)
  • struct segments(9)
  • struct op_req_qinfo(9)
  • struct op_reply_qinfo(9)
  • struct mpi3mr_intr_info(9)
  • struct mpi3mr_throttle_group_info(9)
  • struct mpi3mr_hba_port(9)
  • struct mpi3mr_sas_port(9)
  • struct mpi3mr_sas_phy(9)
  • struct mpi3mr_sas_node(9)
  • struct mpi3mr_enclosure_node(9)
  • struct tgt_dev_pcie(9)
  • struct tgt_dev_vd(9)
  • union _form_spec_inf(9)
  • struct mpi3mr_tgt_dev(9)
  • mpi3mr_tgtdev_get(9)
  • mpi3mr_free_tgtdev(9)
  • mpi3mr_tgtdev_put(9)
  • struct mpi3mr_stgt_priv_data(9)
  • struct mpi3mr_drv_cmd(9)
  • union mpi3mr_trigger_data(9)
  • struct trigger_event_data(9)
  • struct diag_buffer_desc(9)
  • struct dma_memory_desc(9)
  • struct chain_element(9)
  • struct scmd_priv(9)
  • struct mpi3mr_ioc(9)
  • struct mpi3mr_fwevt(9)
  • struct delayed_dev_rmhs_node(9)
  • struct delayed_evt_ack_node(9)

From ./drivers/scsi/mpi3mr, October 2026 β€” page struct tgt_dev_sas_sata(9). Byeee, go read the kernel docs bestie πŸ’…βœ¨

πŸ“¦ where this page comes from