This patch set adds, tests, and documents support for variable sized elements in arrays (known as cell lists when they could only support 32-bit entries). The new syntax is:
property = /bits/ [8|16|32|64] <0x00 .... 0x12>; So arrays of 8, 16, 32, or 64-bit elements can now be created. No padding is done on the resulting array. So if three 8-bit elements are specified the resulting property will contain three bytes. Changes in v2: - sized_data renamed to celllist - celllist definition moved to dtc-parser.y - celllist non-terminal renamed to celllistprefix - references always appended as -1 masked to the size of the cell - smaller test values derived from TEST_VALUE_1 - data_append_literal renamed to data_append_integer - be_ removed from values in data_append_integer - len renamed to bits in data_append_integer Changes in v3: - Renamed size to bits in docs, parser, commit messages, and celllist struct - Remove die on overflow from data_append_integer - Rewrite data_append_cell|addr in terms of data_append_integer - Minor cosmetic change to property names in test case (added 'b' to last two) Changes in v4: - Only add phandle reference marker when element size is 32-bits - Rename non-terminal celllistprefix to arrayprefix - Rename semantic variable celllist to array - Update documentation to use array and element instead of cell list and cell Anton Staaf (3): libfdt: Add fdt16_to_cpu utility function dtc: Add data_append_integer function dtc: Add support for variable sized elements Documentation/dts-format.txt | 34 +++++++++++----- data.c | 39 ++++++++++++++++--- dtc-lexer.l | 6 +++ dtc-parser.y | 70 ++++++++++++++++++++++++----------- dtc.h | 1 + libfdt/libfdt_env.h | 6 +++ tests/.gitignore | 1 + tests/Makefile.tests | 1 + tests/run_tests.sh | 3 + tests/sized_cells.c | 84 ++++++++++++++++++++++++++++++++++++++++++ tests/sized_cells.dts | 11 +++++ 11 files changed, 216 insertions(+), 40 deletions(-) create mode 100644 tests/sized_cells.c create mode 100644 tests/sized_cells.dts -- 1.7.3.1 _______________________________________________ devicetree-discuss mailing list devicetree-discuss@lists.ozlabs.org https://lists.ozlabs.org/listinfo/devicetree-discuss