pw_kvs: de-inline FlashPartition constructor

This is so that we can safely use PW_DCHECK

Change-Id: Id29b7ebfbef012ee892255d9eac735044a49f311
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/21041
Commit-Queue: Paul Mathieu <paulmathieu@google.com>
Reviewed-by: David Rogers <davidrogers@google.com>
diff --git a/pw_kvs/public/pw_kvs/flash_memory.h b/pw_kvs/public/pw_kvs/flash_memory.h
index 029fba2..0590e56 100644
--- a/pw_kvs/public/pw_kvs/flash_memory.h
+++ b/pw_kvs/public/pw_kvs/flash_memory.h
@@ -169,22 +169,7 @@
       uint32_t start_sector_index,
       uint32_t sector_count,
       uint32_t alignment_bytes = 0,  // Defaults to flash alignment
-      PartitionPermission permission = PartitionPermission::kReadAndWrite)
-      : flash_(*flash),
-        start_sector_index_(start_sector_index),
-        sector_count_(sector_count),
-        alignment_bytes_(alignment_bytes == 0
-                             ? flash_.alignment_bytes()
-                             : std::max(alignment_bytes,
-                                        uint32_t(flash_.alignment_bytes()))),
-        permission_(permission) {
-    uint32_t misalignment = (alignment_bytes_ % flash_.alignment_bytes());
-    PW_DCHECK_UINT_EQ(
-        misalignment,
-        0,
-        "Flash partition alignmentmust be a multiple of the flash "
-        "memory alignment");
-  }
+      PartitionPermission permission = PartitionPermission::kReadAndWrite);
 
   // Creates a FlashPartition that uses the entire flash with its alignment.
   // TODO(pwbug/246): This can be constexpr when tokenized asserts are fixed.