blitq 315 drivers/gpu/drm/via/via_dmablit.c drm_via_blitq_t *blitq = dev_priv->blit_queues + engine; blitq 322 drivers/gpu/drm/via/via_dmablit.c engine, from_irq, (unsigned long) blitq); blitq 325 drivers/gpu/drm/via/via_dmablit.c spin_lock(&blitq->blit_lock); blitq 327 drivers/gpu/drm/via/via_dmablit.c spin_lock_irqsave(&blitq->blit_lock, irqsave); blitq 329 drivers/gpu/drm/via/via_dmablit.c done_transfer = blitq->is_active && blitq 331 drivers/gpu/drm/via/via_dmablit.c done_transfer = done_transfer || (blitq->aborting && !(status & VIA_DMA_CSR_DE)); blitq 333 drivers/gpu/drm/via/via_dmablit.c cur = blitq->cur; blitq 336 drivers/gpu/drm/via/via_dmablit.c blitq->blits[cur]->aborted = blitq->aborting; blitq 337 drivers/gpu/drm/via/via_dmablit.c blitq->done_blit_handle++; blitq 338 drivers/gpu/drm/via/via_dmablit.c wake_up(blitq->blit_queue + cur); blitq 343 drivers/gpu/drm/via/via_dmablit.c blitq->cur = cur; blitq 351 drivers/gpu/drm/via/via_dmablit.c blitq->is_active = 0; blitq 352 drivers/gpu/drm/via/via_dmablit.c blitq->aborting = 0; blitq 353 drivers/gpu/drm/via/via_dmablit.c schedule_work(&blitq->wq); blitq 355 drivers/gpu/drm/via/via_dmablit.c } else if (blitq->is_active && time_after_eq(jiffies, blitq->end)) { blitq 362 drivers/gpu/drm/via/via_dmablit.c blitq->aborting = 1; blitq 363 drivers/gpu/drm/via/via_dmablit.c blitq->end = jiffies + HZ; blitq 366 drivers/gpu/drm/via/via_dmablit.c if (!blitq->is_active) { blitq 367 drivers/gpu/drm/via/via_dmablit.c if (blitq->num_outstanding) { blitq 368 drivers/gpu/drm/via/via_dmablit.c via_fire_dmablit(dev, blitq->blits[cur], engine); blitq 369 drivers/gpu/drm/via/via_dmablit.c blitq->is_active = 1; blitq 370 drivers/gpu/drm/via/via_dmablit.c blitq->cur = cur; blitq 371 drivers/gpu/drm/via/via_dmablit.c blitq->num_outstanding--; blitq 372 drivers/gpu/drm/via/via_dmablit.c blitq->end = jiffies + HZ; blitq 373 drivers/gpu/drm/via/via_dmablit.c if (!timer_pending(&blitq->poll_timer)) blitq 374 drivers/gpu/drm/via/via_dmablit.c mod_timer(&blitq->poll_timer, jiffies + 1); blitq 376 drivers/gpu/drm/via/via_dmablit.c if (timer_pending(&blitq->poll_timer)) blitq 377 drivers/gpu/drm/via/via_dmablit.c del_timer(&blitq->poll_timer); blitq 383 drivers/gpu/drm/via/via_dmablit.c spin_unlock(&blitq->blit_lock); blitq 385 drivers/gpu/drm/via/via_dmablit.c spin_unlock_irqrestore(&blitq->blit_lock, irqsave); blitq 395 drivers/gpu/drm/via/via_dmablit.c via_dmablit_active(drm_via_blitq_t *blitq, int engine, uint32_t handle, wait_queue_head_t **queue) blitq 401 drivers/gpu/drm/via/via_dmablit.c spin_lock_irqsave(&blitq->blit_lock, irqsave); blitq 407 drivers/gpu/drm/via/via_dmablit.c active = ((blitq->done_blit_handle - handle) > (1 << 23)) && blitq 408 drivers/gpu/drm/via/via_dmablit.c ((blitq->cur_blit_handle - handle) <= (1 << 23)); blitq 411 drivers/gpu/drm/via/via_dmablit.c slot = handle - blitq->done_blit_handle + blitq->cur - 1; blitq 414 drivers/gpu/drm/via/via_dmablit.c *queue = blitq->blit_queue + slot; blitq 417 drivers/gpu/drm/via/via_dmablit.c spin_unlock_irqrestore(&blitq->blit_lock, irqsave); blitq 431 drivers/gpu/drm/via/via_dmablit.c drm_via_blitq_t *blitq = dev_priv->blit_queues + engine; blitq 435 drivers/gpu/drm/via/via_dmablit.c if (via_dmablit_active(blitq, engine, handle, &queue)) { blitq 437 drivers/gpu/drm/via/via_dmablit.c !via_dmablit_active(blitq, engine, handle, NULL)); blitq 459 drivers/gpu/drm/via/via_dmablit.c drm_via_blitq_t *blitq = from_timer(blitq, t, poll_timer); blitq 460 drivers/gpu/drm/via/via_dmablit.c struct drm_device *dev = blitq->dev; blitq 462 drivers/gpu/drm/via/via_dmablit.c (blitq - ((drm_via_private_t *)dev->dev_private)->blit_queues); blitq 469 drivers/gpu/drm/via/via_dmablit.c if (!timer_pending(&blitq->poll_timer)) { blitq 470 drivers/gpu/drm/via/via_dmablit.c mod_timer(&blitq->poll_timer, jiffies + 1); blitq 495 drivers/gpu/drm/via/via_dmablit.c drm_via_blitq_t *blitq = container_of(work, drm_via_blitq_t, wq); blitq 496 drivers/gpu/drm/via/via_dmablit.c struct drm_device *dev = blitq->dev; blitq 503 drivers/gpu/drm/via/via_dmablit.c (blitq - ((drm_via_private_t *)dev->dev_private)->blit_queues)); blitq 505 drivers/gpu/drm/via/via_dmablit.c spin_lock_irqsave(&blitq->blit_lock, irqsave); blitq 507 drivers/gpu/drm/via/via_dmablit.c while (blitq->serviced != blitq->cur) { blitq 509 drivers/gpu/drm/via/via_dmablit.c cur_released = blitq->serviced++; blitq 513 drivers/gpu/drm/via/via_dmablit.c if (blitq->serviced >= VIA_NUM_BLIT_SLOTS) blitq 514 drivers/gpu/drm/via/via_dmablit.c blitq->serviced = 0; blitq 516 drivers/gpu/drm/via/via_dmablit.c cur_sg = blitq->blits[cur_released]; blitq 517 drivers/gpu/drm/via/via_dmablit.c blitq->num_free++; blitq 519 drivers/gpu/drm/via/via_dmablit.c spin_unlock_irqrestore(&blitq->blit_lock, irqsave); blitq 521 drivers/gpu/drm/via/via_dmablit.c wake_up(&blitq->busy_queue); blitq 526 drivers/gpu/drm/via/via_dmablit.c spin_lock_irqsave(&blitq->blit_lock, irqsave); blitq 529 drivers/gpu/drm/via/via_dmablit.c spin_unlock_irqrestore(&blitq->blit_lock, irqsave); blitq 543 drivers/gpu/drm/via/via_dmablit.c drm_via_blitq_t *blitq; blitq 548 drivers/gpu/drm/via/via_dmablit.c blitq = dev_priv->blit_queues + i; blitq 549 drivers/gpu/drm/via/via_dmablit.c blitq->dev = dev; blitq 550 drivers/gpu/drm/via/via_dmablit.c blitq->cur_blit_handle = 0; blitq 551 drivers/gpu/drm/via/via_dmablit.c blitq->done_blit_handle = 0; blitq 552 drivers/gpu/drm/via/via_dmablit.c blitq->head = 0; blitq 553 drivers/gpu/drm/via/via_dmablit.c blitq->cur = 0; blitq 554 drivers/gpu/drm/via/via_dmablit.c blitq->serviced = 0; blitq 555 drivers/gpu/drm/via/via_dmablit.c blitq->num_free = VIA_NUM_BLIT_SLOTS - 1; blitq 556 drivers/gpu/drm/via/via_dmablit.c blitq->num_outstanding = 0; blitq 557 drivers/gpu/drm/via/via_dmablit.c blitq->is_active = 0; blitq 558 drivers/gpu/drm/via/via_dmablit.c blitq->aborting = 0; blitq 559 drivers/gpu/drm/via/via_dmablit.c spin_lock_init(&blitq->blit_lock); blitq 561 drivers/gpu/drm/via/via_dmablit.c init_waitqueue_head(blitq->blit_queue + j); blitq 562 drivers/gpu/drm/via/via_dmablit.c init_waitqueue_head(&blitq->busy_queue); blitq 563 drivers/gpu/drm/via/via_dmablit.c INIT_WORK(&blitq->wq, via_dmablit_workqueue); blitq 564 drivers/gpu/drm/via/via_dmablit.c timer_setup(&blitq->poll_timer, via_dmablit_timer, 0); blitq 677 drivers/gpu/drm/via/via_dmablit.c via_dmablit_grab_slot(drm_via_blitq_t *blitq, int engine) blitq 682 drivers/gpu/drm/via/via_dmablit.c DRM_DEBUG("Num free is %d\n", blitq->num_free); blitq 683 drivers/gpu/drm/via/via_dmablit.c spin_lock_irqsave(&blitq->blit_lock, irqsave); blitq 684 drivers/gpu/drm/via/via_dmablit.c while (blitq->num_free == 0) { blitq 685 drivers/gpu/drm/via/via_dmablit.c spin_unlock_irqrestore(&blitq->blit_lock, irqsave); blitq 687 drivers/gpu/drm/via/via_dmablit.c VIA_WAIT_ON(ret, blitq->busy_queue, HZ, blitq->num_free > 0); blitq 691 drivers/gpu/drm/via/via_dmablit.c spin_lock_irqsave(&blitq->blit_lock, irqsave); blitq 694 drivers/gpu/drm/via/via_dmablit.c blitq->num_free--; blitq 695 drivers/gpu/drm/via/via_dmablit.c spin_unlock_irqrestore(&blitq->blit_lock, irqsave); blitq 705 drivers/gpu/drm/via/via_dmablit.c via_dmablit_release_slot(drm_via_blitq_t *blitq) blitq 709 drivers/gpu/drm/via/via_dmablit.c spin_lock_irqsave(&blitq->blit_lock, irqsave); blitq 710 drivers/gpu/drm/via/via_dmablit.c blitq->num_free++; blitq 711 drivers/gpu/drm/via/via_dmablit.c spin_unlock_irqrestore(&blitq->blit_lock, irqsave); blitq 712 drivers/gpu/drm/via/via_dmablit.c wake_up(&blitq->busy_queue); blitq 725 drivers/gpu/drm/via/via_dmablit.c drm_via_blitq_t *blitq; blitq 736 drivers/gpu/drm/via/via_dmablit.c blitq = dev_priv->blit_queues + engine; blitq 737 drivers/gpu/drm/via/via_dmablit.c if (0 != (ret = via_dmablit_grab_slot(blitq, engine))) blitq 740 drivers/gpu/drm/via/via_dmablit.c via_dmablit_release_slot(blitq); blitq 744 drivers/gpu/drm/via/via_dmablit.c via_dmablit_release_slot(blitq); blitq 748 drivers/gpu/drm/via/via_dmablit.c spin_lock_irqsave(&blitq->blit_lock, irqsave); blitq 750 drivers/gpu/drm/via/via_dmablit.c blitq->blits[blitq->head++] = vsg; blitq 751 drivers/gpu/drm/via/via_dmablit.c if (blitq->head >= VIA_NUM_BLIT_SLOTS) blitq 752 drivers/gpu/drm/via/via_dmablit.c blitq->head = 0; blitq 753 drivers/gpu/drm/via/via_dmablit.c blitq->num_outstanding++; blitq 754 drivers/gpu/drm/via/via_dmablit.c xfer->sync.sync_handle = ++blitq->cur_blit_handle; blitq 756 drivers/gpu/drm/via/via_dmablit.c spin_unlock_irqrestore(&blitq->blit_lock, irqsave);