Lines Matching refs:rdev
77 struct drm_device *ddev = p->rdev->ddev; in radeon_cs_parser_relocs()
125 (i == 0 || drm_pci_device_is_agp(p->rdev->ddev) || in radeon_cs_parser_relocs()
126 p->rdev->family == CHIP_RS780 || in radeon_cs_parser_relocs()
127 p->rdev->family == CHIP_RS880)) { in radeon_cs_parser_relocs()
177 p->vm_bos = radeon_vm_get_bos(p->rdev, p->ib.vm, in radeon_cs_parser_relocs()
182 r = radeon_bo_list_validate(p->rdev, &p->ticket, &p->validated, p->ring); in radeon_cs_parser_relocs()
202 if (p->rdev->family >= CHIP_TAHITI) { in radeon_cs_get_ring()
211 if (p->rdev->family >= CHIP_CAYMAN) { in radeon_cs_get_ring()
216 } else if (p->rdev->family >= CHIP_RV770) { in radeon_cs_get_ring()
242 r = radeon_sync_resv(p->rdev, &p->ib.sync, resv, in radeon_cs_sync_rings()
328 if (!p->rdev || !(p->rdev->flags & RADEON_IS_AGP)) in radeon_cs_parser_init()
350 if (p->rdev) { in radeon_cs_parser_init()
352 !p->rdev->vm_manager.enabled) { in radeon_cs_parser_init()
362 if (p->rdev->asic->ring[p->ring]->cs_parse == NULL) { in radeon_cs_parser_init()
367 if (p->rdev->asic->ring[p->ring]->ib_parse == NULL) { in radeon_cs_parser_init()
437 radeon_ib_free(parser->rdev, &parser->ib); in radeon_cs_parser_fini()
438 radeon_ib_free(parser->rdev, &parser->const_ib); in radeon_cs_parser_fini()
441 static int radeon_cs_ib_chunk(struct radeon_device *rdev, in radeon_cs_ib_chunk() argument
452 r = radeon_cs_parse(rdev, parser->ring, parser); in radeon_cs_ib_chunk()
466 radeon_uvd_note_usage(rdev); in radeon_cs_ib_chunk()
469 radeon_vce_note_usage(rdev); in radeon_cs_ib_chunk()
471 r = radeon_ib_schedule(rdev, &parser->ib, NULL, true); in radeon_cs_ib_chunk()
481 struct radeon_device *rdev = p->rdev; in radeon_bo_vm_update_pte() local
485 r = radeon_vm_update_page_directory(rdev, vm); in radeon_bo_vm_update_pte()
489 r = radeon_vm_clear_freed(rdev, vm); in radeon_bo_vm_update_pte()
498 r = radeon_vm_bo_update(rdev, vm->ib_bo_va, in radeon_bo_vm_update_pte()
499 &rdev->ring_tmp_bo.bo->tbo.mem); in radeon_bo_vm_update_pte()
509 dev_err(rdev->dev, "bo %p not in vm %p\n", bo, vm); in radeon_bo_vm_update_pte()
513 r = radeon_vm_bo_update(rdev, bo_va, &bo->tbo.mem); in radeon_bo_vm_update_pte()
520 return radeon_vm_clear_invalids(rdev, vm); in radeon_bo_vm_update_pte()
523 static int radeon_cs_ib_vm_chunk(struct radeon_device *rdev, in radeon_cs_ib_vm_chunk() argument
536 r = radeon_ring_ib_parse(rdev, parser->ring, &parser->const_ib); in radeon_cs_ib_vm_chunk()
542 r = radeon_ring_ib_parse(rdev, parser->ring, &parser->ib); in radeon_cs_ib_vm_chunk()
548 radeon_uvd_note_usage(rdev); in radeon_cs_ib_vm_chunk()
563 if ((rdev->family >= CHIP_TAHITI) && in radeon_cs_ib_vm_chunk()
565 r = radeon_ib_schedule(rdev, &parser->ib, &parser->const_ib, true); in radeon_cs_ib_vm_chunk()
567 r = radeon_ib_schedule(rdev, &parser->ib, NULL, true); in radeon_cs_ib_vm_chunk()
575 static int radeon_cs_handle_lockup(struct radeon_device *rdev, int r) in radeon_cs_handle_lockup() argument
578 r = radeon_gpu_reset(rdev); in radeon_cs_handle_lockup()
585 static int radeon_cs_ib_fill(struct radeon_device *rdev, struct radeon_cs_parser *parser) in radeon_cs_ib_fill() argument
598 if ((rdev->family >= CHIP_TAHITI) && in radeon_cs_ib_fill()
605 r = radeon_ib_get(rdev, parser->ring, &parser->const_ib, in radeon_cs_ib_fill()
627 r = radeon_ib_get(rdev, parser->ring, &parser->ib, in radeon_cs_ib_fill()
643 struct radeon_device *rdev = dev->dev_private; in radeon_cs_ioctl() local
647 down_read(&rdev->exclusive_lock); in radeon_cs_ioctl()
648 if (!rdev->accel_working) { in radeon_cs_ioctl()
649 up_read(&rdev->exclusive_lock); in radeon_cs_ioctl()
652 if (rdev->in_reset) { in radeon_cs_ioctl()
653 up_read(&rdev->exclusive_lock); in radeon_cs_ioctl()
654 r = radeon_gpu_reset(rdev); in radeon_cs_ioctl()
662 parser.rdev = rdev; in radeon_cs_ioctl()
663 parser.dev = rdev->dev; in radeon_cs_ioctl()
664 parser.family = rdev->family; in radeon_cs_ioctl()
669 up_read(&rdev->exclusive_lock); in radeon_cs_ioctl()
670 r = radeon_cs_handle_lockup(rdev, r); in radeon_cs_ioctl()
674 r = radeon_cs_ib_fill(rdev, &parser); in radeon_cs_ioctl()
683 up_read(&rdev->exclusive_lock); in radeon_cs_ioctl()
684 r = radeon_cs_handle_lockup(rdev, r); in radeon_cs_ioctl()
690 r = radeon_cs_ib_chunk(rdev, &parser); in radeon_cs_ioctl()
694 r = radeon_cs_ib_vm_chunk(rdev, &parser); in radeon_cs_ioctl()
700 up_read(&rdev->exclusive_lock); in radeon_cs_ioctl()
701 r = radeon_cs_handle_lockup(rdev, r); in radeon_cs_ioctl()
718 struct radeon_device *rdev = p->rdev; in radeon_cs_packet_parse() local
734 if (rdev->family < CHIP_R600) { in radeon_cs_packet_parse()