dtoc: Move to using bytearray

Since we want to be able to change the in-memory device tree using libfdt,
use a bytearray instead of a string. This makes interfacing from Python
easier.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2016-07-25 18:59:13 -06:00
parent 346179f0d3
commit 0170804f60
2 changed files with 9 additions and 1 deletions

View File

@ -75,6 +75,14 @@ struct fdt_property {
}
%}
%typemap(in) (const void *) {
if (!PyByteArray_Check($input)) {
SWIG_exception_fail(SWIG_TypeError, "in method '" "$symname" "', argument "
"$argnum"" of type '" "$type""'");
}
$1 = (void *) PyByteArray_AsString($input);
}
const void *fdt_offset_ptr(const void *fdt, int offset, unsigned int checklen);
int fdt_path_offset(const void *fdt, const char *path);
int fdt_first_property_offset(const void *fdt, int nodeoffset);

View File

@ -110,7 +110,7 @@ class FdtNormal(Fdt):
self._fname = fdt_util.EnsureCompiled(self._fname)
with open(self._fname) as fd:
self._fdt = fd.read()
self._fdt = bytearray(fd.read())
def GetFdt(self):
"""Get the contents of the FDT