diff options
author | Yuanyuan Liu <yuanliu@codeaurora.org> | 2016-06-02 10:28:44 -0700 |
---|---|---|
committer | Akash Patel <akashp@codeaurora.org> | 2016-06-09 22:09:57 -0700 |
commit | 13481084670119a8224a550e3d974ae7bc264e91 (patch) | |
tree | 59b6c0bba9f318ccc71d58ca9a2df092b86feddf /core/pld/src/pld_common.c | |
parent | ec26759fc85ab1be68734a471900e1cb6b6c50f3 (diff) | |
download | qcacld-13481084670119a8224a550e3d974ae7bc264e91.tar.gz |
qcacld-3.0: Return error code when any of bus register failed
Return error code when any of bus register functions failed.
Change-Id: I3cdc6afaa3899f1c32ab85fec5b89fa2e736d7b8
CRs-Fixed: 1023647
Diffstat (limited to 'core/pld/src/pld_common.c')
-rw-r--r-- | core/pld/src/pld_common.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/core/pld/src/pld_common.c b/core/pld/src/pld_common.c index 4ec6dbabca..e3c5bc60fc 100644 --- a/core/pld/src/pld_common.c +++ b/core/pld/src/pld_common.c @@ -48,6 +48,7 @@ #define PLD_PCIE_REGISTERED BIT(0) #define PLD_SNOC_REGISTERED BIT(1) +#define PLD_BUS_MASK 0x3 static struct pld_context *pld_ctx; @@ -157,7 +158,7 @@ enum pld_bus_type pld_get_bus_type(struct device *dev) * device is online. * * Return: 0 for success - * Non zero failure code for errors + * pld_driver_state for errors */ int pld_register_driver(struct pld_driver_ops *ops) { @@ -192,10 +193,10 @@ int pld_register_driver(struct pld_driver_ops *ops) if (0 == pld_snoc_register_driver()) pld_context->pld_driver_state |= PLD_SNOC_REGISTERED; - if (0 == pld_context->pld_driver_state) { - pr_err("All driver falied to register\n"); - ret = -EINVAL; - goto out; + if ((PLD_BUS_MASK & pld_context->pld_driver_state) != PLD_BUS_MASK) { + pr_err("driver falied to register, state %x\n", + pld_context->pld_driver_state); + ret = pld_context->pld_driver_state; } out: |