drm/i915: Fix pointer-to-int conversion
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Fri, 6 Oct 2017 13:08:44 +0000 (13:08 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 6 Oct 2017 15:29:47 +0000 (16:29 +0100)
Commit faf654864b25 ("drm/i915: Unify uC variable types to avoid
flooding checkpatch.pl") breaks 32-bit kernel builds. Lets use
cast helper to make compiler happy.

v2: introduce ptr_to_u64 (Chris)

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20171006130844.49012-1-michal.wajdeczko@intel.com
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
drivers/gpu/drm/i915/i915_guc_submission.c
drivers/gpu/drm/i915/i915_utils.h

index a2fad82532e4280108126cc787b3858b101b2550..31381a327347aa9cf0aac8ec31f7ef672a8dab6b 100644 (file)
@@ -388,13 +388,13 @@ static void guc_stage_desc_init(struct intel_guc *guc,
        gfx_addr = guc_ggtt_offset(client->vma);
        desc->db_trigger_phy = sg_dma_address(client->vma->pages->sgl) +
                                client->doorbell_offset;
-       desc->db_trigger_cpu = (u64)__get_doorbell(client);
+       desc->db_trigger_cpu = ptr_to_u64(__get_doorbell(client));
        desc->db_trigger_uk = gfx_addr + client->doorbell_offset;
        desc->process_desc = gfx_addr + client->proc_desc_offset;
        desc->wq_addr = gfx_addr + GUC_DB_SIZE;
        desc->wq_size = GUC_WQ_SIZE;
 
-       desc->desc_private = (u64)client;
+       desc->desc_private = ptr_to_u64(client);
 }
 
 static void guc_stage_desc_fini(struct intel_guc *guc,
index 12fc250b47b963a24217cfbc90bf5c1d4fe92e57..c242327d521715c7f8e6c5c093680ba5c2386cad 100644 (file)
        __T;                                                            \
 })
 
+static inline u64 ptr_to_u64(const void *ptr)
+{
+       return (uintptr_t)ptr;
+}
+
 #define u64_to_ptr(T, x) ({                                            \
        typecheck(u64, x);                                              \
        (T *)(uintptr_t)(x);                                            \