Lines Matching defs:hdev
529 * hdev: Pointer to associated strucy hci_dev
557 struct hci_dev *hdev;
682 hci_recv_frame(bcm4377->hdev, skb);
1129 skb = __hci_cmd_sync(bcm4377->hdev, 0xfd97, sizeof(cmd), &cmd,
1227 skb = __hci_cmd_sync(bcm4377->hdev, 0xfd98, fw->size, fw->data,
1255 skb = __hci_cmd_sync(bcm4377->hdev, 0xfe0d, sizeof(cmd), &cmd,
1289 static int bcm4377_hci_open(struct hci_dev *hdev)
1291 struct bcm4377_data *bcm4377 = hci_get_drvdata(hdev);
1359 static int bcm4377_hci_close(struct hci_dev *hdev)
1361 struct bcm4377_data *bcm4377 = hci_get_drvdata(hdev);
1401 skb = __hci_cmd_sync(bcm4377->hdev, HCI_OP_READ_BD_ADDR, 0, NULL,
1420 set_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &bcm4377->hdev->quirks);
1426 static int bcm4377_hci_setup(struct hci_dev *hdev)
1428 struct bcm4377_data *bcm4377 = hci_get_drvdata(hdev);
1452 static int bcm4377_hci_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
1454 struct bcm4377_data *bcm4377 = hci_get_drvdata(hdev);
1460 hdev->stat.cmd_tx++;
1465 hdev->stat.acl_tx++;
1470 hdev->stat.sco_tx++;
1480 hdev->stat.err_tx++;
1484 hdev->stat.byte_tx += skb->len;
1489 static int bcm4377_hci_set_bdaddr(struct hci_dev *hdev, const bdaddr_t *bdaddr)
1491 struct bcm4377_data *bcm4377 = hci_get_drvdata(hdev);
1495 skb = __hci_cmd_sync(hdev, 0xfc01, 6, bdaddr, HCI_INIT_TIMEOUT);
2258 struct hci_dev *hdev;
2354 hdev = hci_alloc_dev();
2355 if (!hdev)
2357 ret = devm_add_action_or_reset(&pdev->dev, bcm4377_hci_free_dev, hdev);
2361 bcm4377->hdev = hdev;
2363 hdev->bus = HCI_PCI;
2364 hdev->dev_type = HCI_PRIMARY;
2365 hdev->open = bcm4377_hci_open;
2366 hdev->close = bcm4377_hci_close;
2367 hdev->send = bcm4377_hci_send_frame;
2368 hdev->set_bdaddr = bcm4377_hci_set_bdaddr;
2369 hdev->setup = bcm4377_hci_setup;
2372 set_bit(HCI_QUIRK_BROKEN_MWS_TRANSPORT_CONFIG, &hdev->quirks);
2374 set_bit(HCI_QUIRK_BROKEN_EXT_SCAN, &hdev->quirks);
2376 set_bit(HCI_QUIRK_BROKEN_LE_CODED, &hdev->quirks);
2379 hci_set_drvdata(hdev, bcm4377);
2380 SET_HCIDEV_DEV(hdev, &pdev->dev);
2390 ret = hci_register_dev(hdev);
2394 hdev);
2402 ret = hci_suspend_dev(bcm4377->hdev);
2419 return hci_resume_dev(bcm4377->hdev);