Use enum instead of hard coded values. There is no functional change.

Signed-off-by: Harish Kasiviswanathan <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu.h           | 13 +++++++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c      |  4 +--
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c    | 28 ++++++++++++-------
 .../gpu/drm/amd/amdgpu/amdgpu_doorbell_mgr.c  |  6 ++--
 drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c        |  4 +--
 drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c        |  4 +--
 drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c        |  4 +--
 drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c         |  4 +--
 drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c         |  4 +--
 drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c         |  4 +--
 drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c         |  6 ++--
 11 files changed, 51 insertions(+), 30 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h 
b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index 39894e38fee4..6b9d103fbff1 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -1441,6 +1441,19 @@ bool amdgpu_device_supports_boco(struct amdgpu_device 
*adev);
 bool amdgpu_device_supports_smart_shift(struct amdgpu_device *adev);
 int amdgpu_device_supports_baco(struct amdgpu_device *adev);
 void amdgpu_device_detect_runtime_pm_mode(struct amdgpu_device *adev);
+
+/**
+ * enum amdgpu_pcie_bar - PCIe BAR index identifiers for P2P access
+ * @AMDGPU_PCIE_BAR_VRAM: VRAM aperture (BAR 0)
+ * @AMDGPU_PCIE_BAR_DOORBELL: Doorbell aperture (BAR 2)
+ * @AMDGPU_PCIE_BAR_MMIO: MMIO remap aperture (BAR 5)
+ */
+enum amdgpu_pcie_bar {
+       AMDGPU_PCIE_BAR_VRAM = 0,
+       AMDGPU_PCIE_BAR_DOORBELL = 2,
+       AMDGPU_PCIE_BAR_MMIO = 5,
+};
+
 bool amdgpu_device_is_peer_accessible(struct amdgpu_device *adev,
                                      struct amdgpu_device *peer_adev);
 int amdgpu_device_baco_enter(struct amdgpu_device *adev);
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c
index 35d04e69aec0..3e8216913e5a 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c
@@ -110,11 +110,11 @@ static bool amdgpu_read_bios_from_vram(struct 
amdgpu_device *adev)
                        return false;
 
        /* FB BAR not enabled */
-       if (pci_resource_len(adev->pdev, 0) == 0)
+       if (pci_resource_len(adev->pdev, AMDGPU_PCIE_BAR_VRAM) == 0)
                return false;
 
        adev->bios = NULL;
-       vram_base = pci_resource_start(adev->pdev, 0);
+       vram_base = pci_resource_start(adev->pdev, AMDGPU_PCIE_BAR_VRAM);
 
        adev->bios = kmalloc(size, GFP_KERNEL);
        if (!adev->bios)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 073f632f295a..5c14fdbc1847 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -1146,7 +1146,7 @@ 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, AMDGPU_PCIE_BAR_VRAM) >= 
adev->gmc.real_vram_size))
                return 0;
 
        /* Check if the root BUS has 64bit memory resources */
@@ -1165,7 +1165,7 @@ int amdgpu_device_resize_fb_bar(struct amdgpu_device 
*adev)
                return 0;
 
        /* Limit the BAR size to what is available */
-       max_size = pci_rebar_get_max_size(adev->pdev, 0);
+       max_size = pci_rebar_get_max_size(adev->pdev, AMDGPU_PCIE_BAR_VRAM);
        if (max_size < 0)
                return 0;
        rbar_size = min(max_size, rbar_size);
@@ -1178,9 +1178,15 @@ int amdgpu_device_resize_fb_bar(struct amdgpu_device 
*adev)
        /* Tear down doorbell as resizing will release BARs */
        amdgpu_doorbell_fini(adev);
 
-       r = pci_resize_resource(adev->pdev, 0, rbar_size,
-                               (adev->asic_type >= CHIP_BONAIRE) ? 1 << 5
-                                                                 : 1 << 2);
+       /*
+        * Resize the VRAM BAR. Exclude the MMIO BAR from being released
+        * during the resize. On Bonaire+ the MMIO BAR is at BAR 5, while
+        * on pre-Bonaire ASICs it is at BAR 2.
+        */
+       r = pci_resize_resource(adev->pdev, AMDGPU_PCIE_BAR_VRAM, rbar_size,
+                               (adev->asic_type >= CHIP_BONAIRE)
+                                       ? BIT(AMDGPU_PCIE_BAR_MMIO)
+                                       : BIT(AMDGPU_PCIE_BAR_DOORBELL));
        if (r == -ENOSPC)
                dev_info(adev->dev,
                         "Not enough PCI address space for a large BAR.");
@@ -1191,7 +1197,7 @@ int amdgpu_device_resize_fb_bar(struct amdgpu_device 
*adev)
         * using the device.
         */
        r = amdgpu_doorbell_init(adev);
-       if (r || (pci_resource_flags(adev->pdev, 0) & IORESOURCE_UNSET))
+       if (r || (pci_resource_flags(adev->pdev, AMDGPU_PCIE_BAR_VRAM) & 
IORESOURCE_UNSET))
                return -ENODEV;
 
        pci_write_config_word(adev->pdev, PCI_COMMAND, cmd);
@@ -3814,11 +3820,13 @@ int amdgpu_device_init(struct amdgpu_device *adev,
        /* Registers mapping */
        /* TODO: block userspace mapping of io register */
        if (adev->asic_type >= CHIP_BONAIRE) {
-               adev->rmmio_base = pci_resource_start(adev->pdev, 5);
-               adev->rmmio_size = pci_resource_len(adev->pdev, 5);
+               /* Bonaire and newer use BAR 5 for MMIO registers */
+               adev->rmmio_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_MMIO);
+               adev->rmmio_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_MMIO);
        } else {
-               adev->rmmio_base = pci_resource_start(adev->pdev, 2);
-               adev->rmmio_size = pci_resource_len(adev->pdev, 2);
+               /* Pre-Bonaire chips use BAR 2 for MMIO registers */
+               adev->rmmio_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_DOORBELL);
+               adev->rmmio_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_DOORBELL);
        }
 
        for (i = 0; i < AMD_IP_BLOCK_TYPE_NUM; i++)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell_mgr.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell_mgr.c
index bc7858567321..0251625887d0 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell_mgr.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell_mgr.c
@@ -201,14 +201,14 @@ int amdgpu_doorbell_init(struct amdgpu_device *adev)
                return 0;
        }
 
-       if (pci_resource_flags(adev->pdev, 2) & IORESOURCE_UNSET)
+       if (pci_resource_flags(adev->pdev, AMDGPU_PCIE_BAR_DOORBELL) & 
IORESOURCE_UNSET)
                return -EINVAL;
 
        amdgpu_asic_init_doorbell_index(adev);
 
        /* doorbell bar mapping */
-       adev->doorbell.base = pci_resource_start(adev->pdev, 2);
-       adev->doorbell.size = pci_resource_len(adev->pdev, 2);
+       adev->doorbell.base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_DOORBELL);
+       adev->doorbell.size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_DOORBELL);
 
        adev->doorbell.num_kernel_doorbells =
                min_t(u32, adev->doorbell.size / sizeof(u32),
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
index e1ace7d44ffd..83611edbd7b8 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
@@ -694,8 +694,8 @@ static int gmc_v10_0_mc_init(struct amdgpu_device *adev)
                if (r)
                        return r;
        }
-       adev->gmc.aper_base = pci_resource_start(adev->pdev, 0);
-       adev->gmc.aper_size = pci_resource_len(adev->pdev, 0);
+       adev->gmc.aper_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
+       adev->gmc.aper_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
 
 #ifdef CONFIG_X86_64
        if ((adev->flags & AMD_IS_APU) && !amdgpu_passthrough(adev)) {
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
index 94d6631ce0bc..887edd7ea7c8 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
@@ -694,8 +694,8 @@ static int gmc_v11_0_mc_init(struct amdgpu_device *adev)
                if (r)
                        return r;
        }
-       adev->gmc.aper_base = pci_resource_start(adev->pdev, 0);
-       adev->gmc.aper_size = pci_resource_len(adev->pdev, 0);
+       adev->gmc.aper_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
+       adev->gmc.aper_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
 
 #ifdef CONFIG_X86_64
        if ((adev->flags & AMD_IS_APU) && !amdgpu_passthrough(adev)) {
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c
index 5bdd4b9b7893..a2a81e601e99 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c
@@ -746,8 +746,8 @@ static int gmc_v12_0_mc_init(struct amdgpu_device *adev)
                        return r;
        }
 
-       adev->gmc.aper_base = pci_resource_start(adev->pdev, 0);
-       adev->gmc.aper_size = pci_resource_len(adev->pdev, 0);
+       adev->gmc.aper_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
+       adev->gmc.aper_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
 
 #ifdef CONFIG_X86_64
        if (((adev->flags & AMD_IS_APU) && !amdgpu_passthrough(adev)) ||
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
index cc272a96fcef..14963e9edac0 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
@@ -323,8 +323,8 @@ static int gmc_v6_0_mc_init(struct amdgpu_device *adev)
                if (r)
                        return r;
        }
-       adev->gmc.aper_base = pci_resource_start(adev->pdev, 0);
-       adev->gmc.aper_size = pci_resource_len(adev->pdev, 0);
+       adev->gmc.aper_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
+       adev->gmc.aper_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
        adev->gmc.visible_vram_size = adev->gmc.aper_size;
 
        /* set the gart size */
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
index fb5e33c8a5ee..a0ab5ab7df94 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
@@ -379,8 +379,8 @@ static int gmc_v7_0_mc_init(struct amdgpu_device *adev)
                if (r)
                        return r;
        }
-       adev->gmc.aper_base = pci_resource_start(adev->pdev, 0);
-       adev->gmc.aper_size = pci_resource_len(adev->pdev, 0);
+       adev->gmc.aper_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
+       adev->gmc.aper_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
 
 #ifdef CONFIG_X86_64
        if ((adev->flags & AMD_IS_APU) &&
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
index 963d5b0fa87b..5f83311d7c26 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
@@ -572,8 +572,8 @@ static int gmc_v8_0_mc_init(struct amdgpu_device *adev)
                if (r)
                        return r;
        }
-       adev->gmc.aper_base = pci_resource_start(adev->pdev, 0);
-       adev->gmc.aper_size = pci_resource_len(adev->pdev, 0);
+       adev->gmc.aper_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
+       adev->gmc.aper_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
 
 #ifdef CONFIG_X86_64
        if ((adev->flags & AMD_IS_APU) && !amdgpu_passthrough(adev)) {
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
index e7b78027002b..0cc4ac7e8ad9 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
@@ -1593,7 +1593,7 @@ static int gmc_v9_0_early_init(struct amdgpu_ip_block 
*ip_block)
                 * mode.
                 */
                adev->gmc.is_app_apu = (pkg_type == AMDGPU_PKG_TYPE_APU &&
-                                       !pci_resource_len(adev->pdev, 0));
+                                       !pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM));
        }
 
        gmc_v9_0_set_gmc_funcs(adev);
@@ -1705,8 +1705,8 @@ static int gmc_v9_0_mc_init(struct amdgpu_device *adev)
                if (r)
                        return r;
        }
-       adev->gmc.aper_base = pci_resource_start(adev->pdev, 0);
-       adev->gmc.aper_size = pci_resource_len(adev->pdev, 0);
+       adev->gmc.aper_base = pci_resource_start(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
+       adev->gmc.aper_size = pci_resource_len(adev->pdev, 
AMDGPU_PCIE_BAR_VRAM);
 
 #ifdef CONFIG_X86_64
        /*
-- 
2.43.0

Reply via email to