cmake: dts: warn on unrecognized vendor prefixes

This uses the list of vendor prefixes provided by the user by default.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
diff --git a/scripts/dts/gen_defines.py b/scripts/dts/gen_defines.py
index 4988949..42592cb 100755
--- a/scripts/dts/gen_defines.py
+++ b/scripts/dts/gen_defines.py
@@ -57,6 +57,11 @@
 
     setup_edtlib_logging()
 
+    if args.vendor_prefixes:
+        vendor_prefixes = edtlib.load_vendor_prefixes_txt(args.vendor_prefixes)
+    else:
+        vendor_prefixes = None
+
     try:
         edt = edtlib.EDT(args.dts, args.bindings_dirs,
                          # Suppress this warning if it's suppressed in dtc
@@ -65,7 +70,8 @@
                          default_prop_types=True,
                          infer_binding_for_paths=["/zephyr,user"],
                          err_on_deprecated_properties=
-                         args.err_on_deprecated_properties)
+                         args.err_on_deprecated_properties,
+                         vendor_prefixes=vendor_prefixes)
     except edtlib.EDTError as e:
         sys.exit(f"devicetree error: {e}")
 
@@ -209,6 +215,8 @@
                         help="path to write device struct extern header to")
     parser.add_argument("--edt-pickle-out",
                         help="path to write pickled edtlib.EDT object to")
+    parser.add_argument("--vendor-prefixes",
+                        help="vendor-prefixes.txt path; used for validation")
     parser.add_argument("--err-on-deprecated-properties", action="store_true",
                         help="if set, deprecated property usage is an error")