aboutsummaryrefslogtreecommitdiffstats
path: root/net/bluetooth
diff options
context:
space:
mode:
authorJaganath Kanakkassery <jaganath.k.os@gmail.com>2018-07-19 07:39:32 -0400
committerMarcel Holtmann <marcel@holtmann.org>2018-07-30 07:44:52 -0400
commit6decb5b45e70d6ffff6488cc8e8bad6b9ac7f99b (patch)
tree27ab67c7b4dd714817d3acd3ff5cd8561c61a0dd /net/bluetooth
parent25a13e382de2b0f844cd6303e45f2b33c8fbabac (diff)
Bluetooth: Define PHY flags in hdev and set 1M as default
1M is mandatory to be supported by LE controllers and the same would be set in power on. This patch defines hdev flags for LE PHYs and set 1M to default. Signed-off-by: Jaganath Kanakkassery <jaganathx.kanakkassery@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth')
-rw-r--r--net/bluetooth/hci_core.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index f5c21004186c..432f89f390c0 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -830,10 +830,9 @@ static int hci_init4_req(struct hci_request *req, unsigned long opt)
830 if (hdev->commands[35] & 0x20) { 830 if (hdev->commands[35] & 0x20) {
831 struct hci_cp_le_set_default_phy cp; 831 struct hci_cp_le_set_default_phy cp;
832 832
833 /* No transmitter PHY or receiver PHY preferences */ 833 cp.all_phys = 0x00;
834 cp.all_phys = 0x03; 834 cp.tx_phys = hdev->le_tx_def_phys;
835 cp.tx_phys = 0; 835 cp.rx_phys = hdev->le_rx_def_phys;
836 cp.rx_phys = 0;
837 836
838 hci_req_add(req, HCI_OP_LE_SET_DEFAULT_PHY, sizeof(cp), &cp); 837 hci_req_add(req, HCI_OP_LE_SET_DEFAULT_PHY, sizeof(cp), &cp);
839 } 838 }
@@ -3027,6 +3026,8 @@ struct hci_dev *hci_alloc_dev(void)
3027 hdev->le_max_tx_time = 0x0148; 3026 hdev->le_max_tx_time = 0x0148;
3028 hdev->le_max_rx_len = 0x001b; 3027 hdev->le_max_rx_len = 0x001b;
3029 hdev->le_max_rx_time = 0x0148; 3028 hdev->le_max_rx_time = 0x0148;
3029 hdev->le_tx_def_phys = HCI_LE_SET_PHY_1M;
3030 hdev->le_rx_def_phys = HCI_LE_SET_PHY_1M;
3030 3031
3031 hdev->rpa_timeout = HCI_DEFAULT_RPA_TIMEOUT; 3032 hdev->rpa_timeout = HCI_DEFAULT_RPA_TIMEOUT;
3032 hdev->discov_interleaved_timeout = DISCOV_INTERLEAVED_TIMEOUT; 3033 hdev->discov_interleaved_timeout = DISCOV_INTERLEAVED_TIMEOUT;