aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorStewart Smith <stewart@linux.vnet.ibm.com>2015-05-06 14:00:49 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2015-05-07 17:54:30 +1000
commit8b59c65825074d00d0f93fbe789bb7fa9991ded6 (patch)
tree212ebca9067992450f0310647773f58847a89a02 /include
parent865cbaec4869bb824ef8ebfb3dba2fdae61c07a0 (diff)
downloadskiboot-8b59c65825074d00d0f93fbe789bb7fa9991ded6.zip
skiboot-8b59c65825074d00d0f93fbe789bb7fa9991ded6.tar.gz
skiboot-8b59c65825074d00d0f93fbe789bb7fa9991ded6.tar.bz2
astbmc: asynchronous preloading of resources
Implement start_preload_resource and resource_loaded platform functions for astbmc machines (palmetto, habanero, firestone). This means we start loading kernel and initramfs from flash much earlier in boot, doing things like PCI init concurrently so that by the time we go to boot the payload, it's already loaded. Implementation is a simple queue with a job running on another CPU doing the libflash calls. Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'include')
-rw-r--r--include/skiboot.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/skiboot.h b/include/skiboot.h
index fc5bc1d..d021b33 100644
--- a/include/skiboot.h
+++ b/include/skiboot.h
@@ -199,8 +199,9 @@ extern void occ_fsp_init(void);
/* flash support */
struct flash_chip;
extern int flash_register(struct flash_chip *chip, bool is_system_flash);
-extern int flash_load_resource(enum resource_id id, uint32_t subid,
- void *buf, size_t *len);
+extern int flash_start_preload_resource(enum resource_id id, uint32_t subid,
+ void *buf, size_t *len);
+extern int flash_resource_loaded(enum resource_id id, uint32_t idx);
extern bool flash_reserve(void);
extern void flash_release(void);