icc_link_nodes(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay bestie, welcome to the Kernel API Manual β€” this one's a lil function called icc_link_nodes, and honestly? it's giving matchmaker energy. let's get into it ✨


πŸŽ€ NAME πŸŽ€

icc_link_nodes β€” create link between two nodes


✨ SYNOPSIS ✨

int icc_link_nodes (struct icc_node *src_node , struct icc_node **dst_node );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • src_node β€” the source node. the one doing the reaching out, fr fr 🫢
  • dst_node β€” the destination node. lowkey might not even exist yet (more on that below πŸ‘€)

🌸 DESCRIPTION 🌸

So the whole vibe here is: you're creating a link between two nodes. that's it, that's the job πŸ’…

But here's the plot twist β€” the nodes might belong to different interconnect providers, and dst_node might not actually exist yet (like, the provider driver hasn't probed yet, no biggie). So the move is: just create the dst_node anyway and chill. then when the actual provider driver does get probed, the rest of the node data gets filled in. main character energy from dst_node honestly, showing up before the data does 😭 πŸ‘‘


⭐ RETURN ⭐

0 on success, or an error code otherwise. simple as that. no cap 🧚


πŸ”₯ SEE ALSO πŸ”₯

Kernel file ./drivers/interconnect/core.c plus all these icons:

of_icc_get_from_provider(9), of_icc_get_by_index(9), of_icc_get(9), icc_get(9), icc_set_tag(9), icc_get_name(9), icc_set_bw(9), icc_put(9), icc_node_create_dyn(9), icc_node_create(9), icc_node_destroy(9), icc_node_set_name(9), icc_link_create(9), icc_node_add(9), icc_node_del(9), icc_nodes_remove(9), icc_provider_init(9), icc_provider_register(9), icc_provider_deregister(9)


ok that's the whole page bestie, go link some nodes, you got this πŸ’–

./drivers/interconnect 🌈 October 2026 🌈 β€” mwah, that's the source, the date, and the whole entire manual page. slay. periodt. πŸ’…βœ¨

πŸ“¦ where this page comes from