From c8252422b8b3a2a293fb3be039eec6f87b30b467 Mon Sep 17 00:00:00 2001 From: Krutarth Patel Date: Sat, 15 Feb 2025 03:05:01 +0000 Subject: [PATCH] Adding device node tree image to Haiku documentation In the device driver architecture documentation there is a TODO for adding an image representation of the device node tree in Haiku. This patch adds a .svg image for the same, removing the TODO line. Change-Id: If5d1e3ee5abe7d6e84245c837b5cb2f1f0cb670a Reviewed-on: https://review.haiku-os.org/c/haiku/+/8983 Tested-by: Commit checker robot Haiku-Format: Haiku-format Bot Reviewed-by: nephele nephele --- .../kernel/device_manager_introduction.rst | 3 +- docs/develop/kernel/device_tree.svg | 121 ++++++++++++++++++ 2 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 docs/develop/kernel/device_tree.svg diff --git a/docs/develop/kernel/device_manager_introduction.rst b/docs/develop/kernel/device_manager_introduction.rst index 93128aff2c..6dcbb6166c 100644 --- a/docs/develop/kernel/device_manager_introduction.rst +++ b/docs/develop/kernel/device_manager_introduction.rst @@ -23,7 +23,8 @@ Structurally, a *device_node* is a set of a module, attributes, and resources, as well as a parent and children. At a minimum, a node must have a module, all other components are optional. -TODO: picture of the device node tree +.. image:: device_tree.svg + :width: 800 When the system starts, there is only a root node registered. Only primary hardware busses register with the root node, such as PCI, and diff --git a/docs/develop/kernel/device_tree.svg b/docs/develop/kernel/device_tree.svg new file mode 100644 index 0000000000..f939a885d5 --- /dev/null +++ b/docs/develop/kernel/device_tree.svg @@ -0,0 +1,121 @@ + + +Device Root + + + + + + + +ACPI Root + + + + + + + +¹PCI Host + + + +Controller + + + +Generic + + + +Random + + + +ISA + + + + + + + + + + + +PCI Bus + + + +²PCI device 1 + + + +PCI device 2 + + + + + + + +PCI device 3 + + + +³Driver child + + + +node + + + +UHCI-PCI + + + +Bridge + + + +UHCI + + + +Controller + + + +UHCI device 1 + + + +UHCI device 2 + + + +¹PCI Host controller may be a child of ACPI root if the detection + + + +mechanism is ACPI instead of Legacy BIOS. Take a look at "busses/pci" for more details. + + + + + + + +B_DEVICE_FIXED_CHILD + + + +²This device is exposed by the PCI bus. + + + +³Your driver registers this node. + +