scripts: generate_vif: cleanup edt loading
An explicit import of edtlib is not required when using
pickle.load() and creates a duplicate module object.
Also eliminate the check for the EDTError, as this exception cannot be
raised by pickle.load().
Signed-off-by: Keith Short <keithshort@google.com>
diff --git a/scripts/generate_usb_vif/generate_vif.py b/scripts/generate_usb_vif/generate_vif.py
index 6144ee9..2b181d3 100644
--- a/scripts/generate_usb_vif/generate_vif.py
+++ b/scripts/generate_usb_vif/generate_vif.py
@@ -7,6 +7,7 @@
EDT.pickle generated at build and generates a XML file containing USB VIF policies"""
import argparse
+import inspect
import os
import pickle
import sys
@@ -17,16 +18,14 @@
SCRIPTS_DIR = os.path.join(os.path.dirname(__file__), "..")
sys.path.insert(0, os.path.join(SCRIPTS_DIR, 'dts', 'python-devicetree', 'src'))
-from devicetree import edtlib
-
-
def main():
+ global edtlib
+
args = parse_args()
- try:
- with open(args.edt_pickle, 'rb') as f:
- edt = pickle.load(f)
- except edtlib.EDTError as err:
- sys.exit(f"devicetree error: {err}")
+ with open(args.edt_pickle, 'rb') as f:
+ edt = pickle.load(f)
+ edtlib = inspect.getmodule(edt)
+
xml_root = get_root()
add_elements_to_xml(xml_root, constants.VIF_SPEC_ELEMENTS)
add_element_to_xml(xml_root, constants.MODEL_PART_NUMBER, args.board)