[PATCH] drm/amdgpu: Check resize bar register when system uses large bar
Ma Jun
Jun.Ma2 at amd.com
Tue Dec 19 05:58:02 UTC 2023
Print a warnning message if the system can't access
the resize bar register when using large bar.
Signed-off-by: Ma Jun <Jun.Ma2 at amd.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 4b694696930e..e7aedb4bd66e 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -1417,6 +1417,12 @@ void amdgpu_device_wb_free(struct amdgpu_device *adev, u32 wb)
__clear_bit(wb, adev->wb.used);
}
+static inline void amdgpu_find_rb_register(struct amdgpu_device *adev)
+{
+ if (!pci_find_ext_capability(adev->pdev, PCI_EXT_CAP_ID_REBAR))
+ DRM_WARN("System can't access the resize bar register,please check!!\n");
+}
+
/**
* amdgpu_device_resize_fb_bar - try to resize FB BAR
*
@@ -1444,8 +1450,10 @@ int amdgpu_device_resize_fb_bar(struct amdgpu_device *adev)
/* skip if the bios has already enabled large BAR */
if (adev->gmc.real_vram_size &&
- (pci_resource_len(adev->pdev, 0) >= adev->gmc.real_vram_size))
+ (pci_resource_len(adev->pdev, 0) >= adev->gmc.real_vram_size)) {
+ amdgpu_find_rb_register(adev);
return 0;
+ }
/* Check if the root BUS has 64bit memory resources */
root = adev->pdev->bus;
--
2.34.1
More information about the amd-gfx
mailing list