Lines Matching refs:doorbell

284 	if (index < adev->doorbell.num_doorbells) {  in amdgpu_mm_rdoorbell()
285 return readl(adev->doorbell.ptr + index); in amdgpu_mm_rdoorbell()
304 if (index < adev->doorbell.num_doorbells) { in amdgpu_mm_wdoorbell()
305 writel(v, adev->doorbell.ptr + index); in amdgpu_mm_wdoorbell()
322 if (index < adev->doorbell.num_doorbells) { in amdgpu_mm_rdoorbell64()
323 return atomic64_read((atomic64_t *)(adev->doorbell.ptr + index)); in amdgpu_mm_rdoorbell64()
342 if (index < adev->doorbell.num_doorbells) { in amdgpu_mm_wdoorbell64()
343 atomic64_set((atomic64_t *)(adev->doorbell.ptr + index), v); in amdgpu_mm_wdoorbell64()
516 adev->doorbell.base = 0; in amdgpu_device_doorbell_init()
517 adev->doorbell.size = 0; in amdgpu_device_doorbell_init()
518 adev->doorbell.num_doorbells = 0; in amdgpu_device_doorbell_init()
519 adev->doorbell.ptr = NULL; in amdgpu_device_doorbell_init()
527 adev->doorbell.base = pci_resource_start(adev->pdev, 2); in amdgpu_device_doorbell_init()
528 adev->doorbell.size = pci_resource_len(adev->pdev, 2); in amdgpu_device_doorbell_init()
530 adev->doorbell.num_doorbells = min_t(u32, adev->doorbell.size / sizeof(u32), in amdgpu_device_doorbell_init()
532 if (adev->doorbell.num_doorbells == 0) in amdgpu_device_doorbell_init()
535 adev->doorbell.ptr = ioremap(adev->doorbell.base, in amdgpu_device_doorbell_init()
536 adev->doorbell.num_doorbells * in amdgpu_device_doorbell_init()
538 if (adev->doorbell.ptr == NULL) in amdgpu_device_doorbell_init()
553 iounmap(adev->doorbell.ptr); in amdgpu_device_doorbell_fini()
554 adev->doorbell.ptr = NULL; in amdgpu_device_doorbell_fini()