diff options
author | Vasant Hegde <hegdevasant@linux.vnet.ibm.com> | 2015-03-09 11:56:53 +0530 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2015-03-10 14:09:18 +1100 |
commit | ee347ac9cc4bd40d54f2a9937733713d6493b677 (patch) | |
tree | b4e1d35ee9492737c7f938f8dd00f91be6f17529 /hw/occ.c | |
parent | 7f6352fa52e57c075caac8e3ef6ec85e01f85e2f (diff) | |
download | skiboot-ee347ac9cc4bd40d54f2a9937733713d6493b677.zip skiboot-ee347ac9cc4bd40d54f2a9937733713d6493b677.tar.gz skiboot-ee347ac9cc4bd40d54f2a9937733713d6493b677.tar.bz2 |
OCC: Do not call occ_do_load if hostservice LID load is not complete
Commit 4db0c1e4f introduced occ_load_req queue. With that changes we queue
the occ load request if hostservice LID load is not complete. And we have
callback function (occ_poke_load_queue)...which takes care of calling
__occ_do_load().
But current code proceeds and calls __occ_do_load() after queueing....which
is not correct. So just return if we queue the occ load request.
Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Reviewed-by: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
Acked-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'hw/occ.c')
-rw-r--r-- | hw/occ.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -456,8 +456,10 @@ static void occ_do_load(u8 scope, u32 dbob_id __unused, u32 seq_id) * Check if hostservices lid caching is complete. If not, queue * the load request. */ - if (!hservices_lid_preload_complete()) + if (!hservices_lid_preload_complete()) { occ_queue_load(scope, dbob_id, seq_id); + return; + } __occ_do_load(scope, dbob_id, seq_id); } |