diff options
author | Amitkumar Karwar <akarwar@marvell.com> | 2013-10-01 15:19:14 -0400 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2013-10-02 03:36:16 -0400 |
commit | 4b245722cabc6ee6d56924f10944b14a725ffd61 (patch) | |
tree | 641320870df1f44d4098a6ebc290cb9e19b2aeee | |
parent | 7d5b400cb0018bd23f643adbd413e5e77cce6409 (diff) |
Bluetooth: btmrvl: add setup handler
Move initialization code to hdev's setup handler.
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-rw-r--r-- | drivers/bluetooth/btmrvl_main.c | 18 | ||||
-rw-r--r-- | drivers/bluetooth/btmrvl_sdio.c | 6 |
2 files changed, 16 insertions, 8 deletions
diff --git a/drivers/bluetooth/btmrvl_main.c b/drivers/bluetooth/btmrvl_main.c index a4da7c830b12..e0ae1f4ea406 100644 --- a/drivers/bluetooth/btmrvl_main.c +++ b/drivers/bluetooth/btmrvl_main.c | |||
@@ -432,6 +432,21 @@ static int btmrvl_open(struct hci_dev *hdev) | |||
432 | return 0; | 432 | return 0; |
433 | } | 433 | } |
434 | 434 | ||
435 | static int btmrvl_setup(struct hci_dev *hdev) | ||
436 | { | ||
437 | struct btmrvl_private *priv = hci_get_drvdata(hdev); | ||
438 | |||
439 | btmrvl_send_module_cfg_cmd(priv, MODULE_BRINGUP_REQ); | ||
440 | |||
441 | priv->btmrvl_dev.psmode = 1; | ||
442 | btmrvl_enable_ps(priv); | ||
443 | |||
444 | priv->btmrvl_dev.gpio_gap = 0xffff; | ||
445 | btmrvl_send_hscfg_cmd(priv); | ||
446 | |||
447 | return 0; | ||
448 | } | ||
449 | |||
435 | /* | 450 | /* |
436 | * This function handles the event generated by firmware, rx data | 451 | * This function handles the event generated by firmware, rx data |
437 | * received from firmware, and tx data sent from kernel. | 452 | * received from firmware, and tx data sent from kernel. |
@@ -525,8 +540,7 @@ int btmrvl_register_hdev(struct btmrvl_private *priv) | |||
525 | hdev->flush = btmrvl_flush; | 540 | hdev->flush = btmrvl_flush; |
526 | hdev->send = btmrvl_send_frame; | 541 | hdev->send = btmrvl_send_frame; |
527 | hdev->ioctl = btmrvl_ioctl; | 542 | hdev->ioctl = btmrvl_ioctl; |
528 | 543 | hdev->setup = btmrvl_setup; | |
529 | btmrvl_send_module_cfg_cmd(priv, MODULE_BRINGUP_REQ); | ||
530 | 544 | ||
531 | hdev->dev_type = priv->btmrvl_dev.dev_type; | 545 | hdev->dev_type = priv->btmrvl_dev.dev_type; |
532 | 546 | ||
diff --git a/drivers/bluetooth/btmrvl_sdio.c b/drivers/bluetooth/btmrvl_sdio.c index 00da6df9f71e..5b70bcb38a5e 100644 --- a/drivers/bluetooth/btmrvl_sdio.c +++ b/drivers/bluetooth/btmrvl_sdio.c | |||
@@ -1046,12 +1046,6 @@ static int btmrvl_sdio_probe(struct sdio_func *func, | |||
1046 | goto disable_host_int; | 1046 | goto disable_host_int; |
1047 | } | 1047 | } |
1048 | 1048 | ||
1049 | priv->btmrvl_dev.psmode = 1; | ||
1050 | btmrvl_enable_ps(priv); | ||
1051 | |||
1052 | priv->btmrvl_dev.gpio_gap = 0xffff; | ||
1053 | btmrvl_send_hscfg_cmd(priv); | ||
1054 | |||
1055 | return 0; | 1049 | return 0; |
1056 | 1050 | ||
1057 | disable_host_int: | 1051 | disable_host_int: |