summaryrefslogtreecommitdiff
path: root/drivers/staging/ath6kl/hif/sdio/linux_sdio/src/hif.c
diff options
context:
space:
mode:
authorLuis R. Rodriguez <lrodriguez@atheros.com>2011-03-29 17:56:21 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2011-04-04 22:58:14 -0700
commit711908df76bedee2df653be057465168ed626742 (patch)
tree28fceff766ee29e55abfbf7b03c62945adf1a9e7 /drivers/staging/ath6kl/hif/sdio/linux_sdio/src/hif.c
parent0e7fd280fb1eb8a870d223fdfe4821d318001af5 (diff)
ath6kl: propagate errors on module setup
This propagates initial platform registration failures and also HIF initialization failures. Cc: Naveen Singh <nsingh@atheros.com> Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/ath6kl/hif/sdio/linux_sdio/src/hif.c')
-rw-r--r--drivers/staging/ath6kl/hif/sdio/linux_sdio/src/hif.c32
1 files changed, 14 insertions, 18 deletions
diff --git a/drivers/staging/ath6kl/hif/sdio/linux_sdio/src/hif.c b/drivers/staging/ath6kl/hif/sdio/linux_sdio/src/hif.c
index e6d9cd802dee..001f99375445 100644
--- a/drivers/staging/ath6kl/hif/sdio/linux_sdio/src/hif.c
+++ b/drivers/staging/ath6kl/hif/sdio/linux_sdio/src/hif.c
@@ -125,31 +125,27 @@ ATH_DEBUG_INSTANTIATE_MODULE_VAR(hif,
/* ------ Functions ------ */
int HIFInit(OSDRV_CALLBACKS *callbacks)
{
- int status;
- AR_DEBUG_ASSERT(callbacks != NULL);
+ int r;
+ AR_DEBUG_ASSERT(callbacks != NULL);
+
+ A_REGISTER_MODULE_DEBUG_INFO(hif);
- A_REGISTER_MODULE_DEBUG_INFO(hif);
+ /* store the callback handlers */
+ osdrvCallbacks = *callbacks;
- /* store the callback handlers */
- osdrvCallbacks = *callbacks;
+ /* Register with bus driver core */
+ registered = 1;
- /* Register with bus driver core */
- AR_DEBUG_PRINTF(ATH_DEBUG_TRACE, ("AR6000: HIFInit registering\n"));
- registered = 1;
#if defined(CONFIG_PM)
- if (callbacks->deviceSuspendHandler && callbacks->deviceResumeHandler) {
- ar6k_driver.drv.pm = &ar6k_device_pm_ops;
- }
+ if (callbacks->deviceSuspendHandler && callbacks->deviceResumeHandler)
+ ar6k_driver.drv.pm = &ar6k_device_pm_ops;
#endif /* CONFIG_PM */
- status = sdio_register_driver(&ar6k_driver);
- AR_DEBUG_ASSERT(status==0);
- if (status != 0) {
- return A_ERROR;
- }
-
- return 0;
+ r = sdio_register_driver(&ar6k_driver);
+ if (r < 0)
+ return r;
+ return 0;
}
static int