dtoc: Avoid unwanted output during tests
At present some warnings are printed to indicate failures which are a
known part of running the tests. Suppress these.
Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/tools/dtoc/fdt_util.py b/tools/dtoc/fdt_util.py
index 88fc318..5b63141 100644
--- a/tools/dtoc/fdt_util.py
+++ b/tools/dtoc/fdt_util.py
@@ -51,7 +51,7 @@
out = out << 32 | fdt32_to_cpu(val[1])
return out
-def EnsureCompiled(fname):
+def EnsureCompiled(fname, capture_stderr=False):
"""Compile an fdt .dts source file into a .dtb binary blob if needed.
Args:
@@ -86,7 +86,7 @@
args.extend(search_list)
args.append(dts_input)
dtc = os.environ.get('DTC') or 'dtc'
- command.Run(dtc, *args)
+ command.Run(dtc, *args, capture_stderr=capture_stderr)
return dtb_output
def GetInt(node, propname, default=None):
diff --git a/tools/dtoc/test_dtoc.py b/tools/dtoc/test_dtoc.py
index 622b39d..72bcb37 100644
--- a/tools/dtoc/test_dtoc.py
+++ b/tools/dtoc/test_dtoc.py
@@ -47,16 +47,19 @@
'''
-def get_dtb_file(dts_fname):
+
+def get_dtb_file(dts_fname, capture_stderr=False):
"""Compile a .dts file to a .dtb
Args:
dts_fname: Filename of .dts file in the current directory
+ capture_stderr: True to capture and discard stderr output
Returns:
Filename of compiled file in output directory
"""
- return fdt_util.EnsureCompiled(os.path.join(our_path, dts_fname))
+ return fdt_util.EnsureCompiled(os.path.join(our_path, dts_fname),
+ capture_stderr=capture_stderr)
class TestDtoc(unittest.TestCase):
@@ -626,7 +629,8 @@
def test_bad_reg(self):
"""Test that a reg property with an invalid type generates an error"""
- dtb_file = get_dtb_file('dtoc_test_bad_reg.dts')
+ # Capture stderr since dtc will emit warnings for this file
+ dtb_file = get_dtb_file('dtoc_test_bad_reg.dts', capture_stderr=True)
output = tools.GetOutputFilename('output')
with self.assertRaises(ValueError) as e:
dtb_platdata.run_steps(['struct'], dtb_file, False, output)
@@ -635,7 +639,8 @@
def test_bad_reg2(self):
"""Test that a reg property with an invalid cell count is detected"""
- dtb_file = get_dtb_file('dtoc_test_bad_reg2.dts')
+ # Capture stderr since dtc will emit warnings for this file
+ dtb_file = get_dtb_file('dtoc_test_bad_reg2.dts', capture_stderr=True)
output = tools.GetOutputFilename('output')
with self.assertRaises(ValueError) as e:
dtb_platdata.run_steps(['struct'], dtb_file, False, output)