Mention pylibfdt in the documentation
Add a note about pylibfdt in the README. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>main
parent
12cfb740cc
commit
b40aa8359a
47
README
47
README
|
@ -7,6 +7,53 @@ DTC and LIBFDT are maintained by:
|
|||
David Gibson <david@gibson.dropbear.id.au>
|
||||
Jon Loeliger <jdl@jdl.com>
|
||||
|
||||
|
||||
Python library
|
||||
--------------
|
||||
|
||||
A Python library is also available. To build this you will need to install
|
||||
swig and Python development files. On Debian distributions:
|
||||
|
||||
sudo apt-get install swig python-dev
|
||||
|
||||
The library provides an Fdt class which you can use like this:
|
||||
|
||||
$ PYTHONPATH=../pylibfdt python
|
||||
>>> import libfdt
|
||||
>>> fdt = libfdt.Fdt(open('test_tree1.dtb').read())
|
||||
>>> node = fdt.path_offset('/subnode@1')
|
||||
>>> print node
|
||||
124
|
||||
>>> prop_offset = fdt.first_property_offset(node)
|
||||
>>> prop = fdt.get_property_by_offset(prop_offset)
|
||||
>>> print '%s=%r' % (prop.name, prop.value)
|
||||
compatible=bytearray(b'subnode1\x00')
|
||||
>>> print '%s=%s' % (prop.name, prop.value)
|
||||
compatible=subnode1
|
||||
>>> node2 = fdt.path_offset('/')
|
||||
>>> print fdt.getprop(node2, 'compatible')
|
||||
test_tree1
|
||||
|
||||
You will find tests in tests/pylibfdt_tests.py showing how to use each
|
||||
method. Help is available using the Python help command, e.g.:
|
||||
|
||||
$ cd pylibfdt
|
||||
$ python -c "import libfdt; help(libfdt)"
|
||||
|
||||
If you add new features, please check code coverage:
|
||||
|
||||
$ sudo apt-get install python-pip python-pytest
|
||||
$ sudo pip install coverage
|
||||
$ cd tests
|
||||
$ coverage run pylibfdt_tests.py
|
||||
$ coverage html
|
||||
# Open 'htmlcov/index.html' in your browser
|
||||
|
||||
|
||||
More work remains to support all of libfdt, including access to numeric
|
||||
values.
|
||||
|
||||
|
||||
Mailing list
|
||||
------------
|
||||
The following list is for discussion about dtc and libfdt implementation
|
||||
|
|
Loading…
Reference in New Issue