platform: add a platform hook for loading external resources

Currently, in core/init.c we do a fsp-specific load procedure to grab
the kernel image.

We'd like to do two things: allow other types of resources, and have
paths for non-FSP platforms to perform loads.

This change adds a platform-specific load_resource hook, and moves the
currently loading code to fsp_load_resource. To allow other resource
types, we add an identifier to indicate the type of resouce to load.

Signed-off-by: Jeremy Kerr <jeremy.kerr@au.ibm.com>
Acked-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Acked-by: Stewart Smith <stewart@linux.vnet.ibm.com>
core: Add support for loading an external initramfs

Using the platform.load_resource interface, allow an external initramfs
image to be passed to the kernel.

We split the KERNEL_LOAD_BASE/KERNEL_LOAD_SIZE region in half, to allow
space for the initramfs.

Signed-off-by: Jeremy Kerr <jeremy.kerr@au.ibm.com>
Acked-by: Stewart Smith <stewart@linux.vnet.ibm.com>
fsp: Allow loading initramfs resources

We have the new 80f00102.lid name for this.

Signed-off-by: Jeremy Kerr <jeremy.kerr@au.ibm.com>
Acked-by: Stewart Smith <stewart@linux.vnet.ibm.com>