Lines Matching refs:doorbell
141 if (index < adev->doorbell.num_doorbells) { in amdgpu_mm_rdoorbell()
142 return readl(adev->doorbell.ptr + index); in amdgpu_mm_rdoorbell()
161 if (index < adev->doorbell.num_doorbells) { in amdgpu_mm_wdoorbell()
162 writel(v, adev->doorbell.ptr + index); in amdgpu_mm_wdoorbell()
345 adev->doorbell.base = pci_resource_start(adev->pdev, 2); in amdgpu_doorbell_init()
346 adev->doorbell.size = pci_resource_len(adev->pdev, 2); in amdgpu_doorbell_init()
348 adev->doorbell.num_doorbells = min_t(u32, adev->doorbell.size / sizeof(u32), in amdgpu_doorbell_init()
350 if (adev->doorbell.num_doorbells == 0) in amdgpu_doorbell_init()
353 adev->doorbell.ptr = ioremap(adev->doorbell.base, adev->doorbell.num_doorbells * sizeof(u32)); in amdgpu_doorbell_init()
354 if (adev->doorbell.ptr == NULL) { in amdgpu_doorbell_init()
357 DRM_INFO("doorbell mmio base: 0x%08X\n", (uint32_t)adev->doorbell.base); in amdgpu_doorbell_init()
358 DRM_INFO("doorbell mmio size: %u\n", (unsigned)adev->doorbell.size); in amdgpu_doorbell_init()
372 iounmap(adev->doorbell.ptr); in amdgpu_doorbell_fini()
373 adev->doorbell.ptr = NULL; in amdgpu_doorbell_fini()
398 if (adev->doorbell.size > adev->doorbell.num_doorbells * sizeof(u32)) { in amdgpu_doorbell_get_kfd_info()
399 *aperture_base = adev->doorbell.base; in amdgpu_doorbell_get_kfd_info()
400 *aperture_size = adev->doorbell.size; in amdgpu_doorbell_get_kfd_info()
401 *start_offset = adev->doorbell.num_doorbells * sizeof(u32); in amdgpu_doorbell_get_kfd_info()