cbfstool: move cbfs_file header creation further up the call chain

The header is now created before the "converters" are run.
Adding new capabilities (and fields to the header) will happen there,
so we're close.

Change-Id: I0556df724bd93816b435efff7d931293dbed918f
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de>
Reviewed-on: http://review.coreboot.org/11326
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
Patrick Georgi
2015-08-25 13:48:10 +02:00
committed by Patrick Georgi
parent 056f6a1f80
commit 3ba501b86d
3 changed files with 16 additions and 10 deletions

View File

@@ -533,12 +533,13 @@ static int cbfs_add_entry_at(struct cbfs_image *image,
int cbfs_add_entry(struct cbfs_image *image, struct buffer *buffer,
const char *name, uint32_t type, uint32_t content_offset,
uint32_t header_size)
void *header, uint32_t header_size)
{
assert(image);
assert(buffer);
assert(buffer->data);
assert(name);
type = type;
assert(!IS_TOP_ALIGNED_ADDRESS(content_offset));
uint32_t entry_type;
@@ -607,16 +608,11 @@ int cbfs_add_entry(struct cbfs_image *image, struct buffer *buffer,
DEBUG("section 0x%x+0x%x for content_offset 0x%x.\n",
addr, addr_next - addr, content_offset);
struct cbfs_file *header =
cbfs_create_file_header(type, buffer->size, name);
if (cbfs_add_entry_at(image, entry,
buffer->data, content_offset, header,
header_size) == 0) {
free(header);
return 0;
}
free(header);
break;
}