mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-08-03 20:05:24 +00:00
Even though it is about to be done for sound technical reasons, a subsequent patch adding access to all device nodes at the last minute in the 2.3 release is going to be playing a bit of a fast one on the Zephyr community, especially users of DT_INST APIs. In particular, instance numbers are currently allocated only to enabled nodes, but that will not be true soon: *every* node of a compatible will be allocated an instance number, even disabled ones. This is especially unfortunate for drivers and applications that expect singletons of their compatibles, and use DT_INST(0, ...) to mean "the one enabled instance of my compatible". To avoid gratuitous breakage, let's prepare for that by sorting each edt.compat2nodes sub-list so that enabled instances always come before disabled ones. This doesn't break any API guarantees, because there basically *are* no ordering guarantees, in part precisely to give us the flexibility to do things like this. And it does help patterns that use instances 0 through N-1, including the important singleton case. Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no> |
||
---|---|---|
.. | ||
test-bindings | ||
test-bindings-2 | ||
dtlib.py | ||
edtlib.py | ||
gen_defines.py | ||
gen_legacy_defines.py | ||
grutils.py | ||
test-multidir.dts | ||
test.dts | ||
testdtlib.py | ||
testedtlib.py |