aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmitkumar Karwar <akarwar@marvell.com>2013-10-01 15:19:14 -0400
committerMarcel Holtmann <marcel@holtmann.org>2013-10-02 03:36:16 -0400
commit4b245722cabc6ee6d56924f10944b14a725ffd61 (patch)
tree641320870df1f44d4098a6ebc290cb9e19b2aeee
parent7d5b400cb0018bd23f643adbd413e5e77cce6409 (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.c18
-rw-r--r--drivers/bluetooth/btmrvl_sdio.c6
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
435static 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
1057disable_host_int: 1051disable_host_int: