diff options
author | Simon Glass <sjg@chromium.org> | 2016-07-25 18:59:02 -0600 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2016-09-18 21:04:38 -0600 |
commit | ba482585661431dde74eb69c7a94ac2d5a772d9f (patch) | |
tree | 0d85c16ba9d46f97380babb4cc13383d2a5550c8 /tools/dtoc/fdt_select.py | |
parent | 58593115453199eb136f1c625bc29e44d057c07e (diff) |
dtoc: Move the fdt library selection into fdt_select
Rather than have dtc worry about which fdt library to use, move this into
a helper file. Add a function which creates a new Fdt object and scans it,
regardless of the implementation.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools/dtoc/fdt_select.py')
-rw-r--r-- | tools/dtoc/fdt_select.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tools/dtoc/fdt_select.py b/tools/dtoc/fdt_select.py new file mode 100644 index 0000000000..5aff297c8f --- /dev/null +++ b/tools/dtoc/fdt_select.py @@ -0,0 +1,23 @@ +#!/usr/bin/python +# +# Copyright (C) 2016 Google, Inc +# Written by Simon Glass <sjg@chromium.org> +# +# SPDX-License-Identifier: GPL-2.0+ +# + +# Bring in either the normal fdt library (which relies on libfdt) or the +# fallback one (which uses fdtget and is slower). Both provide the same +# interface for this file to use. +try: + import fdt + have_libfdt = True +except ImportError: + have_libfdt = False + import fdt_fallback as fdt + +def FdtScan(fname): + """Returns a new Fdt object from the implementation we are using""" + dtb = fdt.Fdt(fname) + dtb.Scan() + return dtb |