summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/include/payload_loader.h3
-rw-r--r--src/lib/loaders/load_and_run_payload.c2
-rw-r--r--src/lib/selfboot.c10
3 files changed, 8 insertions, 7 deletions
diff --git a/src/include/payload_loader.h b/src/include/payload_loader.h
index b8bfc0dd21..3dde2f7626 100644
--- a/src/include/payload_loader.h
+++ b/src/include/payload_loader.h
@@ -54,8 +54,7 @@ struct payload_loader_ops {
/* Defined in src/lib/selfboot.c */
struct lb_memory;
-struct cbfs_payload;
-void *selfload(struct lb_memory *mem, struct cbfs_payload *payload);
+void *selfload(struct lb_memory *mem, struct payload *payload);
void selfboot(void *entry);
#endif /* PAYLOAD_LOADER_H */
diff --git a/src/lib/loaders/load_and_run_payload.c b/src/lib/loaders/load_and_run_payload.c
index 96f5e27580..f18b57b23a 100644
--- a/src/lib/loaders/load_and_run_payload.c
+++ b/src/lib/loaders/load_and_run_payload.c
@@ -65,7 +65,7 @@ struct payload *payload_load(void)
return NULL;
mem = get_lb_mem();
- entry = selfload(mem, payload->backing_store.data);
+ entry = selfload(mem, payload);
if (entry == NULL)
return NULL;
diff --git a/src/lib/selfboot.c b/src/lib/selfboot.c
index 6f200fa868..bd1206f259 100644
--- a/src/lib/selfboot.c
+++ b/src/lib/selfboot.c
@@ -302,14 +302,16 @@ static int relocate_segment(unsigned long buffer, struct segment *seg)
static int build_self_segment_list(
struct segment *head,
struct lb_memory *mem,
- struct cbfs_payload *payload, uintptr_t *entry)
+ struct payload *payload, uintptr_t *entry)
{
struct segment *new;
struct segment *ptr;
struct cbfs_payload_segment *segment, *first_segment;
+ struct cbfs_payload *cbfs_payload;
+ cbfs_payload = payload->backing_store.data;
memset(head, 0, sizeof(*head));
head->next = head->prev = head;
- first_segment = segment = &payload->segments;
+ first_segment = segment = &cbfs_payload->segments;
while(1) {
printk(BIOS_DEBUG, "Loading segment from rom address 0x%p\n", segment);
@@ -394,7 +396,7 @@ static int build_self_segment_list(
static int load_self_segments(
struct segment *head,
struct lb_memory *mem,
- struct cbfs_payload *payload)
+ struct payload *payload)
{
struct segment *ptr;
@@ -500,7 +502,7 @@ static int load_self_segments(
return 1;
}
-void *selfload(struct lb_memory *mem, struct cbfs_payload *payload)
+void *selfload(struct lb_memory *mem, struct payload *payload)
{
uintptr_t entry = 0;
struct segment head;