diff --git a/flashrom.c b/flashrom.c
index 8017849..803d687 100644
--- a/flashrom.c
+++ b/flashrom.c
@@ -832,7 +832,7 @@
 		return -1;
 
 	/* Fill default layout covering the whole chip. */
-	if (flashrom_layout_new(&flash->default_layout, 1) ||
+	if (flashrom_layout_new(&flash->default_layout) ||
 	    flashrom_layout_add_region(flash->default_layout,
 			0, flash->chip->total_size * 1024 - 1, "complete flash") ||
 	    flashrom_layout_include_region(flash->default_layout, "complete flash"))
diff --git a/ich_descriptors.c b/ich_descriptors.c
index 61cf6fc..48e5b87 100644
--- a/ich_descriptors.c
+++ b/ich_descriptors.c
@@ -1352,7 +1352,7 @@
 	if (read_ich_descriptors_from_dump(dump, len, &cs, &desc))
 		return 1;
 
-	if (flashrom_layout_new(layout, ARRAY_SIZE(regions)))
+	if (flashrom_layout_new(layout))
 		return 2;
 
 	ssize_t i;
diff --git a/layout.c b/layout.c
index 917853e..d2a2908 100644
--- a/layout.c
+++ b/layout.c
@@ -33,7 +33,7 @@
 struct flashrom_layout *get_global_layout(void)
 {
 	if (!global_layout)
-		flashrom_layout_new(&global_layout, 0);
+		flashrom_layout_new(&global_layout);
 	return global_layout;
 }
 
@@ -270,12 +270,11 @@
  * @brief Create a new, empty layout.
  *
  * @param layout Pointer to returned layout reference.
- * @param count  Number of layout entries to allocate.
  *
  * @return 0 on success,
  *         1 if out of memory.
  */
-int flashrom_layout_new(struct flashrom_layout **const layout, const unsigned int count)
+int flashrom_layout_new(struct flashrom_layout **const layout)
 {
 	*layout = malloc(sizeof(**layout));
 	if (!*layout) {
diff --git a/libflashrom.h b/libflashrom.h
index c89d2e0..9f503a2 100644
--- a/libflashrom.h
+++ b/libflashrom.h
@@ -66,7 +66,7 @@
 int flashrom_image_verify(struct flashrom_flashctx *, const void *buffer, size_t buffer_len);
 
 struct flashrom_layout;
-int flashrom_layout_new(struct flashrom_layout **, unsigned int count);
+int flashrom_layout_new(struct flashrom_layout **);
 int flashrom_layout_read_from_ifd(struct flashrom_layout **, struct flashrom_flashctx *, const void *dump, size_t len);
 int flashrom_layout_read_fmap_from_rom(struct flashrom_layout **,
 		struct flashrom_flashctx *, size_t offset, size_t length);
