aboutsummaryrefslogtreecommitdiff
path: root/platforms
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 /platforms
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 'platforms')
-rw-r--r--platforms/astbmc/habanero.c2
-rw-r--r--platforms/astbmc/palmetto.c2
-rw-r--r--platforms/ibm-fsp/apollo.c1
-rw-r--r--platforms/ibm-fsp/firenze.c1
4 files changed, 4 insertions, 2 deletions
diff --git a/platforms/astbmc/habanero.c b/platforms/astbmc/habanero.c
index d56e451..2812b40 100644
--- a/platforms/astbmc/habanero.c
+++ b/platforms/astbmc/habanero.c
@@ -53,6 +53,6 @@ DECLARE_PLATFORM(habanero) = {
.cec_power_down = astbmc_ipmi_power_down,
.cec_reboot = astbmc_ipmi_reboot,
.elog_commit = ipmi_elog_commit,
- .start_preload_resource = flash_start_preload_resource,
+ .start_preload_resource = flash_load_resource,
.exit = ipmi_wdt_final_reset,
};
diff --git a/platforms/astbmc/palmetto.c b/platforms/astbmc/palmetto.c
index fdc449e..02b0649 100644
--- a/platforms/astbmc/palmetto.c
+++ b/platforms/astbmc/palmetto.c
@@ -53,6 +53,6 @@ DECLARE_PLATFORM(palmetto) = {
.cec_power_down = astbmc_ipmi_power_down,
.cec_reboot = astbmc_ipmi_reboot,
.elog_commit = ipmi_elog_commit,
- .start_preload_resource = flash_start_preload_resource,
+ .start_preload_resource = flash_load_resource,
.exit = ipmi_wdt_final_reset,
};
diff --git a/platforms/ibm-fsp/apollo.c b/platforms/ibm-fsp/apollo.c
index cc62c98..d03ff75 100644
--- a/platforms/ibm-fsp/apollo.c
+++ b/platforms/ibm-fsp/apollo.c
@@ -61,4 +61,5 @@ DECLARE_PLATFORM(apollo) = {
.nvram_write = fsp_nvram_write,
.elog_commit = elog_fsp_commit,
.start_preload_resource = fsp_start_preload_resource,
+ .resource_loaded = fsp_resource_loaded,
};
diff --git a/platforms/ibm-fsp/firenze.c b/platforms/ibm-fsp/firenze.c
index 9a696b7..fbdbcf3 100644
--- a/platforms/ibm-fsp/firenze.c
+++ b/platforms/ibm-fsp/firenze.c
@@ -415,4 +415,5 @@ DECLARE_PLATFORM(firenze) = {
.occ_timeout = ibm_fsp_occ_timeout,
.elog_commit = elog_fsp_commit,
.start_preload_resource = fsp_start_preload_resource,
+ .resource_loaded = fsp_resource_loaded,
} ;