coreboot: introduce arch_payload_run()

The selfboot() function relied on global variables
within the selfboot.c compilation unit. Now that the
bounce buffer is a part of struct payload use a new
architecture-specific arch_payload_run() function
for jumping to the payload. selfboot() can then be
removed.

Change-Id: Icec74942e94599542148561b3311ce5096ac5ea5
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/5300
Tested-by: build bot (Jenkins)
Reviewed-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
diff --git a/src/include/payload_loader.h b/src/include/payload_loader.h
index 73b28bf..4948afb 100644
--- a/src/include/payload_loader.h
+++ b/src/include/payload_loader.h
@@ -44,6 +44,9 @@
 /* Run the loaded payload. */
 void payload_run(const struct payload *payload);
 
+/* architecture specific function to run payload. */
+void arch_payload_run(const struct payload *payload);
+
 /* Payload loading operations. */
 struct payload_loader_ops {
 	const char *name;
@@ -57,6 +60,5 @@
 /* Defined in src/lib/selfboot.c */
 struct lb_memory;
 void *selfload(struct lb_memory *mem, struct payload *payload);
-void selfboot(void *entry);
 
 #endif  /* PAYLOAD_LOADER_H */