STRUCT ACPI_DEVICE_SOFTWARE_NODES(9)
π struct acpi_device_software_nodes(9) β¨
okay so this one's from the Kernel API Manual, and honestly? it's giving "glow-up for ACPI devices" π because it's literally all about software nodes for an ACPI device. no cap, that's the whole vibe. let me walk you through it bestie π«Ά
πΈ NAME πΈ
struct acpi_device_software_nodes β Software nodes for an ACPI device β¨
π¦ SYNOPSIS π¦
here's the whole struct, verbatim, don't come for me about the formatting π
struct acpi_device_software_nodes {
struct property_entry dev_props[ACPI_DEVICE_SWNODE_DEV_NUM_ENTRIES];
struct software_node *nodes;
const struct software_node **nodeptrs;
struct acpi_device_software_node_port *ports;
unsigned int num_ports;
};
π Members π
π the fields, one by one π
dev_propsβ Device properties. that's it, that's the whole field, she's simple and she serves πnodesβ the software nodes for the root plus the ports and endpoints. like the whole family tree lowkey πnodeptrsβ an array of software node pointers, and it's the one you use for (un)registering them. very main character energy πportsβ all the info related to each port and endpoint within a port. yes, endpoints within a port, we contain multitudes π¦num_portsβ the number of ports. iconic, self-explanatory, we love her β
π§ SEE ALSO π§
- the kernel file
./include/acpi/acpi_bus.hβ struct π acpi_device_software_node_port(9)acpi_dev_uid_match(9)acpi_dev_hid_uid_match(9)for_each_acpi_consumer_dev(9)for_each_acpi_dev_match(9)
bestie reminder: those trailing (9) are part of the names, so don't go stripping them, iykyk π
and that's the whole page, fr fr π this one lives over in ./include/acpi, dated October 2026 β slay, go read the source, mwah πβ¨
π¦ 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