Lines Matching refs:qdev
35 struct qxl_device *qdev = to_qxl(dev); in qxl_irq_handler() local
38 pending = xchg(&qdev->ram_header->int_pending, 0); in qxl_irq_handler()
43 atomic_inc(&qdev->irq_received); in qxl_irq_handler()
46 atomic_inc(&qdev->irq_received_display); in qxl_irq_handler()
47 wake_up_all(&qdev->display_event); in qxl_irq_handler()
48 qxl_queue_garbage_collect(qdev, false); in qxl_irq_handler()
51 atomic_inc(&qdev->irq_received_cursor); in qxl_irq_handler()
52 wake_up_all(&qdev->cursor_event); in qxl_irq_handler()
55 atomic_inc(&qdev->irq_received_io_cmd); in qxl_irq_handler()
56 wake_up_all(&qdev->io_cmd_event); in qxl_irq_handler()
63 qdev->irq_received_error++; in qxl_irq_handler()
67 schedule_work(&qdev->client_monitors_config_work); in qxl_irq_handler()
69 qdev->ram_header->int_mask = QXL_INTERRUPT_MASK; in qxl_irq_handler()
70 outb(0, qdev->io_base + QXL_IO_UPDATE_IRQ); in qxl_irq_handler()
76 struct qxl_device *qdev = container_of(work, struct qxl_device, in qxl_client_monitors_config_work_func() local
79 qxl_display_read_client_monitors_config(qdev); in qxl_client_monitors_config_work_func()
82 int qxl_irq_init(struct qxl_device *qdev) in qxl_irq_init() argument
84 struct drm_device *ddev = &qdev->ddev; in qxl_irq_init()
88 init_waitqueue_head(&qdev->display_event); in qxl_irq_init()
89 init_waitqueue_head(&qdev->cursor_event); in qxl_irq_init()
90 init_waitqueue_head(&qdev->io_cmd_event); in qxl_irq_init()
91 init_waitqueue_head(&qdev->release_event); in qxl_irq_init()
92 INIT_WORK(&qdev->client_monitors_config_work, in qxl_irq_init()
94 atomic_set(&qdev->irq_received, 0); in qxl_irq_init()
95 atomic_set(&qdev->irq_received_display, 0); in qxl_irq_init()
96 atomic_set(&qdev->irq_received_cursor, 0); in qxl_irq_init()
97 atomic_set(&qdev->irq_received_io_cmd, 0); in qxl_irq_init()
98 qdev->irq_received_error = 0; in qxl_irq_init()
100 qdev->ram_header->int_mask = QXL_INTERRUPT_MASK; in qxl_irq_init()