Commit Graph

4 Commits

Author SHA1 Message Date
Wyatt Hepler
1927c2868b pw_kvs: Split out aligned write functionality
- Define the Output interface.
- Create AlignedWriter class, which handles writing aligned and padded
  data to a buffer.
- Define AlignedWriterBuffer, which provides a buffer to an
  AlignedWriter.

Change-Id: I791c5fc2d47617b0866fa779a506cb977905f245
2020-02-12 17:00:09 -08:00
Wyatt Hepler
116d116e4d pw_kvs: Alignment handling adjustments
- Rename multi-span Write to WriteAligned to reflect that the number of
  bytes written may be larger than the input due to padding.
- Make alignment_bytes_ a member of FlashPartition instead of a virtual
  function.
- Enable tests that now pass.

Change-Id: Iad985988ef97607b38fb0c84589cabe752de71a2
2020-02-07 00:36:44 +00:00
Wyatt Hepler
6c24c0638b pw_kvs: Implement Delete; add tests
- Implement Delete function.
- Add new tests and enable a few that pass now.
- Have out-of-bounds flash reads return OUT_OF_RANGE to differentiate
  from INVALID_ARGUMENT.

Change-Id: I5d65ad36913b30f2554bd12eaba26127ae0ec8f2
2020-02-05 18:00:56 -08:00
Wyatt Hepler
4da1fcb4b2 pw_kvs: Initial commit of new KVS design
Builds, but lots more work needed.

Fun fact: this code was written collaboratively in a Google Doc.

Change-Id: I8a89c5d0fdc71ec28cf432350e65d17e24a6f25c
2020-01-31 14:38:37 -08:00