STRUCT SCMI_ITERATOR_STATE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct scmi_iterator_state πŸ’–

okay so bestie, welcome to the Kernel API Manual, section 9 β€” yes, the (9) is right there in the title, iykyk. This page is all about the iterator current state descriptor, and ngl it is giving β€œsmall struct, big main character energy.” 🌟

✨ NAME ✨

struct scmi_iterator_state β€” iterator current state descriptor. periodt. πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

       struct scmi_iterator_state {
           unsigned int desc_index;
           unsigned int num_returned;
           unsigned int num_remaining;
           unsigned int max_resources;
           unsigned int loop_idx;
           size_t rx_len;
           void *priv;
        };

πŸŽ€ Members πŸŽ€

  • desc_index β€” starting index for the current multi-part request. like, this is where the current request kicks off, bestie. 🎯
  • num_returned β€” number of returned items in the last multi-part reply. count ’em. πŸ”’
  • num_remaining β€” number of remaining items in the multi-part message. the leftovers, basically. πŸ“
  • max_resources β€” maximum acceptable number of items, configured by the caller depending on the underlying resources that it is querying. so the caller sets the cap based on what resources are actually in play. πŸ‘‘
  • loop_idx β€” the iterator loop index in the current multi-part reply. yes, the loop index β€” iconic. πŸ”
  • rx_len β€” size in bytes of the currently processed message; it can be used by the user of the iterator to verify a reply size. so yeah, reply-size verification is right there. πŸ“
  • priv β€” optional pointer to some additional state-related private data setup by the caller during the iterations. optional, so no pressure. 🫢

🌈 SEE ALSO 🌈

Kernel file ./drivers/firmware/arm_scmi/protocols.h has the struct, and the whole squad is:

  • struct scmi_msg_resp_prot_version(9)
  • struct scmi_msg(9)
  • struct scmi_msg_hdr(9)
  • struct scmi_xfer(9)
  • struct scmi_protocol_handle(9)
  • struct scmi_iterator_ops(9)
  • struct scmi_proto_helpers_ops(9)
  • struct scmi_xfer_ops(9)
  • struct scmi_protocol(9)
πŸ“ source/version + date sign-off: pulled from ./drivers/firmware/arm_scmi, dated October 2026, and the page is literally struct scmi_iterator_state(9). mwah, go read the header bestie πŸ’‹
πŸ“¦ where this page comes from