Hendiadyoin1
b17f080dcc
Kernel/riscv: Use new DeviceTree helpers in PCI initializations
...
This also changes the PCI interface slightly to be a bit nicer to work
with.
2024-05-02 07:44:13 -06:00
Hendiadyoin1
e014296092
LibDeviceTree: Make DeviceTreeProperty::as_stream return a ValueStream
...
This new Stream class adds an interface to work in cell-sized chunks,
which is useful for parsing the data in a DeviceTreeProperty.
2024-05-02 07:44:13 -06:00
Hendiadyoin1
ffa9875fa6
LibDeviceTree: Fix stale pointers in phandle and parent handling
...
We need to set them after we've created the full tree, as otherwise the
HashMap containing the nodes may reallocate and invalidate the pointers.
2024-05-02 07:44:13 -06:00
Hediadyoin1
21a21c6a11
LibDeviceTree: Add a simple DeviceTree class
...
This makes it easier to work with device tree nodes and properties, then
writing simple state machines to parse the device tree.
This also makes the old slow traversal methods use the
DeviceTreeProperty helper class, and adds a simple test.
2024-02-24 16:43:44 -07:00