STRUCT SCMI_TRANSPORT_SUPPLIER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

okay so bestie, welcome to the Kernel API Manual page for struct scmi_...ort_supplier(9) β€” yes, that truncated-looking cutie is the title πŸ’…. The main character here is struct scmi_transport_supplier, and its whole vibe is Transport descriptor πŸŽ€.

✨ SYNOPSIS ✨

       struct scmi_transport_supplier {
           struct mutex mtx;
           struct device *available;
           const struct scmi_transport_handle th;
        };

πŸ‘‘ Members πŸ‘‘

  • mtx β€” a struct mutex that protects available, no cap. Literally β€œA mutex to protect available” energy πŸ”’.
  • available β€” a reference to an initialized transport device, when available. This reference is implicitly used to track the status of the supplier, and it can cycle through the following 3 states: πŸ’«
    1. NOT_READY - PTR_ERR(-EPROBE_DEFER): no supplier available; this is the transport initial state.
    2. AVAILABLE - <supplier_dev>: a transport supplier has been initialized and it is available, ready to use.
    3. BUSY _ PTR_ERR(-EBUSY): transport supplier is currently in use.
  • th β€” an embedded transport handle object that embeds the helpers implementing the above mentioned logic 🧚.

πŸ’– Description πŸ’–

🚨 Note that this transport driver enforces single instance probing β€” periodt.

🌈 SEE ALSO 🌈

Kernel file ./drivers/firmware/arm_scmi/common.h, plus these iconic little references:


and that’s the whole page, bestie πŸ’– source: ./drivers/firmware/arm_scmi; page/version: struct scmi_...ort_supplier(9); date: October 2026 πŸŽ€βœ¨

πŸ“¦ where this page comes from