4f00eda9fa05364edd719b05b88e4445682eeee5 |
|
06-Apr-2017 |
SzuWei Lin <szuweilin@google.com> |
Add Apache2 module license Bug: 36678371 Test: mmm system/libufdt, and success build Change-Id: I73059f5beca2242f8883fca86cb49d53d0f543b8 (cherry picked from commit 6ad4caae73191bdc2403185b6482969c17604c95)
/system/libufdt/include/libufdt.h
|
435687606727710e91e827daa8e9227d760b4a1c |
|
30-Mar-2017 |
SzuWei Lin <szuweilin@google.com> |
Avoid to re-generate string table from ufdt to fdt String table contains the strings of all property name in a fdt. The ufdt_apply_overlay() converts two dtbs from fdt to ufdt, overlays, and converts merged ufdt to fdt. These operations shouldn't create new peroperty names, so we can just re-use the string tables in original dtbs, and just copy them into merged fdt. This solution can enhance a lot of performance for device tree overlaying. To avoid the error that some users could use string offset in string table, the solution also give a same string offset for the name properties by ufdt_prop_dict; Futher, the patch also removed unused header files after changing algorithm. Bug: 35255584 Test: ./tests/run_tests.sh Change-Id: Id422730115531bd20d21117285291bdd860915ff (cherry picked from commit 1be68ae53e645de1b2ec26140b302fbfcbbb919f)
/system/libufdt/include/libufdt.h
|
f6c209b3f409f879305ac9837524b9d34c850de6 |
|
27-Nov-2016 |
Li Chen <akaineko@google.com> |
libufdt: device tree overlay via unflattening FDT The original version of libdtoverlay is slow in searching for particular nodes and adding subnodes/properties due to the operations on flattened device tree (FDT). `libufdt` builds a real tree structure (named ufdt -- unflattned device tree) from FDT. In the real tree, we can perform certain operations (e.g., merge 2 subtrees, search for a node by path) in almost optimal time complexity with acceptable additional memory usage. With libufdt, we improve the merging of two dtb files from O(N^2) to O(N), where N is the number of nodes in the tree. Bug: 30800619 Test: run test scripts (see libufdt/tests/README) Test: manually ported libufdt into a bootloader, checked it can merge a base dtb and a dtbo to generate a final dtb to boot the device Change-Id: I1ff886bb8a62bad1451edcd7c4fe5cb48b7a034a
/system/libufdt/include/libufdt.h
|
eeaff8f66f44518a0e776957c6e0921f7799ace2 |
|
14-Dec-2016 |
Jeff Hao <jeffhao@google.com> |
Revert "libufdt: device tree overlay via unflattening FDT" This reverts commit 3084ce7cbdff84093286459758f99c15082e6556. Change-Id: I36f8252ea77c75301711009180c1908bb18e231c
/system/libufdt/include/libufdt.h
|
3084ce7cbdff84093286459758f99c15082e6556 |
|
27-Nov-2016 |
LiChen <akaineko@google.com> |
libufdt: device tree overlay via unflattening FDT The original version of libdtoverlay is slow in searching for particular nodes and adding subnodes/properties due to the operations on flattened device tree (FDT). `libufdt` builds a real tree structure (named ufdt -- unflattned device tree) from FDT. In the real tree, we can perform certain operations (e.g., merge 2 subtrees, search for a node by path) in almost optimal time complexity with acceptable additional memory usage. With libufdt, we improve the merging of two dtb files from O(N^2) to O(N), where N is the number of nodes in the tree. Bug: 30800619 Test: run test scripts (see libufdt/tests/README) Test: manually ported libufdt into a bootloader, checked it can merge a base dtb and a dtbo to generate a final dtb to boot the device Change-Id: I6a282cc99129d5280ecbf40852723f83735fa523
/system/libufdt/include/libufdt.h
|