Devicetree DTS and YAML format improvements (#492)

* **DevicetreeCompiler**
  * Binding properties now support default values.
  * Compiler returns meaningful exit codes and reports errors more clearly.
  * Stronger validation of device configurations with unified error handling.
  * Added integration tests and a dedicated Devicetree test workflow.

* **Changes**
  * Platform binding schemas updated: some fields made required, others gained explicit defaults.
  * Many device-tree files simplified by removing unused/placeholder pin and transfer-size entries.

* **Documentation**
  * Removed several outdated TODO items.
This commit is contained in:
Ken Van Hoeylandt
2026-02-09 17:38:06 +01:00
committed by GitHub
parent d27404964a
commit 93efadd5e3
57 changed files with 257 additions and 283 deletions
@@ -1,4 +1,5 @@
import os
from .exception import DevicetreeException
def find_bindings(directory_path: str) -> list[str]:
yaml_files = []
@@ -14,6 +15,6 @@ def find_all_bindings(directory_paths: list[str]) -> list[str]:
for directory_path in directory_paths:
new_paths = find_bindings(directory_path)
if len(new_paths) == 0:
raise Exception(f"No bindings found in {directory_path}")
raise DevicetreeException(f"No bindings found in {directory_path}")
yaml_files += new_paths
return yaml_files