scmi_transport_supplier_put(9)
π
scmi_transport_supplier_put(9) β a Kernel API manual page bestie π
okay so bestie, welcome to the scmi_transport_supplier_put(9) page, straight outta the Kernel API Manual β¨ grab a lil snack, we're learning how to dispose of a supplier π«Ά
πΈ NAME πΈ
scmi_transport_supplier_put β a lil helper whose entire job is to dispose of a supplier π
lowkey iconic of it
β¨ SYNOPSIS β¨
int scmi_transport_supplier_put (const struct scmi_transport_handle *th
, struct device *supplier );
that's it, that's the whole vibe check π₯
π ARGUMENTS π
thβ a reference to the transport handle you wanna use. no drama, just vibes β¨supplierβ a reference to the device supplier you're managing. and listen, this one is strict: it cannot beNULLorERR_PTR. like, it literally cannot π don't try it.
π¦ DESCRIPTION π¦
okay so here's the tea π: putting a supplier does different things depending on the current state of scmi_transport_supplier.available, and honestly? it's giving state machine realness π
NOT_READY/BUSYβ the supplier gets set as the new available device. yes queen, this is your moment: you can use this to make available a supplier OR to stop using one. dual purpose icon πAVAILABLEβ if the supplier you're disposing of matches the one currently available, we roll back to theNOT_READYstate. and any other attempt to override an available supplier with a new one? rejected π which effectively enforces one single supplier. one supplier only, no cap, periodt π
β RETURN β
0 on Success, errno otherwise. simple as that bestie π
π₯ SEE ALSO π₯
go check out the kernel file ./drivers/firmware/arm_scmi/common.h and these absolute legends, iykyk:
pack_scmi_header(9)unpack_scmi_header(9)struct scmi_chan_info(9)struct scmi_transport_ops(9)struct scmi_desc(9)struct scmi_debug_info(9)struct scmi_shmem_io_ops(9)struct scmi_shared_mem_operations(9)struct scmi_message_operations(9)struct scmi_transport_core_operations(9)struct scmi_transport_handle(9)struct scmi_transport(9)struct scmi_transport_supplier(9)scmi_transport_supplier_get(9)
and that's the whole page bestie, you ate that π«Ά this one lives in ./drivers/firmware/arm_scmi, dated October 2026, and it's the scmi_transport_supplier_put(9) page β go forth and dispose of your suppliers responsibly π§π
π¦ 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