diff options
author | Vasant Hegde <hegdevasant@linux.vnet.ibm.com> | 2018-04-03 23:08:41 +0530 |
---|---|---|
committer | Stewart Smith <stewart@linux.ibm.com> | 2018-04-10 15:38:33 +1000 |
commit | cb16e55a234b91fd42112904cff15094fbae680d (patch) | |
tree | c702caf71b4166f981537af25e5c92b62bfdaa94 /external | |
parent | 4172f30a16dacf2319a4434d644fd7dbaf0730d0 (diff) | |
download | skiboot-cb16e55a234b91fd42112904cff15094fbae680d.zip skiboot-cb16e55a234b91fd42112904cff15094fbae680d.tar.gz skiboot-cb16e55a234b91fd42112904cff15094fbae680d.tar.bz2 |
opal-prd: Insert powernv_flash module
Explictly load powernv_flash module on BMC based system so that we are sure
that flash device is created before starting opal-prd daemon.
Note that I have replaced pnor_available() check with is_fsp_system(). As we
want to load module on BMC system only. Also pnor_init has enough logic to
detect flash device. Hence pnor_available() becomes redundant check.
Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
CC: Jeremy Kerr <jeremy.kerr@au1.ibm.com>
CC: Stewart Smith <stewart@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
Diffstat (limited to 'external')
-rw-r--r-- | external/opal-prd/opal-prd.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/external/opal-prd/opal-prd.c b/external/opal-prd/opal-prd.c index 5a15f1d..bc092d1 100644 --- a/external/opal-prd/opal-prd.c +++ b/external/opal-prd/opal-prd.c @@ -547,6 +547,11 @@ int hservice_wakeup(u32 core, u32 mode) return 0; } +static void pnor_load_module(struct opal_prd_ctx *ctx) +{ + insert_module("powernv_flash"); +} + static void ipmi_init(struct opal_prd_ctx *ctx) { insert_module("ipmi_devintf"); @@ -2177,7 +2182,9 @@ static int run_prd_daemon(struct opal_prd_ctx *ctx) fixup_hinterface_table(); - if (pnor_available(&ctx->pnor)) { + if (!is_fsp_system()) { + pnor_load_module(ctx); + rc = pnor_init(&ctx->pnor); if (rc) { pr_log(LOG_ERR, "PNOR: Failed to open pnor: %m"); |