Lines Matching defs:lldev
130 struct ll_device *lldev = serdev_device_get_drvdata(hu->serdev);
132 if (!IS_ERR(lldev->ext_clk))
133 clk_prepare_enable(lldev->ext_clk);
165 struct ll_device *lldev = serdev_device_get_drvdata(hu->serdev);
167 gpiod_set_value_cansleep(lldev->enable_gpio, 0);
169 clk_disable_unprepare(lldev->ext_clk);
486 static int send_command_from_firmware(struct ll_device *lldev,
495 bt_dev_warn(lldev->hu.hdev,
500 bt_dev_dbg(lldev->hu.hdev, "command type %d", cmd->prefix);
502 skb = __hci_cmd_sync(lldev->hu.hdev, cmd->opcode, cmd->plen,
505 bt_dev_err(lldev->hu.hdev, "send command failed");
517 static int download_firmware(struct ll_device *lldev)
526 version = read_local_version(lldev->hu.hdev);
540 err = request_firmware(&fw, bts_scr_name, &lldev->serdev->dev);
542 bt_dev_err(lldev->hu.hdev, "request_firmware failed(errno %d) for %s",
557 bt_dev_dbg(lldev->hu.hdev, " action size %d, type %d ",
565 bt_dev_dbg(lldev->hu.hdev, "S");
567 err = send_command_from_firmware(lldev, cmd);
573 bt_dev_dbg(lldev->hu.hdev, "W");
576 bt_dev_info(lldev->hu.hdev, "sleep command in scr");
613 struct ll_device *lldev;
620 lldev = serdev_device_get_drvdata(serdev);
628 gpiod_set_value_cansleep(lldev->enable_gpio, 0);
630 gpiod_set_value_cansleep(lldev->enable_gpio, 1);
638 err = download_firmware(lldev);
650 if (!bacmp(&lldev->bdaddr, BDADDR_NONE)) {
655 } else if (bacmp(&lldev->bdaddr, BDADDR_ANY)) {
656 err = ll_set_bdaddr(hu->hdev, &lldev->bdaddr);
690 struct ll_device *lldev;
694 lldev = devm_kzalloc(&serdev->dev, sizeof(struct ll_device), GFP_KERNEL);
695 if (!lldev)
697 hu = &lldev->hu;
699 serdev_device_set_drvdata(serdev, lldev);
700 lldev->serdev = hu->serdev = serdev;
702 lldev->enable_gpio = devm_gpiod_get_optional(&serdev->dev,
705 if (IS_ERR(lldev->enable_gpio))
706 return PTR_ERR(lldev->enable_gpio);
708 lldev->ext_clk = devm_clk_get(&serdev->dev, "ext_clock");
709 if (IS_ERR(lldev->ext_clk) && PTR_ERR(lldev->ext_clk) != -ENOENT)
710 return PTR_ERR(lldev->ext_clk);
735 bacpy(&lldev->bdaddr, BDADDR_NONE);
757 baswap(&lldev->bdaddr, bdaddr);
766 struct ll_device *lldev = serdev_device_get_drvdata(serdev);
768 hci_uart_unregister_device(&lldev->hu);