hci_event.c (e04fde60efabe27afdbe041e3e5a09ec752ec9d2) | hci_event.c (1855d92dce0dc0ed81a78eacae710529600513f4) |
---|---|
1/* 2 BlueZ - Bluetooth protocol stack for Linux 3 Copyright (c) 2000-2001, 2010, Code Aurora Forum. All rights reserved. 4 5 Written 2000,2001 by Maxim Krasnyansky <maxk@qualcomm.com> 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License version 2 as --- 4056 unchanged lines hidden (view full) --- 4065 hci_proto_connect_cfm(conn, ev->status); 4066 4067 hci_pend_le_conn_del(hdev, &conn->dst, conn->dst_type); 4068 4069unlock: 4070 hci_dev_unlock(hdev); 4071} 4072 | 1/* 2 BlueZ - Bluetooth protocol stack for Linux 3 Copyright (c) 2000-2001, 2010, Code Aurora Forum. All rights reserved. 4 5 Written 2000,2001 by Maxim Krasnyansky <maxk@qualcomm.com> 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License version 2 as --- 4056 unchanged lines hidden (view full) --- 4065 hci_proto_connect_cfm(conn, ev->status); 4066 4067 hci_pend_le_conn_del(hdev, &conn->dst, conn->dst_type); 4068 4069unlock: 4070 hci_dev_unlock(hdev); 4071} 4072 |
4073static void hci_le_conn_update_complete_evt(struct hci_dev *hdev, 4074 struct sk_buff *skb) 4075{ 4076 struct hci_ev_le_conn_update_complete *ev = (void *) skb->data; 4077 struct hci_conn *conn; 4078 4079 BT_DBG("%s status 0x%2.2x", hdev->name, ev->status); 4080 4081 if (ev->status) 4082 return; 4083 4084 hci_dev_lock(hdev); 4085 4086 conn = hci_conn_hash_lookup_handle(hdev, __le16_to_cpu(ev->handle)); 4087 if (conn) { 4088 conn->le_conn_interval = le16_to_cpu(ev->interval); 4089 conn->le_conn_latency = le16_to_cpu(ev->latency); 4090 conn->le_supv_timeout = le16_to_cpu(ev->supervision_timeout); 4091 } 4092 4093 hci_dev_unlock(hdev); 4094} 4095 |
|
4073/* This function requires the caller holds hdev->lock */ 4074static void check_pending_le_conn(struct hci_dev *hdev, bdaddr_t *addr, 4075 u8 addr_type) 4076{ 4077 struct hci_conn *conn; 4078 struct smp_irk *irk; 4079 4080 /* If this is a resolvable address, we should resolve it and then --- 183 unchanged lines hidden (view full) --- 4264 4265 skb_pull(skb, sizeof(*le_ev)); 4266 4267 switch (le_ev->subevent) { 4268 case HCI_EV_LE_CONN_COMPLETE: 4269 hci_le_conn_complete_evt(hdev, skb); 4270 break; 4271 | 4096/* This function requires the caller holds hdev->lock */ 4097static void check_pending_le_conn(struct hci_dev *hdev, bdaddr_t *addr, 4098 u8 addr_type) 4099{ 4100 struct hci_conn *conn; 4101 struct smp_irk *irk; 4102 4103 /* If this is a resolvable address, we should resolve it and then --- 183 unchanged lines hidden (view full) --- 4287 4288 skb_pull(skb, sizeof(*le_ev)); 4289 4290 switch (le_ev->subevent) { 4291 case HCI_EV_LE_CONN_COMPLETE: 4292 hci_le_conn_complete_evt(hdev, skb); 4293 break; 4294 |
4295 case HCI_EV_LE_CONN_UPDATE_COMPLETE: 4296 hci_le_conn_update_complete_evt(hdev, skb); 4297 break; 4298 |
|
4272 case HCI_EV_LE_ADVERTISING_REPORT: 4273 hci_le_adv_report_evt(hdev, skb); 4274 break; 4275 4276 case HCI_EV_LE_LTK_REQ: 4277 hci_le_ltk_request_evt(hdev, skb); 4278 break; 4279 --- 224 unchanged lines hidden --- | 4299 case HCI_EV_LE_ADVERTISING_REPORT: 4300 hci_le_adv_report_evt(hdev, skb); 4301 break; 4302 4303 case HCI_EV_LE_LTK_REQ: 4304 hci_le_ltk_request_evt(hdev, skb); 4305 break; 4306 --- 224 unchanged lines hidden --- |