[PATCH v4 0/3] Variable sized array element support
Anton Staaf
robotboy at chromium.org
Wed Sep 28 04:11:35 EST 2011
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
More information about the devicetree-discuss
mailing list