Lines Matching refs:bdev
249 struct bcm_device *bdev = data; in bcm_host_wake() local
251 bt_dev_dbg(bdev, "Host wake IRQ"); in bcm_host_wake()
253 pm_runtime_get(bdev->dev); in bcm_host_wake()
254 pm_runtime_mark_last_busy(bdev->dev); in bcm_host_wake()
255 pm_runtime_put_autosuspend(bdev->dev); in bcm_host_wake()
262 struct bcm_device *bdev = bcm->dev; in bcm_request_irq() local
266 if (!bcm_device_exists(bdev)) { in bcm_request_irq()
271 if (bdev->irq <= 0) { in bcm_request_irq()
276 err = devm_request_irq(bdev->dev, bdev->irq, bcm_host_wake, in bcm_request_irq()
277 bdev->irq_active_low ? IRQF_TRIGGER_FALLING : in bcm_request_irq()
279 "host_wake", bdev); in bcm_request_irq()
281 bdev->irq = err; in bcm_request_irq()
285 device_init_wakeup(bdev->dev, true); in bcm_request_irq()
287 pm_runtime_set_autosuspend_delay(bdev->dev, in bcm_request_irq()
289 pm_runtime_use_autosuspend(bdev->dev); in bcm_request_irq()
290 pm_runtime_set_active(bdev->dev); in bcm_request_irq()
291 pm_runtime_enable(bdev->dev); in bcm_request_irq()
432 struct bcm_device *bdev = NULL; in bcm_close() local
441 bdev = serdev_device_get_drvdata(hu->serdev); in bcm_close()
443 bdev = bcm->dev; in bcm_close()
445 bdev->hu = NULL; in bcm_close()
449 if (bdev) { in bcm_close()
450 if (IS_ENABLED(CONFIG_PM) && bdev->irq > 0) { in bcm_close()
451 devm_free_irq(bdev->dev, bdev->irq, bdev); in bcm_close()
452 device_init_wakeup(bdev->dev, false); in bcm_close()
453 pm_runtime_disable(bdev->dev); in bcm_close()
456 err = bcm_gpio_set_power(bdev, false); in bcm_close()
460 pm_runtime_set_suspended(bdev->dev); in bcm_close()
617 struct bcm_device *bdev = NULL; in bcm_dequeue() local
622 bdev = bcm->dev; in bcm_dequeue()
623 pm_runtime_get_sync(bdev->dev); in bcm_dequeue()
629 if (bdev) { in bcm_dequeue()
630 pm_runtime_mark_last_busy(bdev->dev); in bcm_dequeue()
631 pm_runtime_put_autosuspend(bdev->dev); in bcm_dequeue()
642 struct bcm_device *bdev = dev_get_drvdata(dev); in bcm_suspend_device() local
645 bt_dev_dbg(bdev, ""); in bcm_suspend_device()
647 if (!bdev->is_suspended && bdev->hu) { in bcm_suspend_device()
648 hci_uart_set_flow_control(bdev->hu, true); in bcm_suspend_device()
651 bdev->is_suspended = true; in bcm_suspend_device()
655 err = bdev->set_device_wakeup(bdev, false); in bcm_suspend_device()
657 if (bdev->is_suspended && bdev->hu) { in bcm_suspend_device()
658 bdev->is_suspended = false; in bcm_suspend_device()
659 hci_uart_set_flow_control(bdev->hu, false); in bcm_suspend_device()
664 bt_dev_dbg(bdev, "suspend, delaying 15 ms"); in bcm_suspend_device()
672 struct bcm_device *bdev = dev_get_drvdata(dev); in bcm_resume_device() local
675 bt_dev_dbg(bdev, ""); in bcm_resume_device()
677 err = bdev->set_device_wakeup(bdev, true); in bcm_resume_device()
683 bt_dev_dbg(bdev, "resume, delaying 15 ms"); in bcm_resume_device()
687 if (bdev->is_suspended && bdev->hu) { in bcm_resume_device()
688 bdev->is_suspended = false; in bcm_resume_device()
690 hci_uart_set_flow_control(bdev->hu, false); in bcm_resume_device()
701 struct bcm_device *bdev = dev_get_drvdata(dev); in bcm_suspend() local
704 bt_dev_dbg(bdev, "suspend: is_suspended %d", bdev->is_suspended); in bcm_suspend()
714 if (!bdev->hu) in bcm_suspend()
720 if (device_may_wakeup(dev) && bdev->irq > 0) { in bcm_suspend()
721 error = enable_irq_wake(bdev->irq); in bcm_suspend()
723 bt_dev_dbg(bdev, "BCM irq: enabled"); in bcm_suspend()
735 struct bcm_device *bdev = dev_get_drvdata(dev); in bcm_resume() local
738 bt_dev_dbg(bdev, "resume: is_suspended %d", bdev->is_suspended); in bcm_resume()
748 if (!bdev->hu) in bcm_resume()
751 if (device_may_wakeup(dev) && bdev->irq > 0) { in bcm_resume()
752 disable_irq_wake(bdev->irq); in bcm_resume()
753 bt_dev_dbg(bdev, "BCM irq: disabled"); in bcm_resume()
1007 static int bcm_of_probe(struct bcm_device *bdev) in bcm_of_probe() argument
1009 device_property_read_u32(bdev->dev, "max-speed", &bdev->oper_speed); in bcm_of_probe()