aboutsummaryrefslogtreecommitdiff
path: root/core/platform.c
diff options
context:
space:
mode:
authorStewart Smith <stewart@linux.vnet.ibm.com>2015-03-24 14:17:19 +1100
committerStewart Smith <stewart@linux.vnet.ibm.com>2015-03-24 18:20:33 +1100
commitc7897727e60c6ee3fa7e6aebe82f41538729c212 (patch)
treeda16959472ad2a5512aeffe0c0e2fdfcb21f720c /core/platform.c
parentc4730fb25a6ffd24aa2f9d505510dd45bc6f318c (diff)
downloadskiboot-c7897727e60c6ee3fa7e6aebe82f41538729c212.zip
skiboot-c7897727e60c6ee3fa7e6aebe82f41538729c212.tar.gz
skiboot-c7897727e60c6ee3fa7e6aebe82f41538729c212.tar.bz2
Asynchronous LID/Resource loading for FSP systems
This moves away from using fsp_sync_msg in fsp_fetch_data and instead using the platform hooks for start_preload_resource() to actually queue up a load and having the plumbing for checking if a resource is loaded yet. This gets rid of the "pollers called with locks held" warning we got heaps of previously. You can now boot some FSP systems without getting this warning at all. This also sets the stage for starting load of LIDs much earlier to when they're needed, improving boot time. Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core/platform.c')
-rw-r--r--core/platform.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/core/platform.c b/core/platform.c
index 5369092..f93b141 100644
--- a/core/platform.c
+++ b/core/platform.c
@@ -104,8 +104,7 @@ int wait_for_resource_loaded(enum resource_id id, uint32_t idx)
while(r == OPAL_BUSY) {
opal_run_pollers();
- time_wait_nopoll(msecs_to_tb(5));
- cpu_relax();
+ time_wait_ms_nopoll(5);
r = resource_loaded(id, idx);
}