Keeps things consistent now that we make use of struct resource. This
should keep us covered in case we ever get huge amounts of stolen
memory.

v2: bunch of missing conversions (Chris)

Signed-off-by: Matthew Auld <matthew.a...@intel.com>
Cc: Joonas Lahtinen <joonas.lahti...@linux.intel.com>
Cc: Chris Wilson <ch...@chris-wilson.co.uk>
Cc: Paulo Zanoni <paulo.r.zan...@intel.com>
---
 drivers/char/agp/intel-gtt.c           | 14 +++++-----
 drivers/gpu/drm/i915/i915_debugfs.c    |  4 +--
 drivers/gpu/drm/i915/i915_drv.h        |  9 ++++---
 drivers/gpu/drm/i915/i915_gem_gtt.c    | 10 ++++----
 drivers/gpu/drm/i915/i915_gem_gtt.h    |  6 ++---
 drivers/gpu/drm/i915/i915_gem_stolen.c | 47 +++++++++++++++++-----------------
 drivers/gpu/drm/i915/intel_pm.c        | 10 ++++----
 include/drm/intel-gtt.h                |  4 +--
 8 files changed, 52 insertions(+), 52 deletions(-)

diff --git a/drivers/char/agp/intel-gtt.c b/drivers/char/agp/intel-gtt.c
index 9b6b6023193b..6a2a7b062eac 100644
--- a/drivers/char/agp/intel-gtt.c
+++ b/drivers/char/agp/intel-gtt.c
@@ -80,7 +80,7 @@ static struct _intel_private {
        unsigned int needs_dmar : 1;
        phys_addr_t gma_bus_addr;
        /*  Size of memory reserved for graphics by the BIOS */
-       unsigned int stolen_size;
+       resource_size_t stolen_size;
        /* Total number of gtt entries. */
        unsigned int gtt_total_entries;
        /* Part of the gtt that is mappable by the cpu, for those chips where
@@ -333,13 +333,13 @@ static void i810_write_entry(dma_addr_t addr, unsigned 
int entry,
        writel_relaxed(addr | pte_flags, intel_private.gtt + entry);
 }
 
-static unsigned int intel_gtt_stolen_size(void)
+static resource_size_t intel_gtt_stolen_size(void)
 {
        u16 gmch_ctrl;
        u8 rdct;
        int local = 0;
        static const int ddt[4] = { 0, 16, 32, 64 };
-       unsigned int stolen_size = 0;
+       resource_size_t stolen_size = 0;
 
        if (INTEL_GTT_GEN == 1)
                return 0; /* no stolen mem on i81x */
@@ -417,8 +417,8 @@ static unsigned int intel_gtt_stolen_size(void)
        }
 
        if (stolen_size > 0) {
-               dev_info(&intel_private.bridge_dev->dev, "detected %dK %s 
memory\n",
-                      stolen_size / KB(1), local ? "local" : "stolen");
+               dev_info(&intel_private.bridge_dev->dev, "detected %lluK %s 
memory\n",
+                      (u64)stolen_size / KB(1), local ? "local" : "stolen");
        } else {
                dev_info(&intel_private.bridge_dev->dev,
                       "no pre-allocated video memory detected\n");
@@ -1422,9 +1422,9 @@ int intel_gmch_probe(struct pci_dev *bridge_pdev, struct 
pci_dev *gpu_pdev,
 EXPORT_SYMBOL(intel_gmch_probe);
 
 void intel_gtt_get(u64 *gtt_total,
-                  u32 *stolen_size,
+                  resource_size_t *stolen_size,
                   phys_addr_t *mappable_base,
-                  u64 *mappable_end)
+                  resource_size_t *mappable_end)
 {
        *gtt_total = intel_private.gtt_total_entries << PAGE_SHIFT;
        *stolen_size = intel_private.stolen_size;
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c 
b/drivers/gpu/drm/i915/i915_debugfs.c
index 28294470ae31..fad4116f61c5 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -522,8 +522,8 @@ static int i915_gem_object_info(struct seq_file *m, void 
*data)
        seq_printf(m, "%u display objects (globally pinned), %llu bytes\n",
                   dpy_count, dpy_size);
 
-       seq_printf(m, "%llu [%llu] gtt total\n",
-                  ggtt->base.total, ggtt->mappable_end);
+       seq_printf(m, "%llu [%pa] gtt total\n",
+                  ggtt->base.total, &ggtt->mappable_end);
        seq_printf(m, "Supported page sizes: %s\n",
                   stringify_page_sizes(INTEL_INFO(dev_priv)->page_sizes,
                                        buf, sizeof(buf)));
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 18905badd494..4e749df0cae8 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -3911,12 +3911,13 @@ void i915_gem_stolen_remove_node(struct 
drm_i915_private *dev_priv,
 int i915_gem_init_stolen(struct drm_i915_private *dev_priv);
 void i915_gem_cleanup_stolen(struct drm_device *dev);
 struct drm_i915_gem_object *
-i915_gem_object_create_stolen(struct drm_i915_private *dev_priv, u32 size);
+i915_gem_object_create_stolen(struct drm_i915_private *dev_priv,
+                             resource_size_t size);
 struct drm_i915_gem_object *
 i915_gem_object_create_stolen_for_preallocated(struct drm_i915_private 
*dev_priv,
-                                              u32 stolen_offset,
-                                              u32 gtt_offset,
-                                              u32 size);
+                                              resource_size_t stolen_offset,
+                                              resource_size_t gtt_offset,
+                                              resource_size_t size);
 
 /* i915_gem_internal.c */
 struct drm_i915_gem_object *
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c 
b/drivers/gpu/drm/i915/i915_gem_gtt.c
index 8d19480b65c5..32357fae1f54 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
@@ -3356,7 +3356,7 @@ static int gen6_gmch_probe(struct i915_ggtt *ggtt)
         * a coarse sanity check.
         */
        if (ggtt->mappable_end < (64<<20) || ggtt->mappable_end > (512<<20)) {
-               DRM_ERROR("Unknown GMADR size (%llx)\n", ggtt->mappable_end);
+               DRM_ERROR("Unknown GMADR size (%pa)\n", &ggtt->mappable_end);
                return -ENXIO;
        }
 
@@ -3469,7 +3469,7 @@ int i915_ggtt_probe_hw(struct drm_i915_private *dev_priv)
         */
        if (HAS_GUC(dev_priv) && i915_modparams.enable_guc_loading) {
                ggtt->base.total = min_t(u64, ggtt->base.total, GUC_GGTT_TOP);
-               ggtt->mappable_end = min(ggtt->mappable_end, ggtt->base.total);
+               ggtt->mappable_end = min_t(u64, ggtt->mappable_end, 
ggtt->base.total);
        }
 
        if ((ggtt->base.total - 1) >> 32) {
@@ -3477,13 +3477,13 @@ int i915_ggtt_probe_hw(struct drm_i915_private 
*dev_priv)
                          " of address space! Found %lldM!\n",
                          ggtt->base.total >> 20);
                ggtt->base.total = 1ULL << 32;
-               ggtt->mappable_end = min(ggtt->mappable_end, ggtt->base.total);
+               ggtt->mappable_end = min_t(u64, ggtt->mappable_end, 
ggtt->base.total);
        }
 
        if (ggtt->mappable_end > ggtt->base.total) {
                DRM_ERROR("mappable aperture extends past end of GGTT,"
-                         " aperture=%llx, total=%llx\n",
-                         ggtt->mappable_end, ggtt->base.total);
+                         " aperture=%pa, total=%llx\n",
+                         &ggtt->mappable_end, ggtt->base.total);
                ggtt->mappable_end = ggtt->base.total;
        }
 
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.h 
b/drivers/gpu/drm/i915/i915_gem_gtt.h
index 32fbe1d59442..25b524048cb2 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.h
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.h
@@ -371,7 +371,7 @@ struct i915_ggtt {
 
        struct io_mapping iomap;        /* Mapping to our CPU mappable region */
        struct resource gmadr;          /* GMADR resource */
-       u64 mappable_end;               /* End offset that we can CPU map */
+       resource_size_t mappable_end;   /* End offset that we can CPU map */
 
        /* Stolen memory is segmented in hardware with different portions
         * offlimits to certain functions.
@@ -381,8 +381,8 @@ struct i915_ggtt {
         * avoid the first page! The upper end of stolen memory is reserved for
         * hardware functions and similarly removed from the accessible range.
         */
-       u32 stolen_size;                /* Total size of stolen memory */
-       u32 stolen_usable_size; /* Total size minus reserved ranges */
+       resource_size_t stolen_size;            /* Total size of stolen memory 
*/
+       resource_size_t stolen_usable_size;     /* Total size minus reserved 
ranges */
 
        /** "Graphics Stolen Memory" holds the global PTEs */
        void __iomem *gsm;
diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c 
b/drivers/gpu/drm/i915/i915_gem_stolen.c
index 6e2550ff750f..91c1127af872 100644
--- a/drivers/gpu/drm/i915/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/i915_gem_stolen.c
@@ -80,11 +80,9 @@ static int i915_adjust_stolen(struct drm_i915_private 
*dev_priv,
                              struct resource *dsm)
 {
        struct i915_ggtt *ggtt = &dev_priv->ggtt;
-       dma_addr_t base = dsm->start;
+       resource_size_t base = dsm->start;
        struct resource *r;
 
-       GEM_BUG_ON(overflows_type(intel_graphics_stolen_res.start, base));
-
        if (base == 0 || add_overflows(base, ggtt->stolen_size))
                return -EINVAL;
 
@@ -96,7 +94,7 @@ static int i915_adjust_stolen(struct drm_i915_private 
*dev_priv,
                        DEFINE_RES_MEM(base, ggtt->stolen_size),
                };
                struct resource ggtt_res;
-               u64 ggtt_start;
+               resource_size_t ggtt_start;
 
                ggtt_start = I915_READ(PGTBL_CTL);
                if (IS_GEN4(dev_priv))
@@ -175,13 +173,13 @@ void i915_gem_cleanup_stolen(struct drm_device *dev)
 }
 
 static void g4x_get_stolen_reserved(struct drm_i915_private *dev_priv,
-                                   dma_addr_t *base, u32 *size)
+                                   resource_size_t *base, resource_size_t 
*size)
 {
        struct i915_ggtt *ggtt = &dev_priv->ggtt;
        uint32_t reg_val = I915_READ(IS_GM45(dev_priv) ?
                                     CTG_STOLEN_RESERVED :
                                     ELK_STOLEN_RESERVED);
-       dma_addr_t stolen_top = dev_priv->dsm.start + ggtt->stolen_size;
+       resource_size_t stolen_top = dev_priv->dsm.start + ggtt->stolen_size;
 
        if ((reg_val & G4X_STOLEN_RESERVED_ENABLE) == 0) {
                *base = 0;
@@ -210,7 +208,7 @@ static void g4x_get_stolen_reserved(struct drm_i915_private 
*dev_priv,
 }
 
 static void gen6_get_stolen_reserved(struct drm_i915_private *dev_priv,
-                                    dma_addr_t *base, u32 *size)
+                                    resource_size_t *base, resource_size_t 
*size)
 {
        uint32_t reg_val = I915_READ(GEN6_STOLEN_RESERVED);
 
@@ -242,7 +240,7 @@ static void gen6_get_stolen_reserved(struct 
drm_i915_private *dev_priv,
 }
 
 static void gen7_get_stolen_reserved(struct drm_i915_private *dev_priv,
-                                    dma_addr_t *base, u32 *size)
+                                    resource_size_t *base, resource_size_t 
*size)
 {
        uint32_t reg_val = I915_READ(GEN6_STOLEN_RESERVED);
 
@@ -268,7 +266,7 @@ static void gen7_get_stolen_reserved(struct 
drm_i915_private *dev_priv,
 }
 
 static void chv_get_stolen_reserved(struct drm_i915_private *dev_priv,
-                                   dma_addr_t *base, u32 *size)
+                                   resource_size_t *base, resource_size_t 
*size)
 {
        uint32_t reg_val = I915_READ(GEN6_STOLEN_RESERVED);
 
@@ -300,11 +298,11 @@ static void chv_get_stolen_reserved(struct 
drm_i915_private *dev_priv,
 }
 
 static void bdw_get_stolen_reserved(struct drm_i915_private *dev_priv,
-                                   dma_addr_t *base, u32 *size)
+                                   resource_size_t *base, resource_size_t 
*size)
 {
        struct i915_ggtt *ggtt = &dev_priv->ggtt;
        uint32_t reg_val = I915_READ(GEN6_STOLEN_RESERVED);
-       dma_addr_t stolen_top;
+       resource_size_t stolen_top;
 
        if ((reg_val & GEN6_STOLEN_RESERVED_ENABLE) == 0) {
                *base = 0;
@@ -329,9 +327,9 @@ static void bdw_get_stolen_reserved(struct drm_i915_private 
*dev_priv,
 int i915_gem_init_stolen(struct drm_i915_private *dev_priv)
 {
        struct i915_ggtt *ggtt = &dev_priv->ggtt;
-       dma_addr_t reserved_base, stolen_top;
-       u32 reserved_total, reserved_size;
-       u32 stolen_usable_start;
+       resource_size_t reserved_base, stolen_top;
+       resource_size_t reserved_total, reserved_size;
+       resource_size_t stolen_usable_start;
 
        mutex_init(&dev_priv->mm.stolen_lock);
 
@@ -410,9 +408,9 @@ int i915_gem_init_stolen(struct drm_i915_private *dev_priv)
         * memory, so just consider the start. */
        reserved_total = stolen_top - reserved_base;
 
-       DRM_DEBUG_KMS("Memory reserved for graphics device: %uK, usable: %uK\n",
-                     ggtt->stolen_size >> 10,
-                     (ggtt->stolen_size - reserved_total) >> 10);
+       DRM_DEBUG_KMS("Memory reserved for graphics device: %lluK, usable: 
%lluK\n",
+                     (u64)ggtt->stolen_size >> 10,
+                     (u64)(ggtt->stolen_size - reserved_total) >> 10);
 
        stolen_usable_start = 0;
        /* WaSkipStolenMemoryFirstPage:bdw+ */
@@ -431,7 +429,7 @@ int i915_gem_init_stolen(struct drm_i915_private *dev_priv)
 
 static struct sg_table *
 i915_pages_create_for_stolen(struct drm_device *dev,
-                            u32 offset, u32 size)
+                            resource_size_t offset, resource_size_t size)
 {
        struct drm_i915_private *dev_priv = to_i915(dev);
        struct sg_table *st;
@@ -535,7 +533,8 @@ _i915_gem_object_create_stolen(struct drm_i915_private 
*dev_priv,
 }
 
 struct drm_i915_gem_object *
-i915_gem_object_create_stolen(struct drm_i915_private *dev_priv, u32 size)
+i915_gem_object_create_stolen(struct drm_i915_private *dev_priv,
+                             resource_size_t size)
 {
        struct drm_i915_gem_object *obj;
        struct drm_mm_node *stolen;
@@ -568,9 +567,9 @@ i915_gem_object_create_stolen(struct drm_i915_private 
*dev_priv, u32 size)
 
 struct drm_i915_gem_object *
 i915_gem_object_create_stolen_for_preallocated(struct drm_i915_private 
*dev_priv,
-                                              u32 stolen_offset,
-                                              u32 gtt_offset,
-                                              u32 size)
+                                              resource_size_t stolen_offset,
+                                              resource_size_t gtt_offset,
+                                              resource_size_t size)
 {
        struct i915_ggtt *ggtt = &dev_priv->ggtt;
        struct drm_i915_gem_object *obj;
@@ -583,8 +582,8 @@ i915_gem_object_create_stolen_for_preallocated(struct 
drm_i915_private *dev_priv
 
        lockdep_assert_held(&dev_priv->drm.struct_mutex);
 
-       DRM_DEBUG_KMS("creating preallocated stolen object: stolen_offset=%x, 
gtt_offset=%x, size=%x\n",
-                       stolen_offset, gtt_offset, size);
+       DRM_DEBUG_KMS("creating preallocated stolen object: stolen_offset=%pa, 
gtt_offset=%pa, size=%pa\n",
+                       &stolen_offset, &gtt_offset, &size);
 
        /* KISS and expect everything to be page-aligned */
        if (WARN_ON(size == 0) ||
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 016feecafe8d..569eef08863e 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -7034,9 +7034,9 @@ static void cherryview_check_pctx(struct drm_i915_private 
*dev_priv)
 static void cherryview_setup_pctx(struct drm_i915_private *dev_priv)
 {
        struct i915_ggtt *ggtt = &dev_priv->ggtt;
-       unsigned long pctx_paddr, paddr;
+       resource_size_t pctx_paddr, paddr;
+       resource_size_t pctx_size = 32*1024;
        u32 pcbr;
-       int pctx_size = 32*1024;
 
        pcbr = I915_READ(VLV_PCBR);
        if ((pcbr >> VLV_PCBR_ADDR_SHIFT) == 0) {
@@ -7059,14 +7059,14 @@ static void cherryview_setup_pctx(struct 
drm_i915_private *dev_priv)
 static void valleyview_setup_pctx(struct drm_i915_private *dev_priv)
 {
        struct drm_i915_gem_object *pctx;
-       unsigned long pctx_paddr;
+       resource_size_t pctx_paddr;
+       resource_size_t pctx_size = 24*1024;
        u32 pcbr;
-       int pctx_size = 24*1024;
 
        pcbr = I915_READ(VLV_PCBR);
        if (pcbr) {
                /* BIOS set it up already, grab the pre-alloc'd space */
-               int pcbr_offset;
+               resource_size_t pcbr_offset;
 
                pcbr_offset = (pcbr & (~4095)) - dev_priv->dsm.start;
                pctx = i915_gem_object_create_stolen_for_preallocated(dev_priv,
diff --git a/include/drm/intel-gtt.h b/include/drm/intel-gtt.h
index c5db7975c640..556099ce1c06 100644
--- a/include/drm/intel-gtt.h
+++ b/include/drm/intel-gtt.h
@@ -5,9 +5,9 @@
 #define        _DRM_INTEL_GTT_H
 
 void intel_gtt_get(u64 *gtt_total,
-                  u32 *stolen_size,
+                  resource_size_t *stolen_size,
                   phys_addr_t *mappable_base,
-                  u64 *mappable_end);
+                  resource_size_t *mappable_end);
 
 int intel_gmch_probe(struct pci_dev *bridge_pdev, struct pci_dev *gpu_pdev,
                     struct agp_bridge_data *bridge);
-- 
2.14.3

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to